diff options
Diffstat (limited to 'toxcore/Messenger.h')
-rw-r--r-- | toxcore/Messenger.h | 14 |
1 files changed, 8 insertions, 6 deletions
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 | * |