diff options
-rw-r--r-- | toxav/rtp.c | 2 | ||||
-rw-r--r-- | toxcore/Messenger.c | 8 | ||||
-rw-r--r-- | toxcore/Messenger.h | 14 | ||||
-rw-r--r-- | toxcore/tox.c | 4 | ||||
-rw-r--r-- | toxcore/tox.h | 4 |
5 files changed, 17 insertions, 15 deletions
diff --git a/toxav/rtp.c b/toxav/rtp.c index 6eb61a81..3696fd0a 100644 --- a/toxav/rtp.c +++ b/toxav/rtp.c | |||
@@ -341,7 +341,7 @@ RTPMessage *msg_parse ( const uint8_t *data, int length ) | |||
341 | /** | 341 | /** |
342 | * Callback for networking core. | 342 | * Callback for networking core. |
343 | */ | 343 | */ |
344 | int rtp_handle_packet ( void *object, const uint8_t *data, uint32_t length ) | 344 | int rtp_handle_packet ( Messenger* m, int32_t friendnumber, const uint8_t *data, uint32_t length, void *object ) |
345 | { | 345 | { |
346 | RTPSession *session = object; | 346 | RTPSession *session = object; |
347 | RTPMessage *msg; | 347 | RTPMessage *msg; |
diff --git a/toxcore/Messenger.c b/toxcore/Messenger.c index 704a34b4..45b6fa25 100644 --- a/toxcore/Messenger.c +++ b/toxcore/Messenger.c | |||
@@ -1441,13 +1441,13 @@ static int handle_custom_lossy_packet(void *object, int friend_num, const uint8_ | |||
1441 | 1441 | ||
1442 | if (m->friendlist[friend_num].lossy_packethandlers[packet[0] % PACKET_ID_LOSSY_RANGE_SIZE].function) | 1442 | if (m->friendlist[friend_num].lossy_packethandlers[packet[0] % PACKET_ID_LOSSY_RANGE_SIZE].function) |
1443 | return m->friendlist[friend_num].lossy_packethandlers[packet[0] % PACKET_ID_LOSSY_RANGE_SIZE].function( | 1443 | return m->friendlist[friend_num].lossy_packethandlers[packet[0] % PACKET_ID_LOSSY_RANGE_SIZE].function( |
1444 | m->friendlist[friend_num].lossy_packethandlers[packet[0] % PACKET_ID_LOSSY_RANGE_SIZE].object, packet, length); | 1444 | m, friend_num, packet, length, m->friendlist[friend_num].lossy_packethandlers[packet[0] % PACKET_ID_LOSSY_RANGE_SIZE].object); |
1445 | 1445 | ||
1446 | return 1; | 1446 | return 1; |
1447 | } | 1447 | } |
1448 | 1448 | ||
1449 | int custom_lossy_packet_registerhandler(Messenger *m, int32_t friendnumber, uint8_t byte, | 1449 | int custom_lossy_packet_registerhandler(Messenger *m, int32_t friendnumber, uint8_t byte, |
1450 | int (*packet_handler_callback)(void *object, const uint8_t *data, uint32_t len), void *object) | 1450 | int (*packet_handler_callback)(Messenger *m, int32_t friendnumber, const uint8_t *data, uint32_t len, void *object), void *object) |
1451 | { | 1451 | { |
1452 | if (friend_not_valid(m, friendnumber)) | 1452 | if (friend_not_valid(m, friendnumber)) |
1453 | return -1; | 1453 | return -1; |
@@ -1490,13 +1490,13 @@ static int handle_custom_lossless_packet(void *object, int friend_num, const uin | |||
1490 | 1490 | ||
1491 | if (m->friendlist[friend_num].lossless_packethandlers[packet[0] % PACKET_ID_LOSSLESS_RANGE_SIZE].function) | 1491 | if (m->friendlist[friend_num].lossless_packethandlers[packet[0] % PACKET_ID_LOSSLESS_RANGE_SIZE].function) |
1492 | return m->friendlist[friend_num].lossless_packethandlers[packet[0] % PACKET_ID_LOSSLESS_RANGE_SIZE].function( | 1492 | return m->friendlist[friend_num].lossless_packethandlers[packet[0] % PACKET_ID_LOSSLESS_RANGE_SIZE].function( |
1493 | m->friendlist[friend_num].lossless_packethandlers[packet[0] % PACKET_ID_LOSSLESS_RANGE_SIZE].object, packet, length); | 1493 | m, friend_num, packet, length, m->friendlist[friend_num].lossless_packethandlers[packet[0] % PACKET_ID_LOSSLESS_RANGE_SIZE].object); |
1494 | 1494 | ||
1495 | return 1; | 1495 | return 1; |
1496 | } | 1496 | } |
1497 | 1497 | ||
1498 | int custom_lossless_packet_registerhandler(Messenger *m, int32_t friendnumber, uint8_t byte, | 1498 | int custom_lossless_packet_registerhandler(Messenger *m, int32_t friendnumber, uint8_t byte, |
1499 | int (*packet_handler_callback)(void *object, const uint8_t *data, uint32_t len), void *object) | 1499 | int (*packet_handler_callback)(Messenger *m, int32_t friendnumber, const uint8_t *data, uint32_t len, void *object), void *object) |
1500 | { | 1500 | { |
1501 | if (friend_not_valid(m, friendnumber)) | 1501 | if (friend_not_valid(m, friendnumber)) |
1502 | return -1; | 1502 | return -1; |
diff --git a/toxcore/Messenger.h b/toxcore/Messenger.h index fd4646e9..2d31f0b9 100644 --- a/toxcore/Messenger.h +++ b/toxcore/Messenger.h | |||
@@ -189,6 +189,8 @@ enum { | |||
189 | FILECONTROL_RESUME_BROKEN | 189 | FILECONTROL_RESUME_BROKEN |
190 | }; | 190 | }; |
191 | 191 | ||
192 | typedef struct Messenger Messenger; | ||
193 | |||
192 | typedef struct { | 194 | typedef struct { |
193 | uint8_t client_id[crypto_box_PUBLICKEYBYTES]; | 195 | uint8_t client_id[crypto_box_PUBLICKEYBYTES]; |
194 | int friendcon_id; | 196 | int friendcon_id; |
@@ -222,18 +224,18 @@ typedef struct { | |||
222 | AVATAR_RECEIVEDATA *avatar_recv_data; // We are receiving avatar data from this friend. | 224 | AVATAR_RECEIVEDATA *avatar_recv_data; // We are receiving avatar data from this friend. |
223 | 225 | ||
224 | struct { | 226 | struct { |
225 | int (*function)(void *object, const uint8_t *data, uint32_t len); | 227 | int (*function)(Messenger *m, int32_t friendnumber, const uint8_t *data, uint32_t len, void *object); |
226 | void *object; | 228 | void *object; |
227 | } lossy_packethandlers[PACKET_ID_LOSSY_RANGE_SIZE]; | 229 | } lossy_packethandlers[PACKET_ID_LOSSY_RANGE_SIZE]; |
228 | 230 | ||
229 | struct { | 231 | struct { |
230 | int (*function)(void *object, const uint8_t *data, uint32_t len); | 232 | int (*function)(Messenger *m, int32_t friendnumber, const uint8_t *data, uint32_t len, void *object); |
231 | void *object; | 233 | void *object; |
232 | } lossless_packethandlers[PACKET_ID_LOSSLESS_RANGE_SIZE]; | 234 | } lossless_packethandlers[PACKET_ID_LOSSLESS_RANGE_SIZE]; |
233 | } Friend; | 235 | } Friend; |
234 | 236 | ||
235 | 237 | ||
236 | typedef struct Messenger { | 238 | struct Messenger { |
237 | 239 | ||
238 | Networking_Core *net; | 240 | Networking_Core *net; |
239 | Net_Crypto *net_crypto; | 241 | Net_Crypto *net_crypto; |
@@ -310,7 +312,7 @@ typedef struct Messenger { | |||
310 | void *msi_packet_userdata; | 312 | void *msi_packet_userdata; |
311 | 313 | ||
312 | Messenger_Options options; | 314 | Messenger_Options options; |
313 | } Messenger; | 315 | }; |
314 | 316 | ||
315 | /* Format: [client_id (32 bytes)][nospam number (4 bytes)][checksum (2 bytes)] | 317 | /* Format: [client_id (32 bytes)][nospam number (4 bytes)][checksum (2 bytes)] |
316 | * | 318 | * |
@@ -841,7 +843,7 @@ int m_msi_packet(const Messenger *m, int32_t friendnumber, const uint8_t *data, | |||
841 | * return 0 on success. | 843 | * return 0 on success. |
842 | */ | 844 | */ |
843 | int custom_lossy_packet_registerhandler(Messenger *m, int32_t friendnumber, uint8_t byte, | 845 | int custom_lossy_packet_registerhandler(Messenger *m, int32_t friendnumber, uint8_t byte, |
844 | int (*packet_handler_callback)(void *object, const uint8_t *data, uint32_t len), void *object); | 846 | int (*packet_handler_callback)(Messenger *m, int32_t friendnumber, const uint8_t *data, uint32_t len, void *object), void *object); |
845 | 847 | ||
846 | /* High level function to send custom lossy packets. | 848 | /* High level function to send custom lossy packets. |
847 | * | 849 | * |
@@ -859,7 +861,7 @@ int send_custom_lossy_packet(const Messenger *m, int32_t friendnumber, const uin | |||
859 | * return 0 on success. | 861 | * return 0 on success. |
860 | */ | 862 | */ |
861 | int custom_lossless_packet_registerhandler(Messenger *m, int32_t friendnumber, uint8_t byte, | 863 | int custom_lossless_packet_registerhandler(Messenger *m, int32_t friendnumber, uint8_t byte, |
862 | int (*packet_handler_callback)(void *object, const uint8_t *data, uint32_t len), void *object); | 864 | int (*packet_handler_callback)(Messenger *m, int32_t friendnumber, const uint8_t *data, uint32_t len, void *object), void *object); |
863 | 865 | ||
864 | /* High level function to send custom lossless packets. | 866 | /* High level function to send custom lossless packets. |
865 | * | 867 | * |
diff --git a/toxcore/tox.c b/toxcore/tox.c index 933f0f71..b85a47b2 100644 --- a/toxcore/tox.c +++ b/toxcore/tox.c | |||
@@ -490,7 +490,7 @@ void tox_get_keys(Tox *tox, uint8_t *public_key, uint8_t *secret_key) | |||
490 | * return 0 on success. | 490 | * return 0 on success. |
491 | */ | 491 | */ |
492 | int tox_lossy_packet_registerhandler(Tox *tox, int32_t friendnumber, uint8_t byte, | 492 | int tox_lossy_packet_registerhandler(Tox *tox, int32_t friendnumber, uint8_t byte, |
493 | int (*packet_handler_callback)(void *object, const uint8_t *data, uint32_t len), void *object) | 493 | int (*packet_handler_callback)(Messenger *tox, int32_t friendnumber, const uint8_t *data, uint32_t len, void *object), void *object) |
494 | { | 494 | { |
495 | Messenger *m = tox; | 495 | Messenger *m = tox; |
496 | 496 | ||
@@ -527,7 +527,7 @@ int tox_send_lossy_packet(const Tox *tox, int32_t friendnumber, const uint8_t *d | |||
527 | * return 0 on success. | 527 | * return 0 on success. |
528 | */ | 528 | */ |
529 | int tox_lossless_packet_registerhandler(Tox *tox, int32_t friendnumber, uint8_t byte, | 529 | int tox_lossless_packet_registerhandler(Tox *tox, int32_t friendnumber, uint8_t byte, |
530 | int (*packet_handler_callback)(void *object, const uint8_t *data, uint32_t len), void *object) | 530 | int (*packet_handler_callback)(Messenger *tox, int32_t friendnumber, const uint8_t *data, uint32_t len, void *object), void *object) |
531 | { | 531 | { |
532 | Messenger *m = tox; | 532 | Messenger *m = tox; |
533 | 533 | ||
diff --git a/toxcore/tox.h b/toxcore/tox.h index 58d86a83..2caa77e9 100644 --- a/toxcore/tox.h +++ b/toxcore/tox.h | |||
@@ -385,7 +385,7 @@ void tox_get_keys(Tox *tox, uint8_t *public_key, uint8_t *secret_key); | |||
385 | * return 0 on success. | 385 | * return 0 on success. |
386 | */ | 386 | */ |
387 | int tox_lossy_packet_registerhandler(Tox *tox, int32_t friendnumber, uint8_t byte, | 387 | int tox_lossy_packet_registerhandler(Tox *tox, int32_t friendnumber, uint8_t byte, |
388 | int (*packet_handler_callback)(void *object, const uint8_t *data, uint32_t len), void *object); | 388 | int (*packet_handler_callback)(Tox *tox, int32_t friendnumber, const uint8_t *data, uint32_t len, void *object), void *object); |
389 | 389 | ||
390 | /* Function to send custom lossy packets. | 390 | /* Function to send custom lossy packets. |
391 | * First byte of data must be in the range: 200-254. | 391 | * First byte of data must be in the range: 200-254. |
@@ -405,7 +405,7 @@ int tox_send_lossy_packet(const Tox *tox, int32_t friendnumber, const uint8_t *d | |||
405 | * return 0 on success. | 405 | * return 0 on success. |
406 | */ | 406 | */ |
407 | int tox_lossless_packet_registerhandler(Tox *tox, int32_t friendnumber, uint8_t byte, | 407 | int tox_lossless_packet_registerhandler(Tox *tox, int32_t friendnumber, uint8_t byte, |
408 | int (*packet_handler_callback)(void *object, const uint8_t *data, uint32_t len), void *object); | 408 | int (*packet_handler_callback)(Tox *tox, int32_t friendnumber, const uint8_t *data, uint32_t len, void *object), void *object); |
409 | 409 | ||
410 | /* Function to send custom lossless packets. | 410 | /* Function to send custom lossless packets. |
411 | * First byte of data must be in the range: 160-191. | 411 | * First byte of data must be in the range: 160-191. |