diff options
Diffstat (limited to 'protocols/oscar/info.c')
-rw-r--r-- | protocols/oscar/info.c | 180 |
1 files changed, 0 insertions, 180 deletions
diff --git a/protocols/oscar/info.c b/protocols/oscar/info.c index 7cc1dbbc..a5a65147 100644 --- a/protocols/oscar/info.c +++ b/protocols/oscar/info.c @@ -40,79 +40,6 @@ int aim_getinfo(aim_session_t *sess, aim_conn_t *conn, const char *sn, guint16 i return 0; } -const char *aim_userinfo_sn(aim_userinfo_t *ui) -{ - - if (!ui) - return NULL; - - return ui->sn; -} - -guint16 aim_userinfo_flags(aim_userinfo_t *ui) -{ - - if (!ui) - return 0; - - return ui->flags; -} - -guint16 aim_userinfo_idle(aim_userinfo_t *ui) -{ - - if (!ui) - return 0; - - return ui->idletime; -} - -float aim_userinfo_warnlevel(aim_userinfo_t *ui) -{ - - if (!ui) - return 0.00; - - return (ui->warnlevel / 10); -} - -time_t aim_userinfo_membersince(aim_userinfo_t *ui) -{ - - if (!ui) - return 0; - - return (time_t)ui->membersince; -} - -time_t aim_userinfo_onlinesince(aim_userinfo_t *ui) -{ - - if (!ui) - return 0; - - return (time_t)ui->onlinesince; -} - -guint32 aim_userinfo_sessionlen(aim_userinfo_t *ui) -{ - - if (!ui) - return 0; - - return ui->sessionlen; -} - -int aim_userinfo_hascap(aim_userinfo_t *ui, guint32 cap) -{ - - if (!ui || !(ui->present & AIM_USERINFO_PRESENT_CAPABILITIES)) - return -1; - - return !!(ui->capabilities & cap); -} - - /* * Capability blocks. * @@ -486,113 +413,6 @@ int aim_extractuserinfo(aim_session_t *sess, aim_bstream_t *bs, aim_userinfo_t * } /* - * Inverse of aim_extractuserinfo() - */ -int aim_putuserinfo(aim_bstream_t *bs, aim_userinfo_t *info) -{ - aim_tlvlist_t *tlvlist = NULL; - - if (!bs || !info) - return -EINVAL; - - aimbs_put8(bs, strlen(info->sn)); - aimbs_putraw(bs, (guint8 *)info->sn, strlen(info->sn)); - - aimbs_put16(bs, info->warnlevel); - - - aim_addtlvtochain16(&tlvlist, 0x0001, info->flags); - aim_addtlvtochain32(&tlvlist, 0x0002, info->membersince); - aim_addtlvtochain32(&tlvlist, 0x0003, info->onlinesince); - aim_addtlvtochain16(&tlvlist, 0x0004, info->idletime); - -#if ICQ_OSCAR_SUPPORT - if (atoi(info->sn) != 0) { - aim_addtlvtochain16(&tlvlist, 0x0006, info->icqinfo.status); - aim_addtlvtochain32(&tlvlist, 0x000a, info->icqinfo.ipaddr); - } -#endif - - aim_addtlvtochain_caps(&tlvlist, 0x000d, info->capabilities); - - aim_addtlvtochain32(&tlvlist, (guint16)((info->flags & AIM_FLAG_AOL) ? 0x0010 : 0x000f), info->sessionlen); - - aimbs_put16(bs, aim_counttlvchain(&tlvlist)); - aim_writetlvchain(bs, &tlvlist); - aim_freetlvchain(&tlvlist); - - return 0; -} - -int aim_sendbuddyoncoming(aim_session_t *sess, aim_conn_t *conn, aim_userinfo_t *info) -{ - aim_frame_t *fr; - aim_snacid_t snacid; - - if (!sess || !conn || !info) - return -EINVAL; - - if (!(fr = aim_tx_new(sess, conn, AIM_FRAMETYPE_FLAP, 0x02, 1152))) - return -ENOMEM; - - snacid = aim_cachesnac(sess, 0x0003, 0x000b, 0x0000, NULL, 0); - - aim_putsnac(&fr->data, 0x0003, 0x000b, 0x0000, snacid); - aim_putuserinfo(&fr->data, info); - - aim_tx_enqueue(sess, fr); - - return 0; -} - -int aim_sendbuddyoffgoing(aim_session_t *sess, aim_conn_t *conn, const char *sn) -{ - aim_frame_t *fr; - aim_snacid_t snacid; - - if (!sess || !conn || !sn) - return -EINVAL; - - if (!(fr = aim_tx_new(sess, conn, AIM_FRAMETYPE_FLAP, 0x02, 10+1+strlen(sn)))) - return -ENOMEM; - - snacid = aim_cachesnac(sess, 0x0003, 0x000c, 0x0000, NULL, 0); - - aim_putsnac(&fr->data, 0x0003, 0x000c, 0x0000, snacid); - aimbs_put8(&fr->data, strlen(sn)); - aimbs_putraw(&fr->data, (guint8 *)sn, strlen(sn)); - - aim_tx_enqueue(sess, fr); - - return 0; -} - -/* - * Huh? What is this? - */ -int aim_0002_000b(aim_session_t *sess, aim_conn_t *conn, const char *sn) -{ - aim_frame_t *fr; - aim_snacid_t snacid; - - if (!sess || !conn || !sn) - return -EINVAL; - - if (!(fr = aim_tx_new(sess, conn, AIM_FRAMETYPE_FLAP, 0x02, 10+1+strlen(sn)))) - return -ENOMEM; - - snacid = aim_cachesnac(sess, 0x0002, 0x000b, 0x0000, NULL, 0); - - aim_putsnac(&fr->data, 0x0002, 0x000b, 0x0000, snacid); - aimbs_put8(&fr->data, strlen(sn)); - aimbs_putraw(&fr->data, (guint8 *)sn, strlen(sn)); - - aim_tx_enqueue(sess, fr); - - return 0; -} - -/* * Normally contains: * t(0001) - short containing max profile length (value = 1024) * t(0002) - short - unknown (value = 16) [max MIME type length?] |