nrecords packets starting at packet number
start from a packet table specified by
data is a buffer into which the data should be read.
For a packet table holding variable-length records, the data returned in the buffer will be in form of
hvl_t structs, each containing the length of the data and a pointer to it in memory. The memory used by this data must be freed using