aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
* Configure option for install-dev and install config sample automaticallyinstall-devMarius Halden2016-04-29-4/+24
|
* twitter: Fix a couple of leaks of mutes_ids and retweets_idsdequis2016-04-17-8/+10
| | | | | | | Just freeing the list on logout and when removing items from them. Also remove the "checking mutes" debug which is disproportionately noisy compared to the rest of the protocol.
* Merge remote-tracking branch 'bitlbee/pr/70'dequis2016-04-16-4/+204
|\
| * Avoid adding an id twice to the mutes list.Flexo2016-04-01-7/+26
| | | | | | | | | | | | | | Twitter doesn't error if you mute the same user multiple times. Also, correct signedness of the stringified user ids. bitlbee keeps them as unsigned even if the json library uses signed for integers...
| * Receive mute/unmute notifications from the stream.Flexo2016-03-31-5/+25
| |
| * Add mute and unmute commands.Flexo2016-03-31-0/+24
| |
| * Honour twitter's mutes and "hide retweets from this user" settings.Flexo2016-03-23-0/+137
| |
* | Ignore CAP END when received multiple timesMarius Halden2016-04-06-0/+3
| | | | | | | | | | This fixes a segfault when CAP END was received after the capabilty negotiation was already over.
* | Fix use of un-initialized valueMarius Halden2016-03-26-1/+1
| |
* | ldap authentication backendDennis Kaarsemaker2016-03-25-4/+106
| | | | | | | | | | | | We only support the openldap scheme for now, with users that are posixAccounts. Moreover, as the plugin cannot be configured directly, you must configure libldap correctly in /etc/openldap/ldap.conf
* | Linux pam authentication backendDennis Kaarsemaker2016-03-25-3/+99
| | | | | | | | This backend authenticates users against pam.
* | Authentication: scaffolding for multiple authentication backendsDennis Kaarsemaker2016-03-25-78/+188
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of always putting users passwords in XML files, allow site admins to configure a different authentication method to integrate authentication with other systems. This doesn't add any authentication backends yet, merely the scaffolding. Notably: - Password checking and loading/removing from storage has been decoupled. A new auth_check_pass function is used to check passwords. It does check against the configured storage first, but will handle the authentication backends as well. The XML storage merely signals that a user's password should be checked using an authentication backend. - If unknown-to-bitlbee users identify using an authentication backend, they are automatically registered. - If an authentication backend is used, that fact is stored in the XML file, the password is not. Passwords are also stored unencrypted in this case, as the password used to encrypt them can change underneath us. - configure and Makefile changes for the backend objects
* | Add a setting to disable 'account add'Dennis Kaarsemaker2016-03-23-0/+20
| | | | | | | | | | In a locked down bitlbee instance it is useful to disable the 'account add' command.
* | Allow individual settings to be locked downDennis Kaarsemaker2016-03-23-0/+16
| | | | | | | | | | | | This allows a site admin who pregenerates configs to mark certain settings as untouchable, ensuring that users cannot mess up their settings too badly.
* | Support for locked-down accountsDennis Kaarsemaker2016-03-23-4/+19
|/ | | | | | | | | | | | | In certain situations, e.g. when working with pregenerated configurations, it is useful to be able lock down accounts so they cannot be deleted and authentication information (user, password, server) cannot be changed. We mark such sensitive settings with ACC_SET_LOCKABLE and will refuse to change them if the account is locked by setting the ACC_FLAG_LOCKED flag. This flag is stored in the xml files as account attribute locked="true".
* CHANGES: fix the year of the 3.4.2 releasedequis2016-03-20-1/+1
| | | | lol
* Send new away message when message changesShane Synan2016-03-20-1/+8
| | | | | | | | Send new away message when away-notify is enabled and the status changes (e.g. "Away" to "Mobile") or the status message changes without returning from away. Fixes IRC clients with away-notify persisting old away messages.
* Remove vestiges of storage_textDennis Kaarsemaker2016-03-20-1/+0
| | | | It was removed in ba7d16f, but this remained.
* jabber: Add "always_use_nicks" setting, for non-anonymous MUCsdequis2016-03-20-4/+39
| | | | | | | | | Basically the same thing as github PR #55, which fixes trac bug 415, but this one conditionalized that behavior and uses the API introduced a few commits ago. I didn't think too much about the setting name and i'm open to changing it to anything else
* jabber: Fix leak in jabber_si_set_proxiesdequis2016-03-20-0/+2
|
* Don't send 301 RPL_AWAY when talking to contacts through &bitlbeedequis2016-03-20-1/+2
| | | | | | Fixes trac ticket 865 ("Make bitlbee send "is away" and such status messages via &bitlbee channel instead of separate query window"), except that the solution is to not send them at all.
* jabber: Properly handle rejected file transfersdequis2016-03-20-20/+32
|
* irc_channel_add_user: Don't call update_ops if not neededdequis2016-03-20-1/+3
| | | | | It only affects irc->user and irc->root, and this was calling it for everyone.
* jabber: Check for other resources before removing someone from a chatdequis2016-03-20-1/+14
| | | | | | So if someone has several connections with several clients to a chat, they won't appear as leaving from the chat until they leave from the last client.
* Add imcb_buddy_nick_change(), like nick_hint but strongerdequis2016-03-20-29/+33
| | | | | | | nick_hint only works when creating new users, it's a no-op after the user is online. This new function takes care of nick changes after that. It also helps clean up couple of hacks in irc_im.c \o/
* BitlBee 3.4.2 - release date fixed.3.4.2Wilmer van der Gaast2016-03-19-1/+1
|
* Prepare 3.4.2 release notesdequis2016-03-12-2/+66
|
* jabber: return XT_ABORT after failed IQ auth attemptsdequis2016-03-12-2/+2
|
* twitter.c: Squelch an unused variable warningDennis Kaarsemaker2016-02-26-1/+1
| | | | 9456255 made the variable 's' unused but failed to remove it.
* Fix a double free when calling proxy_disconnect() inside phb->func()dequis2016-02-18-8/+23
| | | | | | | | | | | | | | | | Fixes trac ticket #1248 proxy_connected() calls phb->func(), then tries to do phb_free() directly afterwards, but that might have been freed by a proxy_disconnect() call during the execution of that callback. This one happened to several different people because some AIM server broke recently. This commit fixes it by implementing a phb_connected() function that removes the PHB from the hash table before calling phb->func(), which ensures that any proxy_disconnect() calls just close the fd and nothing else.
* Change twitter url length to 23 instead of 22Vegard LangÄs2016-02-09-6/+1
|
* Send away-notify after join/part from IRC channelShane Synan2016-02-04-6/+6
| | | | | | | Move irc_send_away_notify below bee_irc_channel_update to delay sending the updated away-notify status until after any nicks have joined/quit. Otherwise, some IRC clients will drop the status messages as they go to nicks that the client doesn't know about.
* Check global account away setting in WHO repliesShane Synan2016-01-31-2/+7
| | | | | | | | When sending WHO reply, check if irc_user is the account user and if so set away status according to global account away configuration. Otherwise, reply according to irc_user flags. Fixes global away status not being shown in IRC clients when WHO polling is enabled. Fixes: https://bugs.bitlbee.org/ticket/1247
* root_commands: Fix use-after-free after doing "transfer reject"dequis2016-01-26-1/+3
| | | | | | Not a big deal because as far as I can see not much happens between the g_slist_remove() in dcc_close() and accessing files->next. I'd expect that pointer to remain null after being freed most of the time.
* jabber: Mark messages from other resources as OPT_SELFMESSAGE toodequis2016-01-24-1/+3
| | | | | | | The jabber_buddy used for messages sent from other resources connected to the same groupchat has a different ext_jid and it's a different object than jc->me, so doing a string comparison against acc->user is needed.
* purple: Also show 'title' and 'primary' messages for input requestsdequis2016-01-21-1/+12
| | | | It was showing 'secondary' only before.
* Revert "hipchat: Implement their own variant of self-messages [...]"dequis2016-01-21-19/+1
| | | | | | | This reverts commit d11ccbf6ea94264bde8b0f525c4bbedf50de0174. After thinking about this long enough I've decided this is a bad idea, and better wait for the hipchat server to support carbons.
* 'help set self_messages': link to wiki pagedequis2015-12-30-0/+4
|
* msn: Fix ADL/RML (add/remove from list) throwing server errorsdequis2015-12-30-1/+3
|
* msn: Don't truncate passwords to 16 chars anymore.dequis2015-12-30-5/+1
| | | | This was needed back in 2010, but now it's not.
* purple: Show self-messages for private messages onlydequis2015-12-27-24/+25
| | | | | | | | | | Those are purple_conversation_write with PURPLE_MESSAGE_SEND flag set, received through the write_conv UI op. write_chat and write_im still receive and filter PURPLE_MESSAGE_SEND. In the case of write_chat it *could* show some of those, but it seems there's no decent way to tell echoes apart from remote self-messages. So just keep those hidden for now.
* purple: document original names of uiops next to themdequis2015-12-26-64/+64
|
* oscar: Add prefixes to all functions that may conflict with purpledequis2015-12-18-0/+98
| | | | | | | | When people build with ./configure --purple=1 --oscar=1, the native oscar is compiled statically, which should take priority, but sometimes purple's oscar is used instead and bad things happen, most of it being due to calling bitlbee's native aim_callhandler instead of the function with the same name of libpurple's liboscar.so.
* ini: Null check file parameter before passing it to open()dequis2015-12-17-2/+2
| | | | | The test suite does this. It's harmless in practice but open() is declared as nonnull. Thanks to clang's ubsan.
* hipchat: Implement their own variant of self-messages (not working yet)dequis2015-12-16-1/+19
| | | | | | | | | | | | Reuses part of the carbons code, but it's not like it at all. To be able to receive these messages at all, a different cap node whitelisted by them is required. I could have used one of the official clients, but let's try to get things done the right way. This will start working once they make that change in their servers, right now this is still in their ticket backlog. I'm merging this now because it's harmless and nice to have as part of the upcoming release.
* jabber: Add message processing hints to OTR messages (XEP-0334/0364)dequis2015-12-15-0/+22
| | | | | This prevents them from being stored or copied to other clients when carbons are enabled.
* Remove nonexistent forward declarationesainane2015-12-11-1/+0
| | | | | | imcb_find_buddy is mentioned only in nogaim.h, and is never defined anywhere. This is misleading for plugin authors, who were probably looking for (the actually implemented) imcb_buddy_by_handle instead.
* Revert "imc_away_send_update: Fix leak of away_states linked list"dequis2015-12-09-6/+1
| | | | | | | | | This reverts commit ed431c389887080dc4fa45e30d051ce733f4ce57. I'm going to let this leak. Turns out only purple allocates an empty list for every time this is called. Other protocols have statics, and they always return the same thing, can't free those. Whatever. The purple leak was insignificant, just more scratching of itches.
* proxy: fix validation of the proxytype valuedequis2015-12-09-1/+1
| | | | | | Coverity says it could be an out of bounds read, but the value is set internally, so not really. Still, good point about the condition being wrong.
* purple: fix crash when doing 'chat with' with skypewebdequis2015-12-06-1/+1
| | | | | | | | | | | It was passing the wrong data to the callback - it was supposed to pass the data of the PurpleMenuItem but it passed the PurpleMenuItem itself. Probably also applies to other protocols too. It worked fine with jabber, which i'm guessing is what this code was tested with originally. It still whines about the null return value saying "(Possible) failure" but, eh, whatever.