mirror of
https://github.com/irungentoo/toxcore.git
synced 2024-03-22 13:30:51 +08:00
Added some functions to friend_connection.
This commit is contained in:
parent
45090ab2e5
commit
9dd62023f5
@ -370,6 +370,60 @@ static int send_ping(const Friend_Connections *fr_c, int friendcon_id)
|
|||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Increases lock_count for the connection with friendcon_id by 1.
|
||||||
|
*
|
||||||
|
* return 0 on success.
|
||||||
|
* return -1 on failure.
|
||||||
|
*/
|
||||||
|
int friend_connection_lock(Friend_Connections *fr_c, int friendcon_id)
|
||||||
|
{
|
||||||
|
Friend_Conn *friend_con = get_conn(fr_c, friendcon_id);
|
||||||
|
|
||||||
|
if (!friend_con)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
++friend_con->lock_count;
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* return FRIENDCONN_STATUS_CONNECTED if the friend is connected.
|
||||||
|
* return FRIENDCONN_STATUS_CONNECTING if the friend isn't connected.
|
||||||
|
* return FRIENDCONN_STATUS_NONE on failure.
|
||||||
|
*/
|
||||||
|
unsigned int friend_con_connected(Friend_Connections *fr_c, int friendcon_id)
|
||||||
|
{
|
||||||
|
Friend_Conn *friend_con = get_conn(fr_c, friendcon_id);
|
||||||
|
|
||||||
|
if (!friend_con)
|
||||||
|
return 0;
|
||||||
|
|
||||||
|
return friend_con->status;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Copy public keys associated to friendcon_id.
|
||||||
|
*
|
||||||
|
* return 0 on success.
|
||||||
|
* return -1 on failure.
|
||||||
|
*/
|
||||||
|
int get_friendcon_public_keys(uint8_t *real_pk, uint8_t *dht_temp_pk, Friend_Connections *fr_c, int friendcon_id)
|
||||||
|
{
|
||||||
|
Friend_Conn *friend_con = get_conn(fr_c, friendcon_id);
|
||||||
|
|
||||||
|
if (!friend_con)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
memcpy(real_pk, friend_con->real_public_key, crypto_box_PUBLICKEYBYTES);
|
||||||
|
memcpy(dht_temp_pk, friend_con->dht_temp_pk, crypto_box_PUBLICKEYBYTES);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Set temp dht key for connection.
|
||||||
|
*/
|
||||||
|
void set_dht_temp_pk(Friend_Connections *fr_c, int friendcon_id, uint8_t *dht_temp_pk)
|
||||||
|
{
|
||||||
|
dht_pk_callback(fr_c, friendcon_id, dht_temp_pk);
|
||||||
|
}
|
||||||
|
|
||||||
/* Set the callbacks for the friend connection.
|
/* Set the callbacks for the friend connection.
|
||||||
* index is the index (0 to (MAX_FRIEND_CONNECTION_CALLBACKS - 1)) we want the callback to set in the array.
|
* index is the index (0 to (MAX_FRIEND_CONNECTION_CALLBACKS - 1)) we want the callback to set in the array.
|
||||||
*
|
*
|
||||||
|
@ -95,6 +95,35 @@ typedef struct {
|
|||||||
|
|
||||||
} Friend_Connections;
|
} Friend_Connections;
|
||||||
|
|
||||||
|
/* return friendcon_id corresponding to the real public key on success.
|
||||||
|
* return -1 on failure.
|
||||||
|
*/
|
||||||
|
int getfriend_conn_id_pk(Friend_Connections *fr_c, const uint8_t *real_pk);
|
||||||
|
|
||||||
|
/* Increases lock_count for the connection with friendcon_id by 1.
|
||||||
|
*
|
||||||
|
* return 0 on success.
|
||||||
|
* return -1 on failure.
|
||||||
|
*/
|
||||||
|
int friend_connection_lock(Friend_Connections *fr_c, int friendcon_id);
|
||||||
|
|
||||||
|
/* return FRIENDCONN_STATUS_CONNECTED if the friend is connected.
|
||||||
|
* return FRIENDCONN_STATUS_CONNECTING if the friend isn't connected.
|
||||||
|
* return FRIENDCONN_STATUS_NONE on failure.
|
||||||
|
*/
|
||||||
|
unsigned int friend_con_connected(Friend_Connections *fr_c, int friendcon_id);
|
||||||
|
|
||||||
|
/* Copy public keys associated to friendcon_id.
|
||||||
|
*
|
||||||
|
* return 0 on success.
|
||||||
|
* return -1 on failure.
|
||||||
|
*/
|
||||||
|
int get_friendcon_public_keys(uint8_t *real_pk, uint8_t *dht_temp_pk, Friend_Connections *fr_c, int friendcon_id);
|
||||||
|
|
||||||
|
/* Set temp dht key for connection.
|
||||||
|
*/
|
||||||
|
void set_dht_temp_pk(Friend_Connections *fr_c, int friendcon_id, uint8_t *dht_temp_pk);
|
||||||
|
|
||||||
/* Set the callbacks for the friend connection.
|
/* Set the callbacks for the friend connection.
|
||||||
* index is the index (0 to (MAX_FRIEND_CONNECTION_CALLBACKS - 1)) we want the callback to set in the array.
|
* index is the index (0 to (MAX_FRIEND_CONNECTION_CALLBACKS - 1)) we want the callback to set in the array.
|
||||||
*
|
*
|
||||||
|
Loading…
x
Reference in New Issue
Block a user