Changes in / [d567b58:e11216c]


Ignore:
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • configure

    rd567b58 re11216c  
    5151pie=1
    5252
    53 arch=`uname -s`
    54 cpu=`uname -m`
     53arch=$(uname -s)
     54cpu=$(uname -m)
    5555
    5656GLIB_MIN_VERSION=2.16
     
    103103
    104104while [ -n "$1" ]; do
    105         e="`expr "X$1" : 'X--\(.*=.*\)'`"
     105        e="$(expr "X$1" : 'X--\(.*=.*\)')"
    106106        if [ -z "$e" ]; then
    107107                cat<<EOF
     
    157157
    158158# Expand $prefix and get rid of double slashes
    159 bindir=`eval echo "$bindir/" | sed 's/\/\{1,\}/\//g'`
    160 sbindir=`eval echo "$sbindir/" | sed 's/\/\{1,\}/\//g'`
    161 etcdir=`eval echo "$etcdir/" | sed 's/\/\{1,\}/\//g'`
    162 mandir=`eval echo "$mandir/" | sed 's/\/\{1,\}/\//g'`
    163 datadir=`eval echo "$datadir/" | sed 's/\/\{1,\}/\//g'`
    164 config=`eval echo "$config/" | sed 's/\/\{1,\}/\//g'`
    165 plugindir=`eval echo "$plugindir/" | sed 's/\/\{1,\}/\//g'`
    166 includedir=`eval echo "$includedir"/ | sed 's/\/\{1,\}/\//g'`
    167 libevent=`eval echo "$libevent"/ | sed 's/\/\{1,\}/\//g'`
    168 
    169 pidfile=`eval echo "$pidfile" | sed 's/\/\{1,\}/\//g'`
    170 ipcsocket=`eval echo "$ipcsocket" | sed 's/\/\{1,\}/\//g'`
    171 pcdir=`eval echo "$pcdir" | sed 's/\/\{1,\}/\//g'`
     159bindir=$(eval echo "$bindir/" | sed 's/\/\{1,\}/\//g')
     160sbindir=$(eval echo "$sbindir/" | sed 's/\/\{1,\}/\//g')
     161etcdir=$(eval echo "$etcdir/" | sed 's/\/\{1,\}/\//g')
     162mandir=$(eval echo "$mandir/" | sed 's/\/\{1,\}/\//g')
     163datadir=$(eval echo "$datadir/" | sed 's/\/\{1,\}/\//g')
     164config=$(eval echo "$config/" | sed 's/\/\{1,\}/\//g')
     165plugindir=$(eval echo "$plugindir/" | sed 's/\/\{1,\}/\//g')
     166includedir=$(eval echo "$includedir"/ | sed 's/\/\{1,\}/\//g')
     167libevent=$(eval echo "$libevent"/ | sed 's/\/\{1,\}/\//g')
     168
     169pidfile=$(eval echo "$pidfile" | sed 's/\/\{1,\}/\//g')
     170ipcsocket=$(eval echo "$ipcsocket" | sed 's/\/\{1,\}/\//g')
     171pcdir=$(eval echo "$pcdir" | sed 's/\/\{1,\}/\//g')
    172172
    173173protocols_mods=""
     
    308308        if $PKG_CONFIG glib-2.0 --atleast-version=$GLIB_MIN_VERSION; then
    309309                cat<<EOF >>Makefile.settings
    310 EFLAGS+=`$PKG_CONFIG --libs glib-2.0 gmodule-2.0`
    311 CFLAGS+=`$PKG_CONFIG --cflags glib-2.0 gmodule-2.0`
     310EFLAGS+=$($PKG_CONFIG --libs glib-2.0 gmodule-2.0)
     311CFLAGS+=$($PKG_CONFIG --cflags glib-2.0 gmodule-2.0)
    312312EOF
    313313        else
    314314                echo
    315                 echo 'Found glib2 '`$PKG_CONFIG glib-2.0 --modversion`', but version '$GLIB_MIN_VERSION' or newer is required.'
     315                echo 'Found glib2 '$($PKG_CONFIG glib-2.0 --modversion)', but version '$GLIB_MIN_VERSION' or newer is required.'
    316316                exit 1
    317317        fi
     
    349349        if $PKG_CONFIG --exists gnutls; then
    350350                cat <<EOF >>Makefile.settings
    351 EFLAGS+=`$PKG_CONFIG --libs gnutls` `libgcrypt-config --libs`
    352 CFLAGS+=`$PKG_CONFIG --cflags gnutls` `libgcrypt-config --cflags`
     351EFLAGS+=$($PKG_CONFIG --libs gnutls) $(libgcrypt-config --libs)
     352CFLAGS+=$($PKG_CONFIG --cflags gnutls) $(libgcrypt-config --cflags)
    353353EOF
    354354                ssl=gnutls
     
    360360        elif libgnutls-config --version > /dev/null 2> /dev/null; then
    361361                cat <<EOF >>Makefile.settings
    362 EFLAGS+=`libgnutls-config --libs` `libgcrypt-config --libs`
    363 CFLAGS+=`libgnutls-config --cflags` `libgcrypt-config --cflags`
     362EFLAGS+=$(libgnutls-config --libs) $(libgcrypt-config --libs)
     363CFLAGS+=$(libgnutls-config --cflags) $(libgcrypt-config --cflags)
    364364EOF
    365365               
     
    375375        if $PKG_CONFIG --version > /dev/null 2>/dev/null && $PKG_CONFIG nss; then
    376376                cat<<EOF >>Makefile.settings
    377 EFLAGS+=`$PKG_CONFIG --libs nss`
    378 CFLAGS+=`$PKG_CONFIG --cflags nss`
     377EFLAGS+=$($PKG_CONFIG --libs nss)
     378CFLAGS+=$($PKG_CONFIG --cflags nss)
    379379EOF
    380380               
     
    621621if [ -z "$systemdsystemunitdir" ]; then
    622622        if $PKG_CONFIG --exists systemd; then
    623                 systemdsystemunitdir=`$PKG_CONFIG --variable=systemdsystemunitdir systemd`
     623                systemdsystemunitdir=$($PKG_CONFIG --variable=systemdsystemunitdir systemd)
    624624        fi
    625625fi
  • doc/user-guide/commands.xml

    rd567b58 re11216c  
    11861186        </bitlbee-setting>
    11871187
     1188        <bitlbee-setting name="anonymous" type="boolean" scope="account">
     1189                <default>false</default>
     1190
     1191                <description>
     1192                        <para>
     1193                                This enables SASL ANONYMOUS login for jabber accounts, as specified by XEP-0175.
     1194                        </para>
     1195
     1196                        <para>
     1197                                With this setting enabled, if the server allows this method, a password isn't required and the username part of the JID is ignored (you can use anonymous@jabber.example.com). Servers will usually assign you a random numeric username instead.
     1198                        </para>
     1199                </description>
     1200
     1201        </bitlbee-setting>
     1202
    11881203        <bitlbee-setting name="ops" type="string" scope="global">
    11891204                <default>both</default>
  • irc_channel.c

    rd567b58 re11216c  
    445445                        char *acc_s;
    446446
    447                         if (!aj || (ic->flags & IRC_CHANNEL_JOINED)) {
    448                                 /* Only continue if this one's marked as auto_join
    449                                    or if we're in it already. (Possible if the
    450                                    client auto-rejoined it before identyfing.) */
     447                        if (!aj && !(ic->flags & IRC_CHANNEL_JOINED)) {
     448                                /* Only proceed if this one's marked as auto_join
     449                                   or if we're in it already. (Very likely the IRC
     450                                   client auto-(re)joining at reconnect time.) */
    451451                                continue;
    452452                        } else if (!(acc_s = set_getstr(&ic->set, "account"))) {
  • irc_im.c

    rd567b58 re11216c  
    836836            (room = set_getstr(&ic->set, "room")) &&
    837837            (acc = account_get(ic->irc->b, acc_s)) &&
    838             acc->ic && acc->prpl->chat_join) {
     838            acc->ic && (acc->ic->flags & OPT_LOGGED_IN) &&
     839            acc->prpl->chat_join) {
    839840                char *nick;
    840841
  • lib/json.c

    rd567b58 re11216c  
    509509                                case ']':
    510510
    511                                         if (top->type == json_array) {
     511                                        if (top && top->type == json_array) {
    512512                                                flags = (flags & ~(flag_need_comma | flag_seek_value)) | flag_next;
    513513                                        } else {              sprintf(error, "%d:%d: Unexpected ]", cur_line, e_off);
  • protocols/jabber/jabber.c

    rd567b58 re11216c  
    8585                set_setstr(&acc->set, "server", "chat.hipchat.com");
    8686        } else {
    87                 s = set_add(&acc->set, "oauth", "false", set_eval_oauth, acc);
     87                set_add(&acc->set, "oauth", "false", set_eval_oauth, acc);
     88
     89                /* this reuses set_eval_oauth, which clears the password */
     90                set_add(&acc->set, "anonymous", "false", set_eval_oauth, acc);
    8891        }
    8992
  • protocols/jabber/s5bytestream.c

    rd567b58 re11216c  
    8585                return jabber_bs_abort(bt, msg ": %s", strerror(errno)); }
    8686
    87 gboolean jabber_bs_abort(struct bs_transfer *bt, char *format, ...);
     87gboolean jabber_bs_abort(struct bs_transfer *bt, char *format, ...) G_GNUC_PRINTF(2, 3);
    8888void jabber_bs_canceled(file_transfer_t *ft, char *reason);
    8989void jabber_bs_free_transfer(file_transfer_t *ft);
  • protocols/jabber/sasl.c

    rd567b58 re11216c  
    5454        struct xt_node *c, *reply;
    5555        char *s;
    56         int sup_plain = 0, sup_digest = 0, sup_gtalk = 0, sup_fb = 0;
    57         int want_oauth = FALSE, want_hipchat = FALSE;
     56        int sup_plain = 0, sup_digest = 0, sup_gtalk = 0, sup_fb = 0, sup_anonymous = 0;
     57        int want_oauth = FALSE, want_hipchat = FALSE, want_anonymous = FALSE;
    5858        GString *mechs;
    5959
     
    7474        }
    7575
     76        want_anonymous = set_getbool(&ic->acc->set, "anonymous");
    7677        want_oauth = set_getbool(&ic->acc->set, "oauth");
    7778        want_hipchat = (jd->flags & JFLAG_HIPCHAT);
     
    8485                } else if (c->text && g_strcasecmp(c->text, "DIGEST-MD5") == 0) {
    8586                        sup_digest = 1;
     87                } else if (c->text && g_strcasecmp(c->text, "ANONYMOUS") == 0) {
     88                        sup_anonymous = 1;
    8689                } else if (c->text && g_strcasecmp(c->text, "X-OAUTH2") == 0) {
    8790                        sup_gtalk = 1;
     
    142145                xt_free_node(reply);
    143146                return XT_ABORT;
    144         } else if (sup_digest) {
     147        } else if (want_anonymous && sup_anonymous) {
     148                xt_add_attr(reply, "mechanism", "ANONYMOUS");
     149
     150                /* Well, that was easy. */
     151        } else if (want_anonymous) {
     152                imcb_error(ic, "Anonymous login requested, but not supported by server");
     153                imc_logout(ic, FALSE);
     154                xt_free_node(reply);
     155                return XT_ABORT;
     156        } else if (sup_digest && !(jd->ssl && sup_plain)) {
     157                /* Only try DIGEST-MD5 if there's no SSL/TLS or if PLAIN isn't supported.
     158                 * Which in practice means "don't bother with DIGEST-MD5 most of the time".
     159                 * It's weak, pointless over TLS, and often breaks with some servers (hi openfire) */
     160
    145161                xt_add_attr(reply, "mechanism", "DIGEST-MD5");
    146162
Note: See TracChangeset for help on using the changeset viewer.