diff options
author | Hans de Goede <hdegoede@redhat.com> | 2011-08-01 14:09:09 +0200 |
---|---|---|
committer | Hans de Goede <hdegoede@redhat.com> | 2011-08-01 14:09:09 +0200 |
commit | 385c269671c7b992f0f48db07b616ab851cee2c6 (patch) | |
tree | 013ecb736cbc8b53b9a3ff1fbe6cbc33e7e35716 /usbredirparser/usbredirparser.h | |
parent | d9414f66d5bceb72dc4e72d75041d84036918a0b (diff) |
usbredirparser: add a usbredirparser_free_packet_data function
Add a usbredirparser_free_packet_data function for symetry with
usbredirparser_free_write_buffer.
Diffstat (limited to 'usbredirparser/usbredirparser.h')
-rw-r--r-- | usbredirparser/usbredirparser.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/usbredirparser/usbredirparser.h b/usbredirparser/usbredirparser.h index a403dd8..95da595 100644 --- a/usbredirparser/usbredirparser.h +++ b/usbredirparser/usbredirparser.h @@ -94,7 +94,9 @@ typedef void (*usbredirparser_cancel_data_packet)(void *priv, uint32_t id); /* Data packets: - Note the data buffer (if not NULL) must be free()-ed by the user. */ + Note that ownership of the the data buffer (if not NULL) is passed on to + the callback. The callback should free it by calling + usbredirparser_free_packet_data when it is done with it. */ typedef void (*usbredirparser_control_packet)(void *priv, uint32_t id, struct usb_redir_control_packet_header *control_header, uint8_t *data, int data_len); @@ -191,6 +193,10 @@ int usbredirparser_do_write(struct usbredirparser *parser); void usbredirparser_free_write_buffer(struct usbredirparser *parser, uint8_t *data); +/* See the data packet callbacks documentation */ +void usbredirparser_free_packet_data(struct usbredirparser *parser, + uint8_t *data); + /* Call this to get the capabilities of its peer */ uint32_t *usbredirparser_get_peer_caps(int *caps_len_ret); |