| Commit message (Collapse) | Author | Age | Lines |
... | |
|
|
|
| |
Forgot to change this after b39859e
|
|
|
|
|
|
| |
More prefixes = better. The G stands for "good".
(it also fixes the warning about _BSD_SOURCE being deprecated)
|
|
|
|
|
| |
Found the thing using 100% cpu because of a dead connection that it
didn't want to bury.
|
|
|
|
|
|
| |
Mostly minor rare leaks that happen in error conditions, and one
dereference before null check in twitter_logout (the null check is
probably the wrong one there, but it doesn't hurt to keep it)
|
|
|
|
|
|
|
|
| |
Oddly enough it doesn't break. Maybe it overwrites the 'decoded' pointer
when it doesn't need it anymore? Fun stuff.
Also the version of gcc (5.2) i'm using doesn't complain about array
bounds, clang does, and the older gcc (4.6) in travis does too.
|
|
|
|
|
|
|
|
|
| |
Trac ticket 1229, https://bugs.bitlbee.org/bitlbee/ticket/1229
This one is complicated. See the trac ticket for details.
Relevant commits: cc20520 6963230 664bac3 - second one fixed the same
issue, third one reverted it, this one takes a different approach.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
So use the second part as the username, and only require it to be equal
to the first part if that one is present.
ABNF from the spec:
message = [authzid] UTF8NUL authcid UTF8NUL passwd
Note brackets.
Authzid (authorization identity) is meant for impersonation, which we
don't support. The actual login username is defined by authcid
(authentication identity)
Thanks grawity for pointing this out.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Only plain, no other methods. We don't have built-in SSL to implement
EXTERNAL (certfp) and nothing else is worth implementing.
The actual authentication is pretty much like sending a server password
(when the server's authmode isn't closed), which means it happens in
cmd_identify, but this code also calls storage_check_pass() to send the
required success/failure replies.
SASL doesn't give us much benefit other than standards compliance, but
some clients might appreciate it.
And having a fifth way to do the same thing doesn't hurt! Now we have:
- identify in &bitlbee
- identify to nickserv (alias for root)
- 'nickserv' and 'ns' irc commands
- server password
- sasl plain
|
|
|
|
|
|
| |
Moving this was suggested during the review of the multi-prefix patch as
ordering the sets of status_prefix... and it seemed reasonable to me.
Thanks valgrind.
|
|
|
|
|
|
|
|
|
| |
We can't actually have multiple prefixes internally, so the only thing
missing for multi-prefix compliance is actually having the prefix in the
WHO reply, which is a rfc1459 thing.
Note to future self: check irc logs for the implementation I threw away.
The one that actually handled multiple prefixes. I hope that's useful.
|
|
|
|
|
|
|
|
|
| |
Check callback function supplied to http_dorequest and only run it if it is
not NULL.
While it is not the usual case there are some times when there is no need to
check the results of a http request. Using a NULL pointer is much more
convenient than creating noop functions.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
| |
From coverity.
That g_strdup_printf() was really pointless, slightly ashamed we didn't
notice that in the review of the patch.
|
|
|
|
| |
From coverity.
|
|
|
|
| |
From coverity.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Mostly no-op for now. Puts registration on hold, supports the basic
commands, and NAKs everything
|
|
|
|
|
|
|
| |
This enables the use of bitlbee plugins in scenarios where there is no write access to the bitlbee lib/ directory.
One example is the NixOS linux distribution (which I'm currently packaging a bitlbee plugin for), where post-installation modification of a package (e.g. bitlbee) by another package (e.g. bitlbee-facebook) is not possible.
Another example would be a user without root access building and using a plugin with a system-provided (i.e. installed by root) bitlbee.
|
|
|
|
|
|
|
|
|
| |
* Added a configure option for sysroot.
* Prevent pkgconfig environment variables to be clobbered.
* Prevent PATH environment variable pollution.
* Backward compatible.
Signed-off-by: Guillermo A. Amaral <g@maral.me>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
First fallback to ASCII without TRANSLIT, and if that fails too, just
give up by returning NULL.
Basically the same thing as 3a27896 (a netbsd specific fix), but for
channel names. This wasn't needed before because the older version of
this code caught the NULL from the ASCII//TRANSLIT attempt and gave up
immediately, while the refactored version lacked null checking.
|
|
|
|
|
|
|
| |
- Look for a status message right inside <presence> (seen with ejabberd
as a result of a s2s connection error)
- Check status codes in a while loop, skipping unknown ones (such as
110, which means "Inform user that presence refers to itself")
|
|
|
|
|
|
|
|
|
|
|
| |
To simplify testing. Also allow passing a -1 as size to use strlen()
Minor behavior change: The jabber_init_iq_auth() branch can no longer
return immediately, which means it will continue through the
ssl_pending() check in jabber_read_callback().
Other than that, the size -1 change, and one indentation level less, the
function body is the same as before.
|
|
|
|
| |
Also add a couple of missing targets to .PHONY
|
|
|
|
|
|
| |
Can only happen once, and it's just ~200 bytes.
But being valgrind-clean is good.
|
|
|
|
|
|
| |
Because many other ircds do that.
(But actually mostly because @SaberUK said so)
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes trac ticket 835, "an attacker can spoof color codes"
Which had "major" priority, and was open for a few years.
Yeah.
Every time I looked at that ticket I thought about lowering the
priority, but then saw that pesco opened the bug. Welp.
Anyway, it's gone now. Yay.
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes trac ticket 710.
Incoming messages can have newlines in them, which become several
PRIVMSG on the irc layer. Prepending color codes at the beginning of the
message resulted in showing the rest of those PRIVMSG as white.
This splits the message by newlines and rebuilds it in a GString,
re-adding the color codes right after each newline.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
This means faster builds, which is something I don't really need
but I felt like doing this.
|
| |
|
| |
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Which in practice means "don't bother with DIGEST-MD5 most of the time".
It's weak, pointless over TLS, and often breaks with some servers
(hi openfire)
|
|\ \ |
|
| | |
| | |
| | |
| | | |
Use "account jabber set anonymous on" to have bitlbee try that method
|
| | | |
|
| | | |
|
|/ /
| |
| |
| | |
jgeboski was trying to solve. #1221 for details.
|
|/ |
|
| |
|
| |
|