7 * Adds a single buddy to your buddy list after login.
10 u_long aim_add_buddy(struct aim_session_t *sess,
11 struct aim_conn_t *conn,
14 struct command_tx_struct *newpacket;
20 if (!(newpacket = aim_tx_new(AIM_FRAMETYPE_OSCAR, 0x0002, conn, 10+1+strlen(sn))))
25 i = aim_putsnac(newpacket->data, 0x0003, 0x0004, 0x0000, sess->snac_nextid);
26 i += aimutil_put8(newpacket->data+i, strlen(sn));
27 i += aimutil_putstr(newpacket->data+i, sn, strlen(sn));
29 aim_tx_enqueue(sess, newpacket );
32 struct aim_snac_t snac;
34 snac.id = sess->snac_nextid;
39 snac.data = malloc( strlen( sn ) + 1 );
40 memcpy( snac.data, sn, strlen( sn ) + 1 );
42 aim_newsnac(sess, &snac);
45 return( sess->snac_nextid++ );
48 u_long aim_remove_buddy(struct aim_session_t *sess,
49 struct aim_conn_t *conn,
52 struct command_tx_struct *newpacket;
58 if (!(newpacket = aim_tx_new(AIM_FRAMETYPE_OSCAR, 0x0002, conn, 10+1+strlen(sn))))
63 i = aim_putsnac(newpacket->data, 0x0003, 0x0005, 0x0000, sess->snac_nextid);
65 i += aimutil_put8(newpacket->data+i, strlen(sn));
66 i += aimutil_putstr(newpacket->data+i, sn, strlen(sn));
68 aim_tx_enqueue(sess, newpacket);
71 struct aim_snac_t snac;
73 snac.id = sess->snac_nextid;
78 snac.data = malloc( strlen( sn ) + 1 );
79 memcpy( snac.data, sn, strlen( sn ) + 1 );
81 aim_newsnac(sess, &snac );
84 return( sess->snac_nextid++ );