summaryrefslogtreecommitdiff
path: root/toxcore
diff options
context:
space:
mode:
authordubslow <bunslow@gmail.com>2014-11-19 20:36:09 -0600
committerdubslow <bunslow@gmail.com>2014-11-19 20:36:09 -0600
commit6a52b3cb6c700097f07bd88f6f9844df8fc9d083 (patch)
tree3033827108598e358543074c70af9cd9d27eec6e /toxcore
parent4e6f993e7d22865ee2ac90bd7dd3ff25b078c55c (diff)
get peer pubkey api
Diffstat (limited to 'toxcore')
-rw-r--r--toxcore/group.c20
-rw-r--r--toxcore/group.h8
-rw-r--r--toxcore/tox.c12
-rw-r--r--toxcore/tox.h8
4 files changed, 48 insertions, 0 deletions
diff --git a/toxcore/group.c b/toxcore/group.c
index 1a17e83a..329a9709 100644
--- a/toxcore/group.c
+++ b/toxcore/group.c
@@ -722,6 +722,26 @@ int del_groupchat(Group_Chats *g_c, int groupnumber)
722 return wipe_group_chat(g_c, groupnumber); 722 return wipe_group_chat(g_c, groupnumber);
723} 723}
724 724
725/* Copy the public key of peernumber who is in groupnumber to pk.
726 * pk must be crypto_box_PUBLICKEYBYTES long.
727 *
728 * returns 0 on success
729 * returns -1 on failure
730 */
731int group_peer_pubkey(const Group_Chats *g_c, int groupnumber, int peernumber, uint8_t *pk)
732{
733 Group_c *g = get_group_c(g_c, groupnumber);
734
735 if (!g)
736 return -1;
737
738 if ((uint32_t)peernumber >= g->numpeers)
739 return -1;
740
741 memcpy(pk, g->group[peernumber].real_pk, crypto_box_PUBLICKEYBYTES);
742 return 0;
743}
744
725/* Copy the name of peernumber who is in groupnumber to name. 745/* Copy the name of peernumber who is in groupnumber to name.
726 * name must be at least MAX_NAME_LENGTH long. 746 * name must be at least MAX_NAME_LENGTH long.
727 * 747 *
diff --git a/toxcore/group.h b/toxcore/group.h
index f4d93c9a..8ae0e40e 100644
--- a/toxcore/group.h
+++ b/toxcore/group.h
@@ -192,6 +192,14 @@ int add_groupchat(Group_Chats *g_c, uint8_t type);
192 */ 192 */
193int del_groupchat(Group_Chats *g_c, int groupnumber); 193int del_groupchat(Group_Chats *g_c, int groupnumber);
194 194
195/* Copy the public key of peernumber who is in groupnumber to pk.
196 * pk must be crypto_box_PUBLICKEYBYTES long.
197 *
198 * returns 0 on success
199 * returns -1 on failure
200 */
201int group_peer_pubkey(const Group_Chats *g_c, int groupnumber, int peernumber, uint8_t *pk);
202
195/* Copy the name of peernumber who is in groupnumber to name. 203/* Copy the name of peernumber who is in groupnumber to name.
196 * name must be at least MAX_NAME_LENGTH long. 204 * name must be at least MAX_NAME_LENGTH long.
197 * 205 *
diff --git a/toxcore/tox.c b/toxcore/tox.c
index f73ac285..933f0f71 100644
--- a/toxcore/tox.c
+++ b/toxcore/tox.c
@@ -641,6 +641,18 @@ int tox_group_peername(const Tox *tox, int groupnumber, int peernumber, uint8_t
641 return group_peername(m->group_chat_object, groupnumber, peernumber, name); 641 return group_peername(m->group_chat_object, groupnumber, peernumber, name);
642} 642}
643 643
644/* Copy the public key of peernumber who is in groupnumber to pk.
645 * pk must be TOX_CLIENT_ID_SIZE long.
646 *
647 * returns 0 on success
648 * returns -1 on failure
649 */
650int tox_group_peer_pubkey(const Tox *tox, int groupnumber, int peernumber, uint8_t *pk)
651{
652 const Messenger *m = tox;
653 return group_peer_pubkey(m->group_chat_object, groupnumber, peernumber, pk);
654}
655
644/* invite friendnumber to groupnumber 656/* invite friendnumber to groupnumber
645 * return 0 on success 657 * return 0 on success
646 * return -1 on failure 658 * return -1 on failure
diff --git a/toxcore/tox.h b/toxcore/tox.h
index 4caf4d26..5f3204e4 100644
--- a/toxcore/tox.h
+++ b/toxcore/tox.h
@@ -496,6 +496,14 @@ int tox_del_groupchat(Tox *tox, int groupnumber);
496 */ 496 */
497int tox_group_peername(const Tox *tox, int groupnumber, int peernumber, uint8_t *name); 497int tox_group_peername(const Tox *tox, int groupnumber, int peernumber, uint8_t *name);
498 498
499/* Copy the public key of peernumber who is in groupnumber to pk.
500 * pk must be TOX_CLIENT_ID_SIZE long.
501 *
502 * returns 0 on success
503 * returns -1 on failure
504 */
505int tox_group_peer_pubkey(const Tox *tox, int groupnumber, int peernumber, uint8_t *pk);
506
499/* invite friendnumber to groupnumber 507/* invite friendnumber to groupnumber
500 * return 0 on success 508 * return 0 on success
501 * return -1 on failure 509 * return -1 on failure