summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* *** Plucked rev a8b26bdf35f2685c221a62e65eeb041aa1f41143 ↵soc.2010.icq-tlcMark Doliner2010-08-101-1/+13
| | | | | | | | | | | | | | | (markdoliner@pidgin.im): Fix a crash bug in oscar related to trying to allocate too much memory. This was reported to our security mailing list by Jan Kaluza The Great. I honestly couldn't figure out how to repro this crash, so I've been considering it as not a remote-crash security problem, so I chose to skip the CVE process for this. *** Plucked rev f812c8c4d3e9195374d37965e1bcf0c4c173097d (markdoliner@pidgin.im): Make these unsigned, in case someone figures out how to actually send one of these and somehow manages to use a negative number. Pointed out by Yuriy M. Kaminskiy. Thanks, Yuriy!
* merge of '8e1fb05214d2d80e11b822731178f8f0e8f18d4a'Mark Doliner2010-08-101-25/+99
|\ | | | | | | and '0a1eea4ffff925d345bc2a05627ab89c932efe0e'
| * Applied and slightly modified Sadrul's patch ↵Ivan Komarov2010-07-081-25/+99
| | | | | | | | | | | | | | | | | | | | | | (http://pidgin.im/~sadrul/pp/icq-list.patch.txt) for making the Visible/Invisible list editors support in-place editing. The end result looks like this: http://pidgin.im/~sadrul/ss/icq-list.png This dialog has some rough edges, so I commit it as a separate revision and return to it later.
* | A couple of refactorings related to oscar_utf8_try_convert().Ivan Komarov2010-08-053-60/+29
| |
* | Removed unused "flags" parameter.Ivan Komarov2010-08-0516-61/+61
| |
* | Miranda expects a client ack from the other side for channel 2 messages,Ivan Komarov2010-08-053-0/+48
| | | | | | | | | | | | so we now send it. This is based on a patch by Jan Kaluza.
* | Fixes #12044. We send a dummy packet with DC version = 8 to makeIvan Komarov2010-08-055-11/+82
| | | | | | | | | | | | | | | | Miranda and QIP think we come from a respectable family and deserve being sent channel 2 messages (which we now treat as plain text). Also, we now send HTML_MSGS capability to convince Trillian to not strip HTML before sending us messages.
* | My esteemed mentor caught me red-handed. Thanks Mark!Ivan Komarov2010-07-311-1/+2
| |
* | explicit merge of 'e669bab0688ea12032f607e09bb97995f2e34dc4'Ivan Komarov2010-07-311-92/+91
|\ \ | | | | | | | | | and '3902ac0976393a02d754132c2d02e60f61dc7a10'
| * \ explicit merge of '54e684b2d963fe55157f904509def624bd313e60'Ivan Komarov2010-07-291-92/+91
| |\ \ | | | | | | | | | | | | and '3de5117e34b3a10dfc987ca2973bd7bbac34756d'
| | * | Cleanup some code I wrote a long time ago in a galaxy far far away.Mark Doliner2010-07-081-92/+91
| | | |
* | | | Renames and cleanups.Ivan Komarov2010-07-314-29/+25
|/ / /
* | | Bstream cleanups:Ivan Komarov2010-07-2812-120/+56
| | | | | | | | | | | | | | | | | | 1. g_return_val_if_fail()'s in place of XXX's. 2. byte_stream_empty() -> byte_stream_bytes_left(). I think the world is a better place now.
* | | encoding can be NULL in encoding_extract(); this is not an error andIvan Komarov2010-07-281-1/+3
| | | | | | | | | | | | shouldn't be written to the log.
* | | Got rid of receiving multipart messages over channel 1, which simplified the ↵Ivan Komarov2010-07-287-397/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | code immensely. No client sends them these days, so this is safe. In addition to that, I moved decoding logic from oscar.c to family_icbm.c. Also, removed family_odir stuff which I forgot to remove earlier and which resulted in liboscar failing to load. :(
* | | Removed '#if 0/endif' blocks. Some of them have the form of TODO, butIvan Komarov2010-07-2810-497/+0
| | | | | | | | | | | | most of them are years old, so that shouldn't be a big deal.
* | | Removed unused #defines from oscar.h.Ivan Komarov2010-07-282-266/+1
| | |
* | | Turns out that ncc doesn't catch everything, so continue killing things ↵Ivan Komarov2010-07-284-267/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | mercilessly. Removed AIM_CHATROOM_FLAG_* defines and everything that wasn't used in purple_conv_chat_info_update() (pretty much all contents of a packet). Also, removed unused aim_util_*() and aim_chat_getconn() functions.
* | | OK, I'm sick of constantly finding functions that are not used anywhere.Ivan Komarov2010-07-2817-1550/+2
| | | | | | | | | | | | | | | | | | This should get rid of all unused functions and SNAC families. Thanks, ncc project!
* | | Refactored oscar_encoding_to_utf8().Ivan Komarov2010-07-284-132/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Removed elb's hack from #1645. It doesn't appear to be necessary anymore, since the recent official clients (6.5, 7.1) aren't that stupid now. 2. Simplified logic in incomingim_chan2(). 3. Removed all NULL return check for oscar_encoding_to_utf8(), because it will always return non-NULL value.
* | | Stop using custom encodings (and LATIN-1, for that matter) for sendingIvan Komarov2010-07-275-411/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | OSCAR messages (ICBM, chat, Direct IM). Now, we use ASCII if a message contains ASCII characters only, and UTF-16 in all other cases. That fixes #10833 (offline messages now will be sent as UTF-16) and also a whole bunch of potential problems we can get with charset 0x3. Different clients tend to interpret this charset differently; for instance, the official client always interprets it as LATIN-1, while alternative clients may decode it as some other user-specified 8-bit encoding. On the other hand, ASCII messages (charset 0x0) and UTF-16 messages (charset 0x2) are understood uniformly by all clients. I also cleaned-up the code a little (got rid of code paths that were never executed, flags that were always set, unused struct members, etc.)
* | | Damn it.Ivan Komarov2010-07-261-0/+64
| | |
* | | Forgot to add encoding.c.Ivan Komarov2010-07-241-0/+361
| | |
* | | Fixed (I hope) #12284.Ivan Komarov2010-07-243-29/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | incomingim_ch2_icqserverrelay() was doing something it wasn't supposed to. I suppose the packet format was reverse-engineered wrongly eons ago. The correct packet format can be found at http://iserverd.khstu.ru/oscar/message.html (and also in every open-source OSCAR client I could get my hands on). The funny thing is that before #12284 showed up everything worked right due to another bug. I'm too lazy to type out all the details, so I'll just include a reference to my conversation with Mark Doliner: http://www.pidgin.im/nopaste/102
* | | Moved encoding-related functions to a separate file, renamed some of them,Ivan Komarov2010-07-246-377/+15
| | | | | | | | | | | | and updated comments.
* | | Two small fixes Mark suggested:Ivan Komarov2010-07-192-11/+9
| |/ |/| | | | | | | 1. Removed unused parameter in get_buddy_list_type(). 2. Changed oscar_format_buddies() to use GString.
* | Oh, there's a title parameter in purple_notify_formatted()! Shiny.Ivan Komarov2010-07-041-4/+7
|/
* Fixed a bug I accidentally introduced in ↵Ivan Komarov2010-07-014-5/+13
| | | | | | | | | | | 941f22b19796f2de0db109ede035a60d4f3c2661. We now have two different set_perm_deny()'s with different semantics (the ICQ one controls visibility, the AIM one, blocking), but purple_ssi_parselist() always called the ICQ one, no matter what is the current account. I've also changed the names of functions to make the distinction clearer.
* Gettextized the code and rephrased some of the messages slightly.Ivan Komarov2010-07-011-13/+21
|
* Removed callback data that was causing a segfault in Finch, becauseIvan Komarov2010-06-301-20/+20
| | | | Finch overwrites it with its own data.
* Added a way to view the Visible/Invisible lists.Ivan Komarov2010-06-295-27/+97
| | | | | The UI is kind of crippled, but that seems to be the best we can do with the notify API.
* Added a way to add a user to the (In)Visible list via the context menu.Ivan Komarov2010-06-286-108/+123
|
* Adium guys need the itmsurl stuff, which I erroneously removedIvan Komarov2010-06-243-9/+16
| | | | without thinking twice. Shame on me.
* merge of '614d7280770c70087a1f1327957d10cd5041e555'Ivan Komarov2010-06-235-1019/+83
|\ | | | | | | and '96ed14393d6e0fbc2d8c641feacdf28faf53ae5d'
| * "Invisibility mode" improvements.Ivan Komarov2010-06-233-41/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Removed the code for setting the status message to the status name (like "Available" or "Invisible") when no message is set by user. This should fix #10633, since now no one will see our status change to "Invisible" if we go invisible with no message set. 2. Got rid of sending superfluous packets on server. * There's no need to call oscar_set_extended_status() from oscar_set_status_icq(), because in all cases it has already been called before that. The only thing oscar_set_status_icq() does except setting the extended status is setting the permit/deny setting, so I renamed it accordingly. * No need to call oscar_set_icq_permdeny() in purple_ssi_parseerr() (it will be called in purple_ssi_parselist() anyway). * Combined setting the extended status and the status message (as per TODO). This should fix the problem when client like QIP see us as Invisible for some (quite long) time before we appear as Offline. Also, I removed the code for setting the "itmsurl" status attribute, as there was no way to set this iTunes Store URL from the UI.
| * Start using the real ICQ block list (SSI type 0xe) for allowing/blockingIvan Komarov2010-06-184-47/+43
| | | | | | | | | | | | | | | | users. The deny list (SSI type 0x3) that is used in AIM is actually a "permanently invisible" list for ICQ. Also, the "vismask" parameter in aim_ssi_setpermdeny() was removed, since it wasn't being used anyway.
| * Somehow I'm sure this code lacked braces.Ivan Komarov2010-06-171-2/+2
| |
* | propagate from branch 'im.pidgin.pidgin' (head ↵Ivan Komarov2010-06-03120-15062/+17571
|\ \ | |/ |/| | | | | | | 8494ca0058ec9e8ff7c2895e2d53a948af9ca024) to branch 'im.pidgin.soc.2010.icq-tlc' (head b2af25f17ecd3b42b6ab5a885a91ef9010d75b98)
| * I found these by running "strings" on some MSN binary files. Doesn't seemMark Doliner2010-06-031-0/+4
| | | | | | | | | | like that could be considered copyright infringement. They're not used right now, but it seems like they could be useful in the future.
| * merge of '5ec2b6ec47f46c56bee9d57e7a350e56b44716dc'Sadrul Habib Chowdhury2010-06-031-1/+1
| |\ | | | | | | | | | and 'df51a0281cde67e4b3cbe6f9f066a0e24263449e'
| | * Make sure that the translations in the installer are displayed sorted.Daniel Atallah2010-06-031-1/+1
| | |
| * | Do not trigger the formatting toolbar buttons on right-click.Sadrul Habib Chowdhury2010-06-031-2/+18
| | | | | | | | | | | | | | | Right-clicking the buttons on the formatting toolbar should not trigger the callback, instead it should pop up the '(Un)Group Items' menu.
| * | Reset 'undo' history when a message is sent.Sadrul Habib Chowdhury2010-06-031-2/+11
| |/
| * I noticed that this wasn't being usedMark Doliner2010-06-031-3/+0
| |
| * We shouldn't free user->extinfo here because it can also contain phoneElliott Sales de Andrade2010-06-021-5/+0
| | | | | | | | | | numbers. Mark says freeing this struct at this point is not so much of a priority in the grand scheme of saving memory.
| * Remove a stray word from a commentMark Doliner2010-06-021-2/+2
| |
| * Minor comment fix.Stu Tomlinson2010-06-021-1/+1
| | | | | | | | Refs: #12078
| * Minor comment fix.Stu Tomlinson2010-06-021-1/+1
| | | | | | | | Refs: #12078
| * I forgot to update the RPM spec file for building for older releases withStu Tomlinson2010-06-021-1/+6
| | | | | | | | | | older hicolor-icon-theme packages before release. Oops. Refs: #12073
| * Copy the third hunk from 74fec67cd7b9f498cba0dcaeaefc14f914d78007 to trunkMark Doliner2010-05-311-1/+2
| | | | | | | | | | | | Somehow this didn't get propagated in fd7ef5c29d177584937bb7283ee8815b847e70c4 So recent official ICQ clients display our HTML tags :-( Refs #11863