Mercurial > pidgin
comparison src/protocols/oscar/im.c @ 8708:f71c0a3fcb3d
[gaim-migrate @ 9461]
Make receiving an oscar message from ICQ Lite Beta 4.0 to a Gaim AIM
account parse HTML rather than display it as-is. Also fiddled around
with some comments.
committer: Tailor Script <tailor@pidgin.im>
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Sun, 18 Apr 2004 21:58:16 +0000 |
parents | 9790cda80d52 |
children | 92cbf9713795 |
comparison
equal
deleted
inserted
replaced
8707:4c7bc4b0f190 | 8708:f71c0a3fcb3d |
---|---|
1647 * | 1647 * |
1648 */ | 1648 */ |
1649 static void incomingim_ch2_icqserverrelay(aim_session_t *sess, aim_module_t *mod, aim_frame_t *rx, aim_modsnac_t *snac, aim_userinfo_t *userinfo, struct aim_incomingim_ch2_args *args, aim_bstream_t *servdata) | 1649 static void incomingim_ch2_icqserverrelay(aim_session_t *sess, aim_module_t *mod, aim_frame_t *rx, aim_modsnac_t *snac, aim_userinfo_t *userinfo, struct aim_incomingim_ch2_args *args, aim_bstream_t *servdata) |
1650 { | 1650 { |
1651 fu16_t hdrlen, anslen, msglen; | 1651 fu16_t hdrlen, anslen, msglen; |
1652 fu16_t msgtype; | |
1653 | 1652 |
1654 hdrlen = aimbs_getle16(servdata); | 1653 hdrlen = aimbs_getle16(servdata); |
1655 aim_bstream_advance(servdata, hdrlen); | 1654 aim_bstream_advance(servdata, hdrlen); |
1656 | 1655 |
1657 hdrlen = aimbs_getle16(servdata); | 1656 hdrlen = aimbs_getle16(servdata); |
1658 aim_bstream_advance(servdata, hdrlen); | 1657 aim_bstream_advance(servdata, hdrlen); |
1659 | 1658 |
1660 msgtype = aimbs_getle16(servdata); | 1659 args->info.rtfmsg.msgtype = aimbs_getle16(servdata); |
1661 | 1660 |
1662 anslen = aimbs_getle32(servdata); | 1661 anslen = aimbs_getle32(servdata); |
1663 aim_bstream_advance(servdata, anslen); | 1662 aim_bstream_advance(servdata, anslen); |
1664 | 1663 |
1665 msglen = aimbs_getle16(servdata); | 1664 msglen = aimbs_getle16(servdata); |
1666 args->info.rtfmsg.rtfmsg = aimbs_getstr(servdata, msglen); | 1665 args->info.rtfmsg.rtfmsg = aimbs_getstr(servdata, msglen); |
1668 args->info.rtfmsg.fgcolor = aimbs_getle32(servdata); | 1667 args->info.rtfmsg.fgcolor = aimbs_getle32(servdata); |
1669 args->info.rtfmsg.bgcolor = aimbs_getle32(servdata); | 1668 args->info.rtfmsg.bgcolor = aimbs_getle32(servdata); |
1670 | 1669 |
1671 hdrlen = aimbs_getle32(servdata); | 1670 hdrlen = aimbs_getle32(servdata); |
1672 aim_bstream_advance(servdata, hdrlen); | 1671 aim_bstream_advance(servdata, hdrlen); |
1673 | |
1674 /* XXX - This is such a hack. */ | |
1675 args->reqclass = AIM_CAPS_ICQRTF; | |
1676 | 1672 |
1677 args->destructor = (void *)incomingim_ch2_icqserverrelay_free; | 1673 args->destructor = (void *)incomingim_ch2_icqserverrelay_free; |
1678 | 1674 |
1679 return; | 1675 return; |
1680 } | 1676 } |
1822 */ | 1818 */ |
1823 if (aim_tlv_gettlv(list2, 0x0005, 1)) | 1819 if (aim_tlv_gettlv(list2, 0x0005, 1)) |
1824 args.port = aim_tlv_get16(list2, 0x0005, 1); | 1820 args.port = aim_tlv_get16(list2, 0x0005, 1); |
1825 | 1821 |
1826 /* | 1822 /* |
1827 * Something to do with ft -- two bytes | 1823 * Something to do with ft? -- two bytes |
1828 * 0x0001 - "I want to send you this file" | 1824 * 0x0001 - "I want to send you this file" |
1829 * 0x0002 - "I will accept this file from you" | 1825 * 0x0002 - "I will accept this file from you" |
1826 * 0x0002 - Also used in ICQ Lite Beta 4.0 URLs | |
1830 */ | 1827 */ |
1831 if (aim_tlv_gettlv(list2, 0x000a, 1)) | 1828 if (aim_tlv_gettlv(list2, 0x000a, 1)) |
1832 ; | 1829 ; |
1833 | 1830 |
1834 /* | 1831 /* |
1857 | 1854 |
1858 /* | 1855 /* |
1859 * Unknown -- no value | 1856 * Unknown -- no value |
1860 * | 1857 * |
1861 * Maybe means we should connect directly to transfer the file? | 1858 * Maybe means we should connect directly to transfer the file? |
1859 * Also used in ICQ Lite Beta 4.0 URLs. Also empty. | |
1862 */ | 1860 */ |
1863 if (aim_tlv_gettlv(list2, 0x000f, 1)) | 1861 if (aim_tlv_gettlv(list2, 0x000f, 1)) |
1864 ; | 1862 ; |
1865 | 1863 |
1866 /* | 1864 /* |
1878 if (strlen(verifiedip)) | 1876 if (strlen(verifiedip)) |
1879 args.verifiedip = (char *)verifiedip; | 1877 args.verifiedip = (char *)verifiedip; |
1880 | 1878 |
1881 /* | 1879 /* |
1882 * This must be present in PROPOSALs, but will probably not | 1880 * This must be present in PROPOSALs, but will probably not |
1883 * exist in CANCELs and ACCEPTs. | 1881 * exist in CANCELs and ACCEPTs. Also exists in ICQ Lite |
1882 * Beta 4.0 URLs (AIM_CAPS_ICQSERVERRELAY). | |
1884 * | 1883 * |
1885 * Service Data blocks are module-specific in format. | 1884 * Service Data blocks are module-specific in format. |
1886 */ | 1885 */ |
1887 if ((servdatatlv = aim_tlv_gettlv(list2, 0x2711 /* 10001 */, 1))) { | 1886 if ((servdatatlv = aim_tlv_gettlv(list2, 0x2711 /* 10001 */, 1))) { |
1888 | 1887 |