return 0;
}
-/* XXX parse this */
static int selfinfo(aim_session_t *sess, aim_module_t *mod, aim_frame_t *rx, aim_modsnac_t *snac, aim_bstream_t *bs)
{
aim_rxcallback_t userfunc;
+ aim_userinfo_t userinfo;
+
+ aim_extractuserinfo(sess, bs, &userinfo);
if ((userfunc = aim_callhandler(sess, rx->conn, snac->family, snac->subtype)))
- return userfunc(sess, rx);
+ return userfunc(sess, rx, &userinfo);
return 0;
}
{
aim_rxcallback_t userfunc;
fu16_t newevil;
- struct aim_userinfo_s userinfo;
+ aim_userinfo_t userinfo;
- memset(&userinfo, 0, sizeof(struct aim_userinfo_s));
+ memset(&userinfo, 0, sizeof(aim_userinfo_t));
newevil = aimbs_get16(bs);