- Fix chatnav. Whoops.
No release numbers
------------------
+ - Mon Jun 4 12:57:46 PDT 2001
+ - Fix chatnav. Whoops.
+
- Mon Jun 4 12:45:18 PDT 2001
- Don't use snacid's for generic requests (gets around recent blocks)
- If they start doing snacid-based blocks again, an audit will have
faim_internal int general_modfirst(struct aim_session_t *sess, aim_module_t *mod);
faim_internal unsigned long aim_genericreq_n(struct aim_session_t *, struct aim_conn_t *conn, u_short family, u_short subtype);
+faim_internal unsigned long aim_genericreq_n_snacid(struct aim_session_t *, struct aim_conn_t *conn, u_short family, u_short subtype);
faim_internal unsigned long aim_genericreq_l(struct aim_session_t *, struct aim_conn_t *conn, u_short family, u_short subtype, u_long *);
faim_internal unsigned long aim_genericreq_s(struct aim_session_t *, struct aim_conn_t *conn, u_short family, u_short subtype, u_short *);
faim_export unsigned long aim_chatnav_reqrights(struct aim_session_t *sess,
struct aim_conn_t *conn)
{
- aim_genericreq_n(sess, conn, 0x000d, 0x0002);
- return sess->snac_nextid;
+ return aim_genericreq_n_snacid(sess, conn, 0x000d, 0x0002);
}
faim_export unsigned long aim_chatnav_clientready(struct aim_session_t *sess,
return sess->snac_nextid;
}
+faim_internal unsigned long aim_genericreq_n_snacid(struct aim_session_t *sess,
+ struct aim_conn_t *conn,
+ unsigned short family,
+ unsigned short subtype)
+{
+ struct command_tx_struct *newpacket;
+
+ if (!(newpacket = aim_tx_new(sess, conn, AIM_FRAMETYPE_OSCAR, 0x0002, 10)))
+ return 0;
+
+ newpacket->lock = 1;
+
+ aim_putsnac(newpacket->data, family, subtype, 0x0000, sess->snac_nextid);
+ aim_cachesnac(sess, family, subtype, 0x0000, NULL, 0);
+
+ aim_tx_enqueue(sess, newpacket);
+
+ return sess->snac_nextid++;
+}
+
/*
*
*