mirror of
https://github.com/irungentoo/toxcore.git
synced 2024-03-22 13:30:51 +08:00
Add function to check if the peernumber is ours for group chats.
This commit is contained in:
parent
b41eadf695
commit
97707a74fe
|
@ -744,6 +744,25 @@ int group_number_peers(const Group_Chats *g_c, int groupnumber)
|
|||
return g->numpeers;
|
||||
}
|
||||
|
||||
/* return 1 if the peernumber corresponds to ours.
|
||||
* return 0 on failure.
|
||||
*/
|
||||
unsigned int group_peernumber_is_ours(const Group_Chats *g_c, int groupnumber, int peernumber)
|
||||
{
|
||||
Group_c *g = get_group_c(g_c, groupnumber);
|
||||
|
||||
if (!g)
|
||||
return 0;
|
||||
|
||||
if (g->status != GROUPCHAT_STATUS_CONNECTED)
|
||||
return 0;
|
||||
|
||||
if ((uint32_t)peernumber >= g->numpeers)
|
||||
return 0;
|
||||
|
||||
return g->peer_number == g->group[peernumber].peer_number;
|
||||
}
|
||||
|
||||
/* Send a group packet to friendcon_id.
|
||||
*
|
||||
* return 1 on success
|
||||
|
|
|
@ -190,6 +190,11 @@ int group_action_send(const Group_Chats *g_c, int groupnumber, const uint8_t *ac
|
|||
*/
|
||||
int group_number_peers(const Group_Chats *g_c, int groupnumber);
|
||||
|
||||
/* return 1 if the peernumber corresponds to ours.
|
||||
* return 0 on failure.
|
||||
*/
|
||||
unsigned int group_peernumber_is_ours(const Group_Chats *g_c, int groupnumber, int peernumber);
|
||||
|
||||
/* List all the peers in the group chat.
|
||||
*
|
||||
* Copies the names of the peers to the name[length][MAX_NAME_LENGTH] array.
|
||||
|
|
|
@ -564,7 +564,7 @@ void tox_callback_group_invite(Tox *tox, void (*function)(Messenger *tox, int32_
|
|||
|
||||
/* Set the callback for group messages.
|
||||
*
|
||||
* Function(Tox *tox, int groupnumber, int friendgroupnumber, uint8_t * message, uint16_t length, void *userdata)
|
||||
* Function(Tox *tox, int groupnumber, int peernumber, uint8_t * message, uint16_t length, void *userdata)
|
||||
*/
|
||||
void tox_callback_group_message(Tox *tox, void (*function)(Messenger *tox, int, int, const uint8_t *, uint16_t, void *),
|
||||
void *userdata)
|
||||
|
@ -575,7 +575,7 @@ void tox_callback_group_message(Tox *tox, void (*function)(Messenger *tox, int,
|
|||
|
||||
/* Set the callback for group actions.
|
||||
*
|
||||
* Function(Tox *tox, int groupnumber, int friendgroupnumber, uint8_t * action, uint16_t length, void *userdata)
|
||||
* Function(Tox *tox, int groupnumber, int peernumber, uint8_t * action, uint16_t length, void *userdata)
|
||||
*/
|
||||
void tox_callback_group_action(Tox *tox, void (*function)(Messenger *tox, int, int, const uint8_t *, uint16_t, void *),
|
||||
void *userdata)
|
||||
|
@ -672,6 +672,17 @@ int tox_group_action_send(Tox *tox, int groupnumber, const uint8_t *action, uint
|
|||
return -1;
|
||||
}
|
||||
|
||||
/* Check if the current peernumber corresponds to ours.
|
||||
*
|
||||
* return 1 if the peernumber corresponds to ours.
|
||||
* return 0 on failure.
|
||||
*/
|
||||
unsigned int tox_group_peernumber_is_ours(const Tox *tox, int groupnumber, int peernumber)
|
||||
{
|
||||
const Messenger *m = tox;
|
||||
return group_peernumber_is_ours(m->group_chat_object, groupnumber, peernumber);
|
||||
}
|
||||
|
||||
/* Return the number of peers in the group chat on success.
|
||||
* return -1 on failure
|
||||
*/
|
||||
|
|
|
@ -428,14 +428,14 @@ void tox_callback_group_invite(Tox *tox, void (*function)(Tox *tox, int32_t, con
|
|||
|
||||
/* Set the callback for group messages.
|
||||
*
|
||||
* Function(Tox *tox, int groupnumber, int friendgroupnumber, uint8_t * message, uint16_t length, void *userdata)
|
||||
* Function(Tox *tox, int groupnumber, int peernumber, uint8_t * message, uint16_t length, void *userdata)
|
||||
*/
|
||||
void tox_callback_group_message(Tox *tox, void (*function)(Tox *tox, int, int, const uint8_t *, uint16_t, void *),
|
||||
void *userdata);
|
||||
|
||||
/* Set the callback for group actions.
|
||||
*
|
||||
* Function(Tox *tox, int groupnumber, int friendgroupnumber, uint8_t * action, uint16_t length, void *userdata)
|
||||
* Function(Tox *tox, int groupnumber, int peernumber, uint8_t * action, uint16_t length, void *userdata)
|
||||
*/
|
||||
void tox_callback_group_action(Tox *tox, void (*function)(Tox *tox, int, int, const uint8_t *, uint16_t, void *),
|
||||
void *userdata);
|
||||
|
@ -502,6 +502,13 @@ int tox_group_message_send(Tox *tox, int groupnumber, const uint8_t *message, ui
|
|||
*/
|
||||
int tox_group_action_send(Tox *tox, int groupnumber, const uint8_t *action, uint16_t length);
|
||||
|
||||
/* Check if the current peernumber corresponds to ours.
|
||||
*
|
||||
* return 1 if the peernumber corresponds to ours.
|
||||
* return 0 on failure.
|
||||
*/
|
||||
unsigned int tox_group_peernumber_is_ours(const Tox *tox, int groupnumber, int peernumber);
|
||||
|
||||
/* Return the number of peers in the group chat on success.
|
||||
* return -1 on failure
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue
Block a user