Changeset 4aa0f6b


Ignore:
Timestamp:
2010-06-07T14:31:07Z (14 years ago)
Author:
Wilmer van der Gaast <wilmer@…>
Branches:
master
Children:
56699f0
Parents:
0d9d53e (diff), 1fdb0a4 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merging killerbee stuff, bringing all the bleeding-edge stuff together.

Files:
7 added
1 deleted
49 edited
5 moved

Legend:

Unmodified
Added
Removed
  • Makefile

    r0d9d53e r4aa0f6b  
    1010
    1111# Program variables
    12 #objects = chat.o
    1312objects = bitlbee.o dcc.o help.o ipc.o irc.o irc_im.o irc_channel.o irc_commands.o irc_send.o irc_user.o irc_util.o nick.o query.o root_commands.o set.o storage.o $(STORAGE_OBJS)
    1413headers = account.h bitlbee.h commands.h conf.h config.h help.h ipc.h irc.h log.h nick.h query.h set.h sock.h storage.h user.h lib/events.h lib/ftutil.h lib/http_client.h lib/ini.h lib/md5.h lib/misc.h lib/proxy.h lib/sha1.h lib/ssl_client.h lib/url.h protocols/ft.h protocols/nogaim.h
     
    8382install-dev:
    8483        mkdir -p $(DESTDIR)$(INCLUDEDIR)
    85         install -m 0644 $(headers) $(DESTDIR)$(INCLUDEDIR)
     84        install -m 0644 config.h $(DESTDIR)$(INCLUDEDIR)
     85        for i in $(headers); do install -m 0644 $(SRCDIR)$$i $(DESTDIR)$(INCLUDEDIR); done
    8686        mkdir -p $(DESTDIR)$(PCDIR)
    8787        install -m 0644 bitlbee.pc $(DESTDIR)$(PCDIR)
     
    9494install-etc:
    9595        mkdir -p $(DESTDIR)$(ETCDIR)
    96         install -m 0644 motd.txt $(DESTDIR)$(ETCDIR)/motd.txt
    97         install -m 0644 bitlbee.conf $(DESTDIR)$(ETCDIR)/bitlbee.conf
     96        install -m 0644 $(SRCDIR)motd.txt $(DESTDIR)$(ETCDIR)/motd.txt
     97        install -m 0644 $(SRCDIR)bitlbee.conf $(DESTDIR)$(ETCDIR)/bitlbee.conf
    9898
    9999uninstall-etc:
     
    111111        @$(MAKE) -C $@ $(MAKECMDGOALS)
    112112
    113 $(objects): %.o: %.c
     113$(objects): %.o: $(SRCDIR)%.c
    114114        @echo '*' Compiling $<
    115115        @$(CC) -c $(CFLAGS) $< -o $@
  • bitlbee.c

    r0d9d53e r4aa0f6b  
    121121        }
    122122       
    123         global.listen_watch_source_id = b_input_add( global.listen_socket, GAIM_INPUT_READ, bitlbee_io_new_client, NULL );
     123        global.listen_watch_source_id = b_input_add( global.listen_socket, B_EV_IO_READ, bitlbee_io_new_client, NULL );
    124124       
    125125#ifndef _WIN32
     
    321321                        child->pid = client_pid;
    322322                        child->ipc_fd = fds[0];
    323                         child->ipc_inpa = b_input_add( child->ipc_fd, GAIM_INPUT_READ, ipc_master_read, child );
     323                        child->ipc_inpa = b_input_add( child->ipc_fd, B_EV_IO_READ, ipc_master_read, child );
    324324                        child_list = g_slist_append( child_list, child );
    325325                       
     
    349349                        /* We can store the IPC fd there now. */
    350350                        global.listen_socket = fds[1];
    351                         global.listen_watch_source_id = b_input_add( fds[1], GAIM_INPUT_READ, ipc_child_read, irc );
     351                        global.listen_watch_source_id = b_input_add( fds[1], B_EV_IO_READ, ipc_child_read, irc );
    352352                       
    353353                        close( fds[0] );
  • bitlbee.h

    r0d9d53e r4aa0f6b  
    4343
    4444#if HAVE_CONFIG_H
    45 #include "config.h"
     45#include <config.h>
    4646#endif
    4747
  • configure

    r0d9d53e r4aa0f6b  
    2727yahoo=1
    2828twitter=1
     29twitter=1
     30purple=0
    2931
    3032debug=0
     
    6769--oscar=0/1     Disable/enable Oscar part (ICQ, AIM)    $oscar
    6870--yahoo=0/1     Disable/enable Yahoo part               $yahoo
    69 --twitter=0/1 Disable/enable Twitter part               $twitter
     71--twitter=0/1   Disable/enable Twitter part             $twitter
     72
     73--purple=0/1    Disable/enable libpurple support        $purple
    7074
    7175--debug=0/1     Disable/enable debugging                $debug
     
    121125EOF
    122126
     127srcdir="$(dirname $0)"
     128if [ "$srcdir" != "." ]; then
     129        echo
     130        echo "configure script run from a different directory. Will create some symlinks..."
     131        if [ ! -e Makefile -o -L Makefile ]; then
     132                COPYDIRS="doc lib protocols tests utils"
     133                mkdir -p $(cd "$srcdir"; find $COPYDIRS -type d)
     134                find . -name Makefile -type l -print0 | xargs -0 rm 2> /dev/null
     135                dst="$PWD"
     136                cd "$srcdir"
     137                for i in $(find . -name Makefile -type f); do
     138                        ln -s "$PWD${i#.}" "$dst/$i";
     139                done
     140                cd "$dst"
     141                rm -rf .bzr
     142        fi
     143       
     144        echo "SRCDIR=$srcdir/" >> Makefile.settings
     145        CFLAGS="$CFLAGS -I${dst}"
     146else
     147        srcdir=$PWD
     148fi
     149
    123150cat<<EOF>config.h
    124151/* BitlBee settings, generated by configure
     
    158185
    159186echo CFLAGS=$CFLAGS >> Makefile.settings
    160 echo CFLAGS+=-I`pwd` -I`pwd`/lib -I`pwd`/protocols -I. >> Makefile.settings
     187echo CFLAGS+=-I${srcdir} -I${srcdir}/lib -I${srcdir}/protocols -I. >> Makefile.settings
    161188
    162189echo CFLAGS+=-DHAVE_CONFIG_H >> Makefile.settings
     
    508535protoobjs=''
    509536
     537if [ "$purple" = 0 ]; then
     538        echo '#undef WITH_PURPLE' >> config.h
     539else
     540        if ! $PKG_CONFIG purple; then
     541                echo
     542                echo 'Cannot find libpurple development libraries, aborting. (Install libpurple-dev?)'
     543                exit 1
     544        fi
     545        echo '#define WITH_PURPLE' >> config.h
     546        cat<<EOF>>Makefile.settings
     547EFLAGS += $($PKG_CONFIG purple --libs)
     548PURPLE_CFLAGS += $($PKG_CONFIG purple --cflags)
     549EOF
     550        protocols=$protocols'purple '
     551        protoobjs=$protoobjs'purple_mod.o '
     552
     553        # Having both libpurple and native IM modules in one binary may
     554        # do strange things. Let's not do that.
     555        msn=0
     556        jabber=0
     557        oscar=0
     558        yahoo=0
     559        twitter=0
     560       
     561        if [ "$events" = "libevent" ]; then
     562                echo
     563                echo 'Warning: Some libpurple modules (including msn-pecan) do their event handling'
     564                echo 'outside libpurple, talking to GLib directly. At least for now the combination'
     565                echo 'libpurple + libevent is *not* recommended!'
     566        fi
     567fi
     568
    510569if [ "$msn" = 0 ]; then
    511570        echo '#undef WITH_MSN' >> config.h
  • dcc.c

    r0d9d53e r4aa0f6b  
    116116
    117117        /* watch */
    118         df->watch_in = b_input_add( df->fd, GAIM_INPUT_READ, dccs_send_proto, df );
     118        df->watch_in = b_input_add( df->fd, B_EV_IO_READ, dccs_send_proto, df );
    119119
    120120        irc->file_transfers = g_slist_prepend( irc->file_transfers, file );
     
    228228        file_transfer_t *file = df->ft;
    229229       
    230         if( ( cond & GAIM_INPUT_READ ) &&
     230        if( ( cond & B_EV_IO_READ ) &&
    231231            ( file->status & FT_STATUS_LISTENING ) )
    232232        {       
     
    248248
    249249                /* reschedule for reading on new fd */
    250                 df->watch_in = b_input_add( fd, GAIM_INPUT_READ, dccs_send_proto, df );
     250                df->watch_in = b_input_add( fd, B_EV_IO_READ, dccs_send_proto, df );
    251251
    252252                return FALSE;
    253253        }
    254254
    255         if( cond & GAIM_INPUT_READ )
     255        if( cond & B_EV_IO_READ )
    256256        {
    257257                int ret;
     
    325325
    326326        /* watch */
    327         df->watch_out = b_input_add( df->fd, GAIM_INPUT_WRITE, dccs_recv_proto, df );
     327        df->watch_out = b_input_add( df->fd, B_EV_IO_WRITE, dccs_recv_proto, df );
    328328        ft->write_request = dccs_recv_write_request;
    329329
     
    338338        file_transfer_t *ft = df->ft;
    339339
    340         if( ( cond & GAIM_INPUT_WRITE ) &&
     340        if( ( cond & B_EV_IO_WRITE ) &&
    341341            ( ft->status & FT_STATUS_CONNECTING ) )
    342342        {
    343343                ft->status = FT_STATUS_TRANSFERRING;
    344344
    345                 //df->watch_in = b_input_add( df->fd, GAIM_INPUT_READ, dccs_recv_proto, df );
     345                //df->watch_in = b_input_add( df->fd, B_EV_IO_READ, dccs_recv_proto, df );
    346346
    347347                df->watch_out = 0;
     
    349349        }
    350350
    351         if( cond & GAIM_INPUT_READ )
     351        if( cond & B_EV_IO_READ )
    352352        {
    353353                int ret, done;
     
    406406                return dcc_abort( df, "BUG: write_request() called while watching" );
    407407
    408         df->watch_in = b_input_add( df->fd, GAIM_INPUT_READ, dccs_recv_proto, df );
     408        df->watch_in = b_input_add( df->fd, B_EV_IO_READ, dccs_recv_proto, df );
    409409
    410410        return TRUE;
     
    449449
    450450        if( df->bytes_sent < df->ft->file_size )
    451                 df->watch_out = b_input_add( df->fd, GAIM_INPUT_WRITE, dccs_send_can_write, df );
     451                df->watch_out = b_input_add( df->fd, B_EV_IO_WRITE, dccs_send_can_write, df );
    452452
    453453        return TRUE;
     
    565565        return NULL;
    566566}
    567 
  • debian/bitlbee-common.config

    • Property mode changed from 100755 to 100644
  • debian/bitlbee.init

    • Property mode changed from 100755 to 100644
  • debian/bitlbee.postinst

    • Property mode changed from 100755 to 100644
  • debian/bitlbee.postrm

    • Property mode changed from 100755 to 100644
  • debian/bitlbee.prerm

    • Property mode changed from 100755 to 100644
  • debian/changelog

    r0d9d53e r4aa0f6b  
     1bitlbee (1.3-0) unstable; urgency=low
     2
     3  * Setting some bogus version number, fix that later.
     4  * Now using debhelper to improve maintainability.
     5  * Added a bitlbee-libpurple package, and split off docs and stuff into
     6    bitlbee-common.
     7
     8 -- Wilmer van der Gaast <wilmer@gaast.net>  Sat, 05 Jun 2010 15:16:38 +0100
     9
    110bitlbee (1.2.7-1) unstable; urgency=high
    211
  • debian/control

    r0d9d53e r4aa0f6b  
    44Maintainer: Wilmer van der Gaast <wilmer@gaast.net>
    55Uploaders: Jelmer Vernooij <jelmer@samba.org>
    6 Standards-Version: 3.8.0
    7 Build-Depends: libglib2.0-dev (>= 2.4), libevent-dev, libgnutls-dev | libnss-dev (>= 1.6), debconf-2.0, po-debconf
     6Standards-Version: 3.8.4
     7Build-Depends: libglib2.0-dev (>= 2.4), libevent-dev, libgnutls-dev | libnss-dev (>= 1.6), po-debconf, libpurple-dev, debhelper (>= 7)
    88Homepage: http://www.bitlbee.org/
    99Vcs-Bzr: http://code.bitlbee.org/bitlbee/
     
    1212Package: bitlbee
    1313Architecture: any
    14 Depends: ${shlibs:Depends}, adduser, net-tools, ${debconf-depends}, debianutils (>= 1.16)
    15 Description: An IRC to other chat networks gateway
     14Depends: ${shlibs:Depends}, adduser, debianutils (>= 1.16), bitlbee-common (= ${bee:Version})
     15Conflicts: bitlbee-libpurple
     16Replaces: bitlbee-libpurple
     17Description: An IRC to other chat networks gateway (default version)
    1618 This program can be used as an IRC server which forwards everything you
    1719 say to people on other chat networks: Jabber, ICQ, AIM, MSN, Yahoo! and
    1820 Twitter.
    1921
     22Package: bitlbee-libpurple
     23Architecture: any
     24Depends: ${shlibs:Depends}, adduser, debianutils (>= 1.16), bitlbee-common (= ${bee:Version})
     25Conflicts: bitlbee
     26Replaces: bitlbee
     27Description: An IRC to other chat networks gateway (using libpurple)
     28 This program can be used as an IRC server which forwards everything you
     29 say to people on other chat networks: Jabber, ICQ, AIM, MSN, Yahoo! and
     30 Twitter.
     31 .
     32 This package contains a version of BitlBee that uses the libpurple instant
     33 messaging library instead of built-in code, which adds support for more IM
     34 protocols (all protocols supported by Pidgin/Finch) and features (like file
     35 transfers), at the price of being less lightweight.
     36 .
     37 This variant may not be very suitable for BitlBee instances used by many
     38 (tens or hundreds) of clients.
     39
     40Package: bitlbee-common
     41Architecture: all
     42Depends: ${misc:Depends}, net-tools
     43Replaces: bitlbee
     44Description: An IRC to other chat networks gateway (common files/docs)
     45 This program can be used as an IRC server which forwards everything you
     46 say to people on other chat networks: Jabber, ICQ, AIM, MSN, Yahoo! and
     47 Twitter.
     48 .
     49 This package contains common files (mostly documentation) for bitlbee and
     50 bitlbee-libpurple.
     51
    2052Package: bitlbee-dev
    2153Architecture: all
    22 Depends: bitlbee (>= ${source:Version}), bitlbee (<< ${source:Version}.1~)
    23 Description: An IRC to other chat networks gateway
     54Depends: ${misc:Depends}, bitlbee (>= ${bee:Version}), bitlbee (<< ${bee:Version}.1~)
     55Description: An IRC to other chat networks gateway (dev files)
    2456 This program can be used as an IRC server which forwards everything you
    2557 say to people on other chat networks: Jabber, ICQ, AIM, MSN, Yahoo! and
  • debian/patches/bitlbee.conf.diff

    r0d9d53e r4aa0f6b  
    1 --- debian/bitlbee/etc/bitlbee/bitlbee.conf     2009-06-01 00:20:24.000000000 +0100
    2 +++ debian/bitlbee/etc/bitlbee/bitlbee.conf     2009-06-07 21:16:19.000000000 +0100
     1--- bitlbee.conf        2009-06-01 00:20:24.000000000 +0100
     2+++ bitlbee.conf        2009-06-07 21:16:19.000000000 +0100
    33@@ -23,13 +23,18 @@
    44 ## If BitlBee is started by root as a daemon, it can drop root privileges,
  • debian/po/POTFILES.in

    r0d9d53e r4aa0f6b  
    1 [type: gettext/rfc822deb] templates
     1[type: gettext/rfc822deb] bitlbee-common.templates
  • debian/rules

    r0d9d53e r4aa0f6b  
    11#!/usr/bin/make -f
     2#
     3# Finally switching to debhelper.
     4#
     5# Not using debhelper was an exercise suggested to me by my AM (Gergely
     6# Nagy). It was educating at the time but I finally decided that the
     7# exercise is over now.
     8#
    29
     10BITLBEE_CONFIGURE_FLAGS ?=
    311DEBUG ?= 0
    412
    5 ifdef BITLBEE_VERSION
    6 BITLBEE_FORCE_VERSION=1
    7 else
     13ifndef BITLBEE_VERSION
    814# Want to use the full package version number instead of just the release.
    9 BITLBEE_VERSION ?= "$(shell dpkg-parsechangelog | grep ^Version: | awk '{print $$2}')"
    10 export BITLBEE_VERSION
     15BITLBEE_CONFIGURE_VERSION ?= BITLBEE_VERSION=\"$(shell dpkg-parsechangelog | grep ^Version: | awk '{print $$2}')\"
    1116endif
    1217
    13 build-arch: build-arch-stamp
    14 build-arch-stamp:
    15         [ -d debian ]
    16         ./configure --debug=$(DEBUG) --prefix=/usr --etcdir=/etc/bitlbee --events=libevent
    17         $(MAKE)
    18 #       $(MAKE) -C doc/ all
    19         touch build-arch-stamp
     18build: build-stamp
     19build-stamp:
     20        dh_testdir
     21
     22        mkdir -p debian/build-native
     23        ROOT=$$PWD; cd debian/build-native; $(BITLBEE_CONFIGURE_VERSION) $$ROOT/configure --debug=$(DEBUG) --prefix=/usr --etcdir=/etc/bitlbee --events=libevent $(BITLBEE_CONFIGURE_FLAGS)
     24        $(MAKE) -C debian/build-native
     25
     26        mkdir -p debian/build-libpurple
     27        ROOT=$$PWD; cd debian/build-libpurple; $(BITLBEE_CONFIGURE_VERSION) $$ROOT/configure --debug=$(DEBUG) --prefix=/usr --etcdir=/etc/bitlbee --purple=1 $(BITLBEE_CONFIGURE_FLAGS)
     28        $(MAKE) -C debian/build-libpurple
     29
     30        touch build-stamp
    2031
    2132clean:
    22         [ "`whoami`" = "root" -a -d debian ]
    23         rm -rf build-arch-stamp debian/bitlbee debian/*.substvars debian/files debian/bitlbee-dev
     33        dh_testdir
     34        dh_testroot
     35        rm -f build-stamp
     36
     37        rm -rf build-arch-stamp debian/build-*
    2438        $(MAKE) distclean
    25 #       -$(MAKE) -C doc/ clean
    26                                
    2739
    28 install-arch: build-arch
    29         [ "`whoami`" = "root" -a -d debian ]
    30         mkdir -p debian/bitlbee/DEBIAN/
    31         $(MAKE) install install-etc DESTDIR=`pwd`/debian/bitlbee
     40        dh_clean
    3241
    33         mkdir -p debian/bitlbee/usr/share/doc/bitlbee/
    34         cp doc/user-guide/user-guide.txt debian/bitlbee/usr/share/doc/bitlbee/
    35         cp doc/user-guide/user-guide.html debian/bitlbee/usr/share/doc/bitlbee/
     42install: build
     43        dh_testdir
     44        dh_testroot
     45        dh_prep
     46        dh_installdirs
    3647
    37 install-indep: install-arch
    38         [ "`whoami`" = "root" -a -d debian ]
    39         mkdir -p debian/bitlbee-dev/DEBIAN/
    40         $(MAKE) install-dev DESTDIR=`pwd`/debian/bitlbee-dev
     48        $(MAKE) -C debian/build-native install install-etc DESTDIR=`pwd`/debian/bitlbee
     49        $(MAKE) -C debian/build-libpurple install install-etc DESTDIR=`pwd`/debian/bitlbee-libpurple
     50        $(MAKE) -C debian/build-native install-dev DESTDIR=`pwd`/debian/bitlbee-dev
    4151
    42         mkdir -p debian/bitlbee-dev/usr/share/doc/bitlbee-dev/
     52        patch debian/bitlbee/etc/bitlbee/bitlbee.conf debian/patches/bitlbee.conf.diff
     53        patch debian/bitlbee-libpurple/etc/bitlbee/bitlbee.conf debian/patches/bitlbee.conf.diff
    4354
    44 binary-arch: build-arch install-arch
    45         [ "`whoami`" = "root" -a -d debian ]
     55        mkdir -p debian/bitlbee-common/usr
     56        mv debian/bitlbee/usr/share debian/bitlbee-common/usr
     57        rm -rf debian/bitlbee-libpurple/usr/share
    4658
    47         chmod 755 debian/post* debian/pre* debian/config debian/bitlbee.init
     59binary-common:
     60        dh_testdir
     61        dh_testroot
    4862
    49         mkdir -p debian/bitlbee/usr/share/doc/bitlbee/examples/ debian/bitlbee/etc/init.d/
    50         -cp doc/RELEASE-SPEECH* debian/bitlbee/usr/share/doc/bitlbee/ && gzip -9 debian/bitlbee/usr/share/doc/bitlbee/RELEASE-SPEECH*
    51         cp doc/CREDITS doc/AUTHORS doc/README doc/FAQ debian/README.Debian debian/bitlbee/usr/share/doc/bitlbee/
    52         cp debian/changelog debian/bitlbee/usr/share/doc/bitlbee/changelog.Debian
    53         cp debian/copyright debian/bitlbee/usr/share/doc/bitlbee/copyright
    54         cp doc/CHANGES debian/bitlbee/usr/share/doc/bitlbee/changelog
    55         cp utils/* debian/bitlbee/usr/share/doc/bitlbee/examples/
    56         cp debian/bitlbee.init debian/bitlbee/etc/init.d/bitlbee
    57         patch -p0 < debian/patches/bitlbee.conf.diff
    58         cd debian/bitlbee/usr/share/; \
    59                 gzip -9 doc/bitlbee/changelog.Debian doc/bitlbee/changelog doc/bitlbee/user-guide.txt \
    60                         doc/bitlbee/examples/* man/man8/bitlbee.8 man/man5/bitlbee.conf.5
    61        
    62         chown -R root:root debian/bitlbee/
    63         find debian/bitlbee/usr/share/ -type d -exec chmod 755 {} \;
    64         find debian/bitlbee/usr/share/ -type f -exec chmod 644 {} \;
    65        
    66         cp debian/prerm debian/bitlbee/DEBIAN/
    67         cp debian/postinst debian/bitlbee/DEBIAN/
    68         cp debian/postrm debian/bitlbee/DEBIAN/
    69         cp debian/config debian/bitlbee/DEBIAN/
     63        dh_installdocs --link-doc=bitlbee-common
     64        dh_installchangelogs doc/CHANGES
     65        dh_installexamples
     66        dh_installdebconf
     67        dh_installinit
     68ifeq ($(DH_OPTIONS),-a)
     69        cp -a debian/bitlbee/etc debian/bitlbee-libpurple
     70endif
     71        dh_installman
     72        dh_strip
     73        dh_link
     74        dh_compress
     75        dh_fixperms
     76        dh_installdeb
     77ifeq ($(DH_OPTIONS),-a)
     78        cp -a debian/bitlbee/DEBIAN/{post,pre}* debian/bitlbee-libpurple/DEBIAN
     79endif
     80        dh_shlibdeps
     81ifdef BITLBEE_VERSION
     82        echo source:Version=1:$(BITLBEE_VERSION)-0 > debian/substvars
     83        dh_gencontrol -- -v1:$(BITLBEE_VERSION)-0  -Vbee:Version=1:$(BITLBEE_VERSION)-0
     84else
     85        dh_gencontrol -- -Vbee:Version=$(shell dpkg-parsechangelog | grep ^Version: | awk '{print $$2}' | sed -e 's/+[^+]*$$//')
     86endif
     87        dh_md5sums
     88        dh_builddeb
    7089
    71         po2debconf debian/templates > debian/bitlbee/DEBIAN/templates
    72         cp debian/conffiles debian/bitlbee/DEBIAN/
    73        
    74         if [ "$(DEBUG)" = "0" ]; then strip -R .comment -R .note debian/bitlbee/usr/sbin/bitlbee; fi
     90binary-indep: build install
     91        $(MAKE) -f debian/rules DH_OPTIONS=-i binary-common
    7592
    76         cd debian/bitlbee; \
    77                 find usr -type f -exec md5sum {} \; > DEBIAN/md5sums
    78         dpkg-shlibdeps -Tdebian/bitlbee.substvars -dDepends debian/bitlbee/usr/sbin/bitlbee
    79 ifdef BITLBEE_FORCE_VERSION
    80         dpkg-gencontrol -ldebian/changelog -isp -pbitlbee -Tdebian/bitlbee.substvars -Pdebian/bitlbee -v1:$(BITLBEE_VERSION)-0 -V'debconf-depends=debconf (>= 1.2.0) | debconf-2.0'
    81 else
    82         dpkg-gencontrol -ldebian/changelog -isp -pbitlbee -Tdebian/bitlbee.substvars -Pdebian/bitlbee -V'debconf-depends=debconf (>= 1.2.0) | debconf-2.0'
    83 endif
     93binary-arch: build install
     94        $(MAKE) -f debian/rules DH_OPTIONS=-a binary-common
    8495
    85         dpkg --build debian/bitlbee ..
     96binary-%: build install
     97        make -f debian/rules binary-common DH_OPTIONS=-p$*
    8698
    87 binary-indep: install-indep
    88         [ "`whoami`" = "root" -a -d debian ]
    89 
    90         chown -R root.root debian/bitlbee-dev/
    91         find debian/bitlbee-dev/usr/share/ -type d -exec chmod 755 {} \;
    92         find debian/bitlbee-dev/usr/share/ -type f -exec chmod 644 {} \;
    93 
    94         cp debian/changelog debian/bitlbee-dev/usr/share/doc/bitlbee-dev/changelog.Debian
    95         gzip -9 debian/bitlbee-dev/usr/share/doc/bitlbee-dev/changelog.Debian
    96         cp debian/copyright debian/bitlbee-dev/usr/share/doc/bitlbee-dev/copyright
    97 
    98         cd debian/bitlbee-dev; \
    99                 find usr -type f -exec md5sum {} \; > DEBIAN/md5sums
    100 
    101 ifdef BITLBEE_FORCE_VERSION
    102         dpkg-gencontrol -ldebian/changelog -isp -pbitlbee-dev -Pdebian/bitlbee-dev -v1:$(BITLBEE_VERSION)-0
    103 else
    104         dpkg-gencontrol -ldebian/changelog -isp -pbitlbee-dev -Pdebian/bitlbee-dev
    105 endif
    106 
    107         dpkg --build debian/bitlbee-dev ..
    108 
    109 binary: binary-arch binary-indep
    110 build: build-arch
    111 install: install-arch install-indep
    112 
    113 .PHONY: build-arch build clean binary-arch binary install-arch install binary-indep install-indep
     99binary: binary-indep binary-arch
     100.PHONY: build clean binary-indep binary-arch binary-common binary install
  • doc/Makefile

    r0d9d53e r4aa0f6b  
    11-include ../Makefile.settings
     2ifdef SRCDIR
     3SRCDIR := $(SRCDIR)doc/
     4endif
    25
    36all:
     
    710install:
    811        mkdir -p $(DESTDIR)$(MANDIR)/man8/ $(DESTDIR)$(MANDIR)/man5/
    9         install -m 0644 bitlbee.8 $(DESTDIR)$(MANDIR)/man8/
    10         install -m 0644 bitlbee.conf.5 $(DESTDIR)$(MANDIR)/man5/
     12        install -m 0644 $(SRCDIR)bitlbee.8 $(DESTDIR)$(MANDIR)/man8/
     13        install -m 0644 $(SRCDIR)bitlbee.conf.5 $(DESTDIR)$(MANDIR)/man5/
    1114        $(MAKE) -C user-guide $@
    1215
  • doc/user-guide/Makefile

    r0d9d53e r4aa0f6b  
    11-include ../../Makefile.settings
     2ifdef SRCDIR
     3SRCDIR := $(SRCDIR)doc/user-guide/
     4endif
     5
    26EXTRAPARANEWLINE = 1
    37# EXTRAPARANEWLINE = 0
     
    3842        chmod 0755 $(DESTDIR)$(DATADIR)
    3943        rm -f $(DESTDIR)$(DATADIR)/help.txt # Prevent help function from breaking in running sessions
    40         install -m 0644 help.txt $(DESTDIR)$(DATADIR)/help.txt
     44        install -m 0644 $(SRCDIR)help.txt $(DESTDIR)$(DATADIR)/help.txt
    4145
    4246uninstall:
  • help.c

    r0d9d53e r4aa0f6b  
    22  * BitlBee -- An IRC to other IM-networks gateway                     *
    33  *                                                                    *
    4   * Copyright 2002-2005 Wilmer van der Gaast and others                *
     4  * Copyright 2002-2009 Wilmer van der Gaast and others                *
    55  \********************************************************************/
    66
     
    169169        return NULL;
    170170}
     171
     172int help_add_mem( help_t **help, const char *title, const char *content )
     173{
     174        help_t *h, *l = NULL;
     175       
     176        for( h = *help; h; h = h->next )
     177        {
     178                if( g_strcasecmp( h->title, title ) == 0 )
     179                        return 0;
     180               
     181                l = h;
     182        }
     183       
     184        if( l )
     185                h = l->next = g_new0( struct help, 1 );
     186        else
     187                *help = h = g_new0( struct help, 1 );
     188        h->fd = -1;
     189        h->title = g_strdup( title );
     190        h->length = strlen( content );
     191        h->offset.mem_offset = g_strdup( content );
     192       
     193        return 1;
     194}
  • help.h

    r0d9d53e r4aa0f6b  
    4646void help_free( help_t **help );
    4747char *help_get( help_t **help, char *title );
     48int help_add_mem( help_t **help, const char *title, const char *content_ );
    4849
    4950#endif
  • ipc.c

    r0d9d53e r4aa0f6b  
    514514        }
    515515               
    516         child->ipc_inpa = b_input_add( child->ipc_fd, GAIM_INPUT_READ, ipc_master_read, child );
     516        child->ipc_inpa = b_input_add( child->ipc_fd, B_EV_IO_READ, ipc_master_read, child );
    517517       
    518518        child_list = g_slist_append( child_list, child );
     
    552552        }
    553553       
    554         b_input_add( serversock, GAIM_INPUT_READ, new_ipc_client, NULL );
     554        b_input_add( serversock, B_EV_IO_READ, new_ipc_client, NULL );
    555555       
    556556        return 1;
     
    597597                        return 0;
    598598                }
    599                 child->ipc_inpa = b_input_add( child->ipc_fd, GAIM_INPUT_READ, ipc_master_read, child );
     599                child->ipc_inpa = b_input_add( child->ipc_fd, B_EV_IO_READ, ipc_master_read, child );
    600600               
    601601                child_list = g_slist_append( child_list, child );
  • irc.c

    r0d9d53e r4aa0f6b  
    2626#include "bitlbee.h"
    2727#include "ipc.h"
     28#include "dcc.h"
    2829
    2930GSList *irc_connection_list;
     
    4849        sock_make_nonblocking( irc->fd );
    4950       
    50         irc->r_watch_source_id = b_input_add( irc->fd, GAIM_INPUT_READ, bitlbee_io_current_client_read, irc );
     51        irc->r_watch_source_id = b_input_add( irc->fd, B_EV_IO_READ, bitlbee_io_current_client_read, irc );
    5152       
    5253        irc->status = USTATUS_OFFLINE;
     
    143144        g_free( myhost );
    144145        g_free( host );
     146       
     147        nogaim_init();
    145148       
    146149        return irc;
     
    550553                if( now )
    551554                {
    552                         bitlbee_io_current_client_write( irc, irc->fd, GAIM_INPUT_WRITE );
     555                        bitlbee_io_current_client_write( irc, irc->fd, B_EV_IO_WRITE );
    553556                }
    554557                temp = temp->next;
     
    605608                   in the event queue. */
    606609                /* Really can't be done as long as the code doesn't do error checking very well:
    607                 if( bitlbee_io_current_client_write( irc, irc->fd, GAIM_INPUT_WRITE ) ) */
     610                if( bitlbee_io_current_client_write( irc, irc->fd, B_EV_IO_WRITE ) ) */
    608611               
    609612                /* So just always do it via the event handler. */
    610                 irc->w_watch_source_id = b_input_add( irc->fd, GAIM_INPUT_WRITE, bitlbee_io_current_client_write, irc );
     613                irc->w_watch_source_id = b_input_add( irc->fd, B_EV_IO_WRITE, bitlbee_io_current_client_write, irc );
    611614        }
    612615       
     
    736739}
    737740
    738 
    739741/* Returns 0 if everything seems to be okay, a number >0 when there was a
    740742   timeout. The number returned is the number of seconds we received no
  • lib/Makefile

    r0d9d53e r4aa0f6b  
    88
    99-include ../Makefile.settings
     10ifdef SRCDIR
     11SRCDIR := $(SRCDIR)lib/
     12endif
    1013
    1114# [SH] Program variables
     
    3740$(objects): ../Makefile.settings Makefile
    3841
    39 $(objects): %.o: %.c
     42$(objects): %.o: $(SRCDIR)%.c
    4043        @echo '*' Compiling $<
    4144        @$(CC) -c $(CFLAGS) $< -o $@
  • lib/events.h

    r0d9d53e r4aa0f6b  
    4848   the given callback function. */
    4949typedef enum {
    50         GAIM_INPUT_READ = 1 << 1,
    51         GAIM_INPUT_WRITE = 1 << 2
     50        B_EV_IO_READ = 1 << 0,
     51        B_EV_IO_WRITE = 1 << 1,
     52        B_EV_FLAG_FORCE_ONCE = 1 << 16,
     53        B_EV_FLAG_FORCE_REPEAT = 1 << 17,
    5254} b_input_condition;
    5355typedef gboolean (*b_event_handler)(gpointer data, gint fd, b_input_condition cond);
  • lib/events_glib.c

    r0d9d53e r4aa0f6b  
    4949        b_event_handler function;
    5050        gpointer data;
     51        guint flags;
    5152} GaimIOClosure;
    5253
     
    7677
    7778        if (condition & GAIM_READ_COND)
    78                 gaim_cond |= GAIM_INPUT_READ;
     79                gaim_cond |= B_EV_IO_READ;
    7980        if (condition & GAIM_WRITE_COND)
    80                 gaim_cond |= GAIM_INPUT_WRITE;
     81                gaim_cond |= B_EV_IO_WRITE;
    8182       
    8283        event_debug( "gaim_io_invoke( %d, %d, 0x%x )\n", g_io_channel_unix_get_fd(source), condition, data );
     
    8788                event_debug( "Returned FALSE, cancelling.\n" );
    8889       
    89         return st;
     90        if (closure->flags & B_EV_FLAG_FORCE_ONCE)
     91                return FALSE;
     92        else if (closure->flags & B_EV_FLAG_FORCE_REPEAT)
     93                return TRUE;
     94        else
     95                return st;
    9096}
    9197
     
    105111        closure->function = function;
    106112        closure->data = data;
     113        closure->flags = condition;
    107114       
    108         if (condition & GAIM_INPUT_READ)
     115        if (condition & B_EV_IO_READ)
    109116                cond |= GAIM_READ_COND;
    110         if (condition & GAIM_INPUT_WRITE)
     117        if (condition & B_EV_IO_WRITE)
    111118                cond |= GAIM_WRITE_COND;
    112119       
  • lib/events_libevent.c

    r0d9d53e r4aa0f6b  
    6060        b_event_handler function;
    6161        void *data;
     62        guint flags;
    6263};
    6364
     
    126127        {
    127128                if( event & EV_READ )
    128                         cond |= GAIM_INPUT_READ;
     129                        cond |= B_EV_IO_READ;
    129130                if( event & EV_WRITE )
    130                         cond |= GAIM_INPUT_WRITE;
     131                        cond |= B_EV_IO_WRITE;
    131132        }
    132133       
     
    150151                return;
    151152        }
    152         else if( !st )
     153        else if( !st && !( b_ev->flags & B_EV_FLAG_FORCE_REPEAT ) )
    153154        {
    154155                event_debug( "Handler returned FALSE: " );
     
    174175        event_debug( "b_input_add( %d, %d, 0x%x, 0x%x ) ", fd, condition, function, data );
    175176       
    176         if( ( condition & GAIM_INPUT_READ  && ( b_ev = g_hash_table_lookup( read_hash,  &fd ) ) ) ||
    177             ( condition & GAIM_INPUT_WRITE && ( b_ev = g_hash_table_lookup( write_hash, &fd ) ) ) )
     177        if( ( condition & B_EV_IO_READ  && ( b_ev = g_hash_table_lookup( read_hash,  &fd ) ) ) ||
     178            ( condition & B_EV_IO_WRITE && ( b_ev = g_hash_table_lookup( write_hash, &fd ) ) ) )
    178179        {
    179180                /* We'll stick with this libevent entry, but give it a new BitlBee id. */
     
    198199               
    199200                out_cond = EV_PERSIST;
    200                 if( condition & GAIM_INPUT_READ )
     201                if( condition & B_EV_IO_READ )
    201202                        out_cond |= EV_READ;
    202                 if( condition & GAIM_INPUT_WRITE )
     203                if( condition & B_EV_IO_WRITE )
    203204                        out_cond |= EV_WRITE;
    204205               
     
    212213        }
    213214       
     215        b_ev->flags = condition;
    214216        g_hash_table_insert( id_hash, &b_ev->id, b_ev );
    215217        return b_ev->id;
  • lib/http_client.c

    r0d9d53e r4aa0f6b  
    149149        if( req->bytes_written < req->request_length )
    150150                req->inpa = b_input_add( source,
    151                                          req->ssl ? ssl_getdirection( req->ssl ) : GAIM_INPUT_WRITE,
     151                                         req->ssl ? ssl_getdirection( req->ssl ) : B_EV_IO_WRITE,
    152152                                         http_connected, req );
    153153        else
    154                 req->inpa = b_input_add( source, GAIM_INPUT_READ, http_incoming_data, req );
     154                req->inpa = b_input_add( source, B_EV_IO_READ, http_incoming_data, req );
    155155       
    156156        return FALSE;
     
    234234        /* There will be more! */
    235235        req->inpa = b_input_add( req->fd,
    236                                  req->ssl ? ssl_getdirection( req->ssl ) : GAIM_INPUT_READ,
     236                                 req->ssl ? ssl_getdirection( req->ssl ) : B_EV_IO_READ,
    237237                                 http_incoming_data, req );
    238238       
  • lib/proxy.c

    r0d9d53e r4aa0f6b  
    9191                b_event_remove(phb->inpa);
    9292                if( phb->proxy_func )
    93                         phb->proxy_func(phb->proxy_data, -1, GAIM_INPUT_READ);
     93                        phb->proxy_func(phb->proxy_data, -1, B_EV_IO_READ);
    9494                else {
    95                         phb->func(phb->data, -1, GAIM_INPUT_READ);
     95                        phb->func(phb->data, -1, B_EV_IO_READ);
    9696                        g_free(phb);
    9797                }
     
    102102        b_event_remove(phb->inpa);
    103103        if( phb->proxy_func )
    104                 phb->proxy_func(phb->proxy_data, source, GAIM_INPUT_READ);
     104                phb->proxy_func(phb->proxy_data, source, B_EV_IO_READ);
    105105        else {
    106                 phb->func(phb->data, source, GAIM_INPUT_READ);
     106                phb->func(phb->data, source, B_EV_IO_READ);
    107107                g_free(phb);
    108108        }
     
    147147                return -1;
    148148        } else {
    149                 phb->inpa = b_input_add(fd, GAIM_INPUT_WRITE, gaim_io_connected, phb);
     149                phb->inpa = b_input_add(fd, B_EV_IO_WRITE, gaim_io_connected, phb);
    150150                phb->fd = fd;
    151151               
     
    179179        if ((memcmp(HTTP_GOODSTRING, inputline, strlen(HTTP_GOODSTRING)) == 0) ||
    180180            (memcmp(HTTP_GOODSTRING2, inputline, strlen(HTTP_GOODSTRING2)) == 0)) {
    181                 phb->func(phb->data, source, GAIM_INPUT_READ);
     181                phb->func(phb->data, source, B_EV_IO_READ);
    182182                g_free(phb->host);
    183183                g_free(phb);
     
    186186
    187187        close(source);
    188         phb->func(phb->data, -1, GAIM_INPUT_READ);
     188        phb->func(phb->data, -1, B_EV_IO_READ);
    189189        g_free(phb->host);
    190190        g_free(phb);
     
    204204        if (getsockopt(source, SOL_SOCKET, SO_ERROR, &error, &len) < 0) {
    205205                close(source);
    206                 phb->func(phb->data, -1, GAIM_INPUT_READ);
     206                phb->func(phb->data, -1, B_EV_IO_READ);
    207207                g_free(phb->host);
    208208                g_free(phb);
     
    215215        if (send(source, cmd, strlen(cmd), 0) < 0) {
    216216                close(source);
    217                 phb->func(phb->data, -1, GAIM_INPUT_READ);
     217                phb->func(phb->data, -1, B_EV_IO_READ);
    218218                g_free(phb->host);
    219219                g_free(phb);
     
    230230                if (send(source, cmd, strlen(cmd), 0) < 0) {
    231231                        close(source);
    232                         phb->func(phb->data, -1, GAIM_INPUT_READ);
     232                        phb->func(phb->data, -1, B_EV_IO_READ);
    233233                        g_free(phb->host);
    234234                        g_free(phb);
     
    240240        if (send(source, cmd, strlen(cmd), 0) < 0) {
    241241                close(source);
    242                 phb->func(phb->data, -1, GAIM_INPUT_READ);
    243                 g_free(phb->host);
    244                 g_free(phb);
    245                 return FALSE;
    246         }
    247 
    248         phb->inpa = b_input_add(source, GAIM_INPUT_READ, http_canread, phb);
     242                phb->func(phb->data, -1, B_EV_IO_READ);
     243                g_free(phb->host);
     244                g_free(phb);
     245                return FALSE;
     246        }
     247
     248        phb->inpa = b_input_add(source, B_EV_IO_READ, http_canread, phb);
    249249       
    250250        return FALSE;
     
    273273        memset(packet, 0, sizeof(packet));
    274274        if (read(source, packet, 9) >= 4 && packet[1] == 90) {
    275                 phb->func(phb->data, source, GAIM_INPUT_READ);
     275                phb->func(phb->data, source, B_EV_IO_READ);
    276276                g_free(phb->host);
    277277                g_free(phb);
     
    280280
    281281        close(source);
    282         phb->func(phb->data, -1, GAIM_INPUT_READ);
     282        phb->func(phb->data, -1, B_EV_IO_READ);
    283283        g_free(phb->host);
    284284        g_free(phb);
     
    299299        if (getsockopt(source, SOL_SOCKET, SO_ERROR, &error, &len) < 0) {
    300300                close(source);
    301                 phb->func(phb->data, -1, GAIM_INPUT_READ);
     301                phb->func(phb->data, -1, B_EV_IO_READ);
    302302                g_free(phb->host);
    303303                g_free(phb);
     
    309309        if (!(hp = gethostbyname(phb->host))) {
    310310                close(source);
    311                 phb->func(phb->data, -1, GAIM_INPUT_READ);
     311                phb->func(phb->data, -1, B_EV_IO_READ);
    312312                g_free(phb->host);
    313313                g_free(phb);
     
    326326        if (write(source, packet, 9) != 9) {
    327327                close(source);
    328                 phb->func(phb->data, -1, GAIM_INPUT_READ);
    329                 g_free(phb->host);
    330                 g_free(phb);
    331                 return FALSE;
    332         }
    333 
    334         phb->inpa = b_input_add(source, GAIM_INPUT_READ, s4_canread, phb);
     328                phb->func(phb->data, -1, B_EV_IO_READ);
     329                g_free(phb->host);
     330                g_free(phb);
     331                return FALSE;
     332        }
     333
     334        phb->inpa = b_input_add(source, B_EV_IO_READ, s4_canread, phb);
    335335       
    336336        return FALSE;
     
    359359        if (read(source, buf, 10) < 10) {
    360360                close(source);
    361                 phb->func(phb->data, -1, GAIM_INPUT_READ);
     361                phb->func(phb->data, -1, B_EV_IO_READ);
    362362                g_free(phb->host);
    363363                g_free(phb);
     
    366366        if ((buf[0] != 0x05) || (buf[1] != 0x00)) {
    367367                close(source);
    368                 phb->func(phb->data, -1, GAIM_INPUT_READ);
    369                 g_free(phb->host);
    370                 g_free(phb);
    371                 return FALSE;
    372         }
    373 
    374         phb->func(phb->data, source, GAIM_INPUT_READ);
     368                phb->func(phb->data, -1, B_EV_IO_READ);
     369                g_free(phb->host);
     370                g_free(phb);
     371                return FALSE;
     372        }
     373
     374        phb->func(phb->data, source, B_EV_IO_READ);
    375375        g_free(phb->host);
    376376        g_free(phb);
     
    396396        if (write(source, buf, (5 + strlen(phb->host) + 2)) < (5 + strlen(phb->host) + 2)) {
    397397                close(source);
    398                 phb->func(phb->data, -1, GAIM_INPUT_READ);
     398                phb->func(phb->data, -1, B_EV_IO_READ);
    399399                g_free(phb->host);
    400400                g_free(phb);
     
    402402        }
    403403
    404         phb->inpa = b_input_add(source, GAIM_INPUT_READ, s5_canread_again, phb);
     404        phb->inpa = b_input_add(source, B_EV_IO_READ, s5_canread_again, phb);
    405405}
    406406
     
    414414        if (read(source, buf, 2) < 2) {
    415415                close(source);
    416                 phb->func(phb->data, -1, GAIM_INPUT_READ);
     416                phb->func(phb->data, -1, B_EV_IO_READ);
    417417                g_free(phb->host);
    418418                g_free(phb);
     
    422422        if ((buf[0] != 0x01) || (buf[1] != 0x00)) {
    423423                close(source);
    424                 phb->func(phb->data, -1, GAIM_INPUT_READ);
     424                phb->func(phb->data, -1, B_EV_IO_READ);
    425425                g_free(phb->host);
    426426                g_free(phb);
     
    442442        if (read(source, buf, 2) < 2) {
    443443                close(source);
    444                 phb->func(phb->data, -1, GAIM_INPUT_READ);
     444                phb->func(phb->data, -1, B_EV_IO_READ);
    445445                g_free(phb->host);
    446446                g_free(phb);
     
    450450        if ((buf[0] != 0x05) || (buf[1] == 0xff)) {
    451451                close(source);
    452                 phb->func(phb->data, -1, GAIM_INPUT_READ);
     452                phb->func(phb->data, -1, B_EV_IO_READ);
    453453                g_free(phb->host);
    454454                g_free(phb);
     
    465465                if (write(source, buf, 3 + i + j) < 3 + i + j) {
    466466                        close(source);
    467                         phb->func(phb->data, -1, GAIM_INPUT_READ);
     467                        phb->func(phb->data, -1, B_EV_IO_READ);
    468468                        g_free(phb->host);
    469469                        g_free(phb);
     
    471471                }
    472472
    473                 phb->inpa = b_input_add(source, GAIM_INPUT_READ, s5_readauth, phb);
     473                phb->inpa = b_input_add(source, B_EV_IO_READ, s5_readauth, phb);
    474474        } else {
    475475                s5_sendconnect(phb, source);
     
    491491        if (getsockopt(source, SOL_SOCKET, SO_ERROR, &error, &len) < 0) {
    492492                close(source);
    493                 phb->func(phb->data, -1, GAIM_INPUT_READ);
     493                phb->func(phb->data, -1, B_EV_IO_READ);
    494494                g_free(phb->host);
    495495                g_free(phb);
     
    513513        if (write(source, buf, i) < i) {
    514514                close(source);
    515                 phb->func(phb->data, -1, GAIM_INPUT_READ);
    516                 g_free(phb->host);
    517                 g_free(phb);
    518                 return FALSE;
    519         }
    520 
    521         phb->inpa = b_input_add(source, GAIM_INPUT_READ, s5_canread, phb);
     515                phb->func(phb->data, -1, B_EV_IO_READ);
     516                g_free(phb->host);
     517                g_free(phb);
     518                return FALSE;
     519        }
     520
     521        phb->inpa = b_input_add(source, B_EV_IO_READ, s5_canread, phb);
    522522       
    523523        return FALSE;
  • lib/ssl_bogus.c

    r0d9d53e r4aa0f6b  
    5959b_input_condition ssl_getdirection( void *conn )
    6060{
    61         return GAIM_INPUT_READ;
     61        return B_EV_IO_READ;
    6262}
    6363
  • lib/ssl_client.h

    r0d9d53e r4aa0f6b  
    7171G_MODULE_EXPORT int ssl_getfd( void *conn );
    7272
    73 /* This function returns GAIM_INPUT_READ/WRITE. With SSL connections it's
     73/* This function returns B_EV_IO_READ/WRITE. With SSL connections it's
    7474   possible that something has to be read while actually were trying to
    7575   write something (think about key exchange/refresh/etc). So when an
  • lib/ssl_gnutls.c

    r0d9d53e r4aa0f6b  
    106106        struct scd *conn = data;
    107107       
    108         return ssl_connected( conn, conn->fd, GAIM_INPUT_WRITE );
     108        return ssl_connected( conn, conn->fd, B_EV_IO_WRITE );
    109109}
    110110
     
    244244{
    245245        return( gnutls_record_get_direction( ((struct scd*)conn)->session ) ?
    246                 GAIM_INPUT_WRITE : GAIM_INPUT_READ );
    247 }
     246                B_EV_IO_WRITE : B_EV_IO_READ );
     247}
  • lib/ssl_nss.c

    r0d9d53e r4aa0f6b  
    193193{
    194194        /* Just in case someone calls us, let's return the most likely case: */
    195         return GAIM_INPUT_READ;
     195        return B_EV_IO_READ;
    196196}
  • lib/ssl_openssl.c

    r0d9d53e r4aa0f6b  
    102102        struct scd *conn = data;
    103103       
    104         return ssl_connected( conn, conn->fd, GAIM_INPUT_WRITE );
     104        return ssl_connected( conn, conn->fd, B_EV_IO_WRITE );
    105105}
    106106
     
    270270b_input_condition ssl_getdirection( void *conn )
    271271{
    272         return( ((struct scd*)conn)->lasterr == SSL_ERROR_WANT_WRITE ? GAIM_INPUT_WRITE : GAIM_INPUT_READ );
    273 }
     272        return( ((struct scd*)conn)->lasterr == SSL_ERROR_WANT_WRITE ? B_EV_IO_WRITE : B_EV_IO_READ );
     273}
  • lib/ssl_sspi.c

    r0d9d53e r4aa0f6b  
    275275GaimInputCondition ssl_getdirection( void *conn )
    276276{
    277         return GAIM_INPUT_WRITE; /* FIXME: or GAIM_INPUT_READ */
    278 }
     277        return B_EV_IO_WRITE; /* FIXME: or B_EV_IO_READ */
     278}
  • protocols/Makefile

    r0d9d53e r4aa0f6b  
    88
    99-include ../Makefile.settings
     10ifdef SRCDIR
     11SRCDIR := $(SRCDIR)protocols/
     12endif
    1013
    1114# [SH] Program variables
     
    5053$(objects): ../Makefile.settings Makefile
    5154
    52 $(objects): %.o: %.c
     55$(objects): %.o: $(SRCDIR)%.c
    5356        @echo '*' Compiling $<
    5457        @$(CC) -c $(CFLAGS) $< -o $@
  • protocols/jabber/Makefile

    r0d9d53e r4aa0f6b  
    88
    99-include ../../Makefile.settings
     10ifdef SRCDIR
     11SRCDIR := $(SRCDIR)protocols/jabber/
     12endif
    1013
    1114# [SH] Program variables
     
    3336$(objects): ../../Makefile.settings Makefile
    3437
    35 $(objects): %.o: %.c
     38$(objects): %.o: $(SRCDIR)%.c
    3639        @echo '*' Compiling $<
    3740        @$(CC) -c $(CFLAGS) $< -o $@
  • protocols/jabber/io.c

    r0d9d53e r4aa0f6b  
    6464                   most cases it probably won't be necessary.) */
    6565                if( ( ret = jabber_write_queue( ic ) ) && jd->tx_len > 0 )
    66                         jd->w_inpa = b_input_add( jd->fd, GAIM_INPUT_WRITE, jabber_write_callback, ic );
     66                        jd->w_inpa = b_input_add( jd->fd, B_EV_IO_WRITE, jabber_write_callback, ic );
    6767        }
    6868        else
     
    504504       
    505505        if( jd->r_inpa <= 0 )
    506                 jd->r_inpa = b_input_add( jd->fd, GAIM_INPUT_READ, jabber_read_callback, ic );
     506                jd->r_inpa = b_input_add( jd->fd, B_EV_IO_READ, jabber_read_callback, ic );
    507507       
    508508        greet = g_strdup_printf( "%s<stream:stream to=\"%s\" xmlns=\"jabber:client\" "
  • protocols/jabber/s5bytestream.c

    r0d9d53e r4aa0f6b  
    406406                        bt->phase = BS_PHASE_CONNECTED;
    407407                       
    408                         bt->tf->watch_out = b_input_add( fd, GAIM_INPUT_WRITE, jabber_bs_recv_handshake, bt );
     408                        bt->tf->watch_out = b_input_add( fd, B_EV_IO_WRITE, jabber_bs_recv_handshake, bt );
    409409
    410410                        /* since it takes forever(3mins?) till connect() fails on itself we schedule a timeout */
     
    433433                        bt->phase = BS_PHASE_REQUEST;
    434434
    435                         bt->tf->watch_in = b_input_add( fd, GAIM_INPUT_READ, jabber_bs_recv_handshake, bt );
     435                        bt->tf->watch_in = b_input_add( fd, B_EV_IO_READ, jabber_bs_recv_handshake, bt );
    436436
    437437                        bt->tf->watch_out = 0;
     
    590590
    591591        tf->ft->data = tf;
    592         tf->watch_in = b_input_add( tf->fd, GAIM_INPUT_READ, jabber_bs_recv_read, bt );
     592        tf->watch_in = b_input_add( tf->fd, B_EV_IO_READ, jabber_bs_recv_read, bt );
    593593        tf->ft->write_request = jabber_bs_recv_write_request;
    594594
     
    632632                if( ( ret == -1 ) && ( errno == EAGAIN ) )
    633633                {
    634                         tf->watch_in = b_input_add( tf->fd, GAIM_INPUT_READ, jabber_bs_recv_read, bt );
     634                        tf->watch_in = b_input_add( tf->fd, B_EV_IO_READ, jabber_bs_recv_read, bt );
    635635                        return FALSE;
    636636                }
     
    708708                imcb_file_finished( tf->ic, ft );
    709709        else
    710                 bt->tf->watch_out = b_input_add( tf->fd, GAIM_INPUT_WRITE, jabber_bs_send_can_write, bt );
     710                bt->tf->watch_out = b_input_add( tf->fd, B_EV_IO_WRITE, jabber_bs_send_can_write, bt );
    711711               
    712712        return TRUE;
     
    919919                                bt->streamhosts = g_slist_append( bt->streamhosts, sh );
    920920
    921                                 bt->tf->watch_in = b_input_add( tf->fd, GAIM_INPUT_READ, jabber_bs_send_handshake, bt );
     921                                bt->tf->watch_in = b_input_add( tf->fd, B_EV_IO_READ, jabber_bs_send_handshake, bt );
    922922                                bt->connect_timeout = b_timeout_add( JABBER_BS_LISTEN_TIMEOUT * 1000, jabber_bs_connect_timeout, bt );
    923923                        } else {
     
    10561056                        bt->phase = BS_PHASE_CONNECTED;
    10571057
    1058                         bt->tf->watch_in = b_input_add( fd, GAIM_INPUT_READ, jabber_bs_send_handshake, bt );
     1058                        bt->tf->watch_in = b_input_add( fd, B_EV_IO_READ, jabber_bs_send_handshake, bt );
    10591059                        return FALSE;
    10601060                }
  • protocols/msn/Makefile

    r0d9d53e r4aa0f6b  
    88
    99-include ../../Makefile.settings
     10ifdef SRCDIR
     11SRCDIR := $(SRCDIR)protocols/msn/
     12endif
    1013
    1114# [SH] Program variables
     
    3336$(objects): ../../Makefile.settings Makefile
    3437
    35 $(objects): %.o: %.c
     38$(objects): %.o: $(SRCDIR)%.c
    3639        @echo '*' Compiling $<
    3740        @$(CC) -c $(CFLAGS) $< -o $@
  • protocols/msn/invitation.c

    r0d9d53e r4aa0f6b  
    209209        sock_make_nonblocking( fd );
    210210
    211         msn_file->r_event_id = b_input_add( fd, GAIM_INPUT_READ, msn_ftp_read, file );
     211        msn_file->r_event_id = b_input_add( fd, B_EV_IO_READ, msn_ftp_read, file );
    212212
    213213        return FALSE;
     
    230230        }
    231231
    232         msn_file->r_event_id = b_input_add( msn_file->fd, GAIM_INPUT_READ, msn_ftps_connected, file );
     232        msn_file->r_event_id = b_input_add( msn_file->fd, B_EV_IO_READ, msn_ftps_connected, file );
    233233
    234234        g_snprintf( buf, sizeof( buf ),
     
    318318       
    319319        sock_make_nonblocking( msn_file->fd );
    320         msn_file->r_event_id = b_input_add( msn_file->fd, GAIM_INPUT_READ, msn_ftp_read, file );
     320        msn_file->r_event_id = b_input_add( msn_file->fd, B_EV_IO_READ, msn_ftp_read, file );
    321321       
    322322        return FALSE;
     
    415415            ( msn_file->data_sent + msn_file->sbufpos - 3 < file->file_size ) ) {
    416416                if( !msn_file->w_event_id )
    417                         msn_file->w_event_id = b_input_add( msn_file->fd, GAIM_INPUT_WRITE, msn_ftp_send, file );
     417                        msn_file->w_event_id = b_input_add( msn_file->fd, B_EV_IO_WRITE, msn_ftp_send, file );
    418418                return TRUE;
    419419        }
     
    452452                /* we might already be listening if this is data from an overflow */
    453453                if( !msn_file->w_event_id )
    454                         msn_file->w_event_id = b_input_add( msn_file->fd, GAIM_INPUT_WRITE, msn_ftp_send, file );
     454                        msn_file->w_event_id = b_input_add( msn_file->fd, B_EV_IO_WRITE, msn_ftp_send, file );
    455455        }
    456456
     
    617617
    618618        msn_file->r_event_id =
    619                 b_input_add( msn_file->fd, GAIM_INPUT_READ, msn_ftp_read, file );
     619                b_input_add( msn_file->fd, B_EV_IO_READ, msn_ftp_read, file );
    620620
    621621        return TRUE;
  • protocols/msn/ns.c

    r0d9d53e r4aa0f6b  
    7676        if( msn_write( ic, s, strlen( s ) ) )
    7777        {
    78                 ic->inpa = b_input_add( md->fd, GAIM_INPUT_READ, msn_ns_callback, ic );
     78                ic->inpa = b_input_add( md->fd, B_EV_IO_READ, msn_ns_callback, ic );
    7979                imcb_log( ic, "Connected to server, waiting for reply" );
    8080        }
  • protocols/msn/sb.c

    r0d9d53e r4aa0f6b  
    327327       
    328328        if( msn_sb_write( sb, buf, strlen( buf ) ) )
    329                 sb->inp = b_input_add( sb->fd, GAIM_INPUT_READ, msn_sb_callback, sb );
     329                sb->inp = b_input_add( sb->fd, B_EV_IO_READ, msn_sb_callback, sb );
    330330        else
    331331                debug( "Error %d while connecting to switchboard server", 2 );
  • protocols/nogaim.c

    r0d9d53e r4aa0f6b  
    112112{
    113113        GList *gl;
    114         for (gl = protocols; gl; gl = gl->next)
     114       
     115        for( gl = protocols; gl; gl = gl->next )
    115116        {
    116117                struct prpl *proto = gl->data;
    117                 if(!g_strcasecmp(proto->name, name))
     118               
     119                if( g_strcasecmp( proto->name, name ) == 0 )
    118120                        return proto;
    119121        }
     122       
    120123        return NULL;
    121124}
     
    128131        extern void jabber_initmodule();
    129132        extern void twitter_initmodule();
     133        extern void purple_initmodule();
    130134
    131135#ifdef WITH_MSN
     
    147151#ifdef WITH_TWITTER
    148152        twitter_initmodule();
     153#endif
     154
     155#ifdef WITH_PURPLE
     156        purple_initmodule();
    149157#endif
    150158
  • protocols/nogaim.h

    r0d9d53e r4aa0f6b  
    134134         * - The user sees this name ie. when imcb_log() is used. */
    135135        const char *name;
     136        void *data;
    136137
    137138        /* Added this one to be able to add per-account settings, don't think
     
    321322
    322323/* Misc. stuff */
     324char *set_eval_timezone( set_t *set, char *value );
    323325char *set_eval_away_devoice( set_t *set, char *value );
    324326gboolean auto_reconnect( gpointer data, gint fd, b_input_condition cond );
  • protocols/oscar/Makefile

    r0d9d53e r4aa0f6b  
    88
    99-include ../../Makefile.settings
     10ifdef SRCDIR
     11SRCDIR := $(SRCDIR)protocols/oscar/
     12CFLAGS += -I$(SRCDIR)
     13endif
    1014
    1115# [SH] Program variables
     
    3337$(objects): ../../Makefile.settings Makefile
    3438
    35 $(objects): %.o: %.c
     39$(objects): %.o: $(SRCDIR)%.c
    3640        @echo '*' Compiling $<
    3741        @$(CC) -c $(CFLAGS) $< -o $@
  • protocols/oscar/auth.c

    r0d9d53e r4aa0f6b  
    120120        aim_snacid_t snacid;
    121121        aim_tlvlist_t *tl = NULL;
     122        struct im_connection *ic = sess->aux_data;
    122123       
    123124        if (!sess || !conn || !sn)
    124125                return -EINVAL;
    125126
    126         if ((sn[0] >= '0') && (sn[0] <= '9'))
     127        if (isdigit(sn[0]) && set_getbool(&ic->acc->set, "old_icq_auth"))
    127128                return goddamnicq(sess, conn, sn);
    128129
  • protocols/oscar/oscar.c

    r0d9d53e r4aa0f6b  
    288288        odata = (struct oscar_data *)ic->proto_data;
    289289
    290         if (condition & GAIM_INPUT_READ) {
     290        if (condition & B_EV_IO_READ) {
    291291                if (aim_get_command(odata->sess, conn) >= 0) {
    292292                        aim_rxdispatch(odata->sess);
     
    360360
    361361        aim_conn_completeconnect(sess, conn);
    362         ic->inpa = b_input_add(conn->fd, GAIM_INPUT_READ,
     362        ic->inpa = b_input_add(conn->fd, B_EV_IO_READ,
    363363                        oscar_callback, conn);
    364364       
     
    372372        if (isdigit(acc->user[0])) {
    373373                set_add(&acc->set, "ignore_auth_requests", "false", set_eval_bool, acc);
     374                set_add(&acc->set, "old_icq_auth", "false", set_eval_bool, acc);
    374375        }
    375376       
     
    490491
    491492        aim_conn_completeconnect(sess, bosconn);
    492         ic->inpa = b_input_add(bosconn->fd, GAIM_INPUT_READ,
     493        ic->inpa = b_input_add(bosconn->fd, B_EV_IO_READ,
    493494                        oscar_callback, bosconn);
    494495        imcb_log(ic, _("Connection established, cookie sent"));
     
    706707
    707708        aim_conn_completeconnect(sess, tstconn);
    708         odata->cnpa = b_input_add(tstconn->fd, GAIM_INPUT_READ,
     709        odata->cnpa = b_input_add(tstconn->fd, B_EV_IO_READ,
    709710                                        oscar_callback, tstconn);
    710711       
     
    734735
    735736        aim_conn_completeconnect(sess, tstconn);
    736         odata->paspa = b_input_add(tstconn->fd, GAIM_INPUT_READ,
     737        odata->paspa = b_input_add(tstconn->fd, B_EV_IO_READ,
    737738                                oscar_callback, tstconn);
    738739       
     
    770771        aim_conn_completeconnect(sess, ccon->conn);
    771772        ccon->inpa = b_input_add(tstconn->fd,
    772                         GAIM_INPUT_READ,
     773                        B_EV_IO_READ,
    773774                        oscar_callback, tstconn);
    774775        odata->oscar_chats = g_slist_append(odata->oscar_chats, ccon);
  • protocols/twitter/Makefile

    r0d9d53e r4aa0f6b  
    88
    99-include ../../Makefile.settings
     10ifdef SRCDIR
     11SRCDIR := $(SRCDIR)protocols/twitter/
     12endif
    1013
    1114# [SH] Program variables
     
    3336$(objects): ../../Makefile.settings Makefile
    3437
    35 $(objects): %.o: %.c
     38$(objects): %.o: $(SRCDIR)%.c
    3639        @echo '*' Compiling $<
    3740        @$(CC) -c $(CFLAGS) $< -o $@
  • protocols/yahoo/Makefile

    r0d9d53e r4aa0f6b  
    88
    99-include ../../Makefile.settings
     10ifdef SRCDIR
     11SRCDIR := $(SRCDIR)protocols/yahoo/
     12endif
    1013
    1114# [SH] Program variables
     
    3336$(objects): ../../Makefile.settings Makefile
    3437
    35 $(objects): %.o: %.c
     38$(objects): %.o: $(SRCDIR)%.c
    3639        @echo '*' Compiling $<
    3740        @$(CC) -c $(CFLAGS) $< -o $@
  • protocols/yahoo/yahoo.c

    r0d9d53e r4aa0f6b  
    686686               
    687687                inp->d = d;
    688                 d->tag = inp->h = b_input_add( fd, GAIM_INPUT_READ, (b_event_handler) byahoo_read_ready_callback, (gpointer) d );
     688                d->tag = inp->h = b_input_add( fd, B_EV_IO_READ, (b_event_handler) byahoo_read_ready_callback, (gpointer) d );
    689689        }
    690690        else if( cond == YAHOO_INPUT_WRITE )
     
    697697               
    698698                inp->d = d;
    699                 d->tag = inp->h = b_input_add( fd, GAIM_INPUT_WRITE, (b_event_handler) byahoo_write_ready_callback, (gpointer) d );
     699                d->tag = inp->h = b_input_add( fd, B_EV_IO_WRITE, (b_event_handler) byahoo_write_ready_callback, (gpointer) d );
    700700        }
    701701        else
  • set.c

    r0d9d53e r4aa0f6b  
    2929char *SET_INVALID = "nee";
    3030
    31 set_t *set_add( set_t **head, char *key, char *def, set_eval eval, void *data )
     31set_t *set_add( set_t **head, const char *key, const char *def, set_eval eval, void *data )
    3232{
    3333        set_t *s = set_find( head, key );
     
    6363}
    6464
    65 set_t *set_find( set_t **head, char *key )
     65set_t *set_find( set_t **head, const char *key )
    6666{
    6767        set_t *s = *head;
     
    7878}
    7979
    80 char *set_getstr( set_t **head, char *key )
     80char *set_getstr( set_t **head, const char *key )
    8181{
    8282        set_t *s = set_find( head, key );
     
    8888}
    8989
    90 int set_getint( set_t **head, char *key )
     90int set_getint( set_t **head, const char *key )
    9191{
    9292        char *s = set_getstr( head, key );
     
    102102}
    103103
    104 int set_getbool( set_t **head, char *key )
     104int set_getbool( set_t **head, const char *key )
    105105{
    106106        char *s = set_getstr( head, key );
     
    112112}
    113113
    114 int set_setstr( set_t **head, char *key, char *value )
     114int set_setstr( set_t **head, const char *key, char *value )
    115115{
    116116        set_t *s = set_find( head, key );
     
    151151}
    152152
    153 int set_setint( set_t **head, char *key, int value )
     153int set_setint( set_t **head, const char *key, int value )
    154154{
    155155        char s[24];     /* Not quite 128-bit clean eh? ;-) */
     
    159159}
    160160
    161 void set_del( set_t **head, char *key )
     161void set_del( set_t **head, const char *key )
    162162{
    163163        set_t *s = *head, *t = NULL;
     
    184184}
    185185
    186 int set_reset( set_t **head, char *key )
     186int set_reset( set_t **head, const char *key )
    187187{
    188188        set_t *s;
     
    213213{
    214214        return is_bool( value ) ? value : SET_INVALID;
     215}
     216
     217char *set_eval_list( set_t *set, char *value )
     218{
     219        GSList *options = set->eval_data, *opt;
     220       
     221        for( opt = options; opt; opt = opt->next )
     222                if( strcmp( value, opt->data ) == 0 )
     223                        return value;
     224       
     225        /* TODO: It'd be nice to show the user a list of allowed values,
     226                 but we don't have enough context here to do that. May
     227                 want to fix that. */
     228       
     229        return NULL;
    215230}
    216231
  • set.h

    r0d9d53e r4aa0f6b  
    7070           set_setstr() should be able to free() the returned string! */
    7171        set_eval eval;
     72        void *eval_data;
    7273        struct set *next;
    7374} set_t;
    7475
    7576/* Should be pretty clear. */
    76 set_t *set_add( set_t **head, char *key, char *def, set_eval eval, void *data );
     77set_t *set_add( set_t **head, const char *key, const char *def, set_eval eval, void *data );
    7778
    7879/* Returns the raw set_t. Might be useful sometimes. */
    79 set_t *set_find( set_t **head, char *key );
     80set_t *set_find( set_t **head, const char *key );
    8081
    8182/* Returns a pointer to the string value of this setting. Don't modify the
    8283   returned string, and don't free() it! */
    83 G_MODULE_EXPORT char *set_getstr( set_t **head, char *key );
     84G_MODULE_EXPORT char *set_getstr( set_t **head, const char *key );
    8485
    8586/* Get an integer. In previous versions set_getint() was also used to read
    8687   boolean values, but this SHOULD be done with set_getbool() now! */
    87 G_MODULE_EXPORT int set_getint( set_t **head, char *key );
    88 G_MODULE_EXPORT int set_getbool( set_t **head, char *key );
     88G_MODULE_EXPORT int set_getint( set_t **head, const char *key );
     89G_MODULE_EXPORT int set_getbool( set_t **head, const char *key );
    8990
    9091/* set_setstr() strdup()s the given value, so after using this function
    9192   you can free() it, if you want. */
    92 int set_setstr( set_t **head, char *key, char *value );
    93 int set_setint( set_t **head, char *key, int value );
    94 void set_del( set_t **head, char *key );
    95 int set_reset( set_t **head, char *key );
     93int set_setstr( set_t **head, const char *key, char *value );
     94int set_setint( set_t **head, const char *key, int value );
     95void set_del( set_t **head, const char *key );
     96int set_reset( set_t **head, const char *key );
    9697
    9798/* Two very useful generic evaluators. */
    9899char *set_eval_int( set_t *set, char *value );
    99100char *set_eval_bool( set_t *set, char *value );
     101
     102/* Another more complicated one. */
     103char *set_eval_list( set_t *set, char *value );
    100104
    101105/* Some not very generic evaluators that really shouldn't be here... */
  • tests/Makefile

    r0d9d53e r4aa0f6b  
    11-include ../Makefile.settings
     2ifdef SRCDIR
     3SRCDIR := $(SRCDIR)tests/
     4endif
    25
    36LFLAGS +=-lcheck
     
    1922        @$(CC) $(CFLAGS) -o $@ $^ $(LFLAGS) $(EFLAGS)
    2023
    21 %.o: %.c
     24%.o: $(SRCDIR)%.c
    2225        @echo '*' Compiling $<
    2326        @$(CC) -c $(CFLAGS) $< -o $@
  • unix.c

    r0d9d53e r4aa0f6b  
    5656       
    5757        log_init();
     58       
    5859        global.conf_file = g_strdup( CONF_FILE_DEF );
    5960        global.conf = conf_load( argc, argv );
     
    6263       
    6364        b_main_init();
    64         nogaim_init();
    6565       
    6666        srand( time( NULL ) ^ getpid() );
     67       
    6768        global.helpfile = g_strdup( HELP_FILE );
     69        if( help_init( &global.help, global.helpfile ) == NULL )
     70                log_message( LOGLVL_WARNING, "Error opening helpfile %s.", HELP_FILE );
     71
     72        global.storage = storage_init( global.conf->primary_storage, global.conf->migrate_storage );
     73        if( global.storage == NULL )
     74        {
     75                log_message( LOGLVL_ERROR, "Unable to load storage backend '%s'", global.conf->primary_storage );
     76                return( 1 );
     77        }
    6878       
    6979        if( global.conf->runmode == RUNMODE_INETD )
     
    116126                        setuid( pw->pw_uid );
    117127                }
    118         }
    119 
    120         global.storage = storage_init( global.conf->primary_storage, global.conf->migrate_storage );
    121         if( global.storage == NULL )
    122         {
    123                 log_message( LOGLVL_ERROR, "Unable to load storage backend '%s'", global.conf->primary_storage );
    124                 return( 1 );
    125128        }
    126129       
     
    142145        if( !getuid() || !geteuid() )
    143146                log_message( LOGLVL_WARNING, "BitlBee is running with root privileges. Why?" );
    144         if( help_init( &global.help, global.helpfile ) == NULL )
    145                 log_message( LOGLVL_WARNING, "Error opening helpfile %s.", HELP_FILE );
    146147       
    147148        b_main_run();
Note: See TracChangeset for help on using the changeset viewer.