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 newpacket.conn = conn;
22 newpacket.conn = aim_getconn_type(sess, AIM_CONN_TYPE_BOS);
25 newpacket.type = 0x0002;
26 newpacket.commandlen = 11 + strlen( sn );
27 newpacket.data = (char *)malloc( newpacket.commandlen );
29 aim_putsnac(newpacket.data, 0x0003, 0x0004, 0x0000, sess->snac_nextid);
31 /* length of screenname */
32 newpacket.data[10] = strlen( sn );
34 memcpy( &(newpacket.data[11]), sn, strlen( sn ) );
36 aim_tx_enqueue(sess, &newpacket );
39 struct aim_snac_t snac;
41 snac.id = sess->snac_nextid;
46 snac.data = malloc( strlen( sn ) + 1 );
47 memcpy( snac.data, sn, strlen( sn ) + 1 );
49 aim_newsnac(sess, &snac);
52 return( sess->snac_nextid++ );
55 u_long aim_remove_buddy(struct aim_session_t *sess,
56 struct aim_conn_t *conn,
59 struct command_tx_struct newpacket;
65 newpacket.conn = conn;
67 newpacket.conn = aim_getconn_type(sess, AIM_CONN_TYPE_BOS);
70 newpacket.type = 0x0002;
71 newpacket.commandlen = 11 + strlen(sn);
72 newpacket.data = (char *)malloc( newpacket.commandlen );
74 aim_putsnac(newpacket.data, 0x0003, 0x0005, 0x0000, sess->snac_nextid);
76 /* length of screenname */
77 newpacket.data[10] = strlen( sn );
79 memcpy( &(newpacket.data[11]), sn, strlen( sn ) );
81 aim_tx_enqueue(sess, &newpacket );
84 struct aim_snac_t snac;
86 snac.id = sess->snac_nextid;
91 snac.data = malloc( strlen( sn ) + 1 );
92 memcpy( snac.data, sn, strlen( sn ) + 1 );
94 aim_newsnac(sess, &snac );
97 return( sess->snac_nextid++ );