Changes in / [f1e7407:e46e077]
- Files:
-
- 5 added
- 15 edited
Legend:
- Unmodified
- Added
- Removed
-
.bzrignore
rf1e7407 re46e077 2 2 config.h 3 3 bitlbee 4 Debug 5 Debugx 6 deps 7 admin/Debug 8 admin/admin.plg 9 bitlbee.plg 10 *.plg 11 *.aps 12 *.clw 4 13 user-guide.txt 5 14 user-guide.html … … 17 26 *.gcno 18 27 *.o 28 coverage 29 bitlbee.info -
Makefile
rf1e7407 re46e077 10 10 11 11 # Program variables 12 objects = account.o bitlbee.o c onf.o crypting.o help.o ipc.o irc.o irc_commands.o log.o nick.o query.o root_commands.o set.o storage.o $(STORAGE_OBJS) unix.ouser.o12 objects = account.o bitlbee.o crypting.o help.o ipc.o irc.o irc_commands.o nick.o query.o root_commands.o set.o storage.o $(STORAGE_OBJS) user.o 13 13 headers = account.h bitlbee.h commands.h conf.h config.h crypting.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/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/nogaim.h 14 14 subdirs = lib protocols 15 16 ifeq ($(ARCH),Windows) 17 objects += win32.o 18 else 19 objects += unix.o conf.o log.o 20 endif 15 21 16 22 # Expansion of variables -
bitlbee.c
rf1e7407 re46e077 123 123 ipc_master_listen_socket(); 124 124 125 #ifndef _WIN32 125 126 if( ( fp = fopen( global.conf->pidfile, "w" ) ) ) 126 127 { … … 132 133 log_message( LOGLVL_WARNING, "Warning: Couldn't write PID to `%s'", global.conf->pidfile ); 133 134 } 135 #endif 134 136 135 137 return( 0 ); … … 140 142 if( !irc_new( 0 ) ) 141 143 return( 1 ); 142 143 log_link( LOGLVL_ERROR, LOGOUTPUT_IRC );144 log_link( LOGLVL_WARNING, LOGOUTPUT_IRC );145 144 146 145 return( 0 ); … … 250 249 struct sockaddr_in conn_info; 251 250 int new_socket = accept( global.listen_socket, (struct sockaddr *) &conn_info, &size ); 252 pid_t client_pid = 0;253 251 254 252 if( new_socket == -1 ) … … 258 256 } 259 257 258 #ifndef _WIN32 260 259 if( global.conf->runmode == RUNMODE_FORKDAEMON ) 261 260 { 261 pid_t client_pid = 0; 262 262 int fds[2]; 263 263 … … 316 316 } 317 317 else 318 #endif 318 319 { 319 320 log_message( LOGLVL_INFO, "Creating new connection with fd %d.", new_socket ); -
bitlbee.h
rf1e7407 re46e077 48 48 #include <stdio.h> 49 49 #include <ctype.h> 50 #include <errno.h> 51 50 52 #ifndef _WIN32 51 53 #include <syslog.h> 52 #include <errno.h>53 54 #endif 54 55 … … 94 95 #undef g_main_quit 95 96 #define g_main_quit __PLEASE_USE_B_MAIN_QUIT__ 96 97 #ifndef F_OK98 #define F_OK 099 #endif100 97 101 98 #ifndef G_GNUC_MALLOC -
configure
rf1e7407 re46e077 224 224 detect_gnutls() 225 225 { 226 if libgnutls-config --version > /dev/null 2> /dev/null; then 226 if $PKG_CONFIG --exists gnutls; then 227 cat <<EOF>>Makefile.settings 228 EFLAGS+=`$PKG_CONFIG --libs gnutls` 229 CFLAGS+=`$PKG_CONFIG --cflags gnutls` 230 EOF 231 ssl=gnutls 232 ret=1 233 elif libgnutls-config --version > /dev/null 2> /dev/null; then 227 234 cat <<EOF>>Makefile.settings 228 235 EFLAGS+=`libgnutls-config --libs` … … 278 285 elif [ "$ssl" = "nss" ]; then 279 286 detect_nss 287 elif [ "$ssl" = "sspi" ]; then 288 echo 280 289 elif [ "$ssl" = "openssl" ]; then 281 290 echo … … 386 395 387 396 if [ "$gcov" = "1" ]; then 388 echo "CFLAGS+=- ftest-coverage -fprofile-arcs" >> Makefile.settings389 echo "EFLAGS+=- lgcov" >> Makefile.settings397 echo "CFLAGS+=--coverage" >> Makefile.settings 398 echo "EFLAGS+=--coverage" >> Makefile.settings 390 399 fi 391 400 … … 494 503 echo 'Cygwin is not officially supported.' 495 504 ;; 505 Windows ) 506 echo OUTFILE=bitlbee.exe >> Makefile.settings 507 echo LFLAGS+=-lwsock32 >> Makefile.settings 508 echo EFLAGS+=-lsecur32 >> Makefile.settings 509 ;; 496 510 * ) 497 511 echo 'We haven'\''t tested BitlBee on many platforms yet, yours is untested. YMMV.' -
ipc.c
rf1e7407 re46e077 439 439 } 440 440 441 #ifndef _WIN32 441 442 char *ipc_master_save_state() 442 443 { … … 504 505 } 505 506 506 #ifndef _WIN32507 507 int ipc_master_listen_socket() 508 508 { … … 541 541 } 542 542 #else 543 int ipc_master_listen_socket() 544 { 543 545 /* FIXME: Open named pipe \\.\BITLBEE */ 546 return 0; 547 } 544 548 #endif 545 549 -
lib/misc.c
rf1e7407 re46e077 392 392 } 393 393 394 /* A pretty reliable random number generator. Tries to use the /dev/random395 devices first, and falls back to the random number generator from libc396 when it fails. Opens randomizer devices with O_NONBLOCK to make sure a397 lack of entropy won't halt BitlBee. */398 void random_bytes( unsigned char *buf, int count )399 {400 static int use_dev = -1;401 402 /* Actually this probing code isn't really necessary, is it? */403 if( use_dev == -1 )404 {405 if( access( "/dev/random", R_OK ) == 0 || access( "/dev/urandom", R_OK ) == 0 )406 use_dev = 1;407 else408 {409 use_dev = 0;410 srand( ( getpid() << 16 ) ^ time( NULL ) );411 }412 }413 414 if( use_dev )415 {416 int fd;417 418 /* At least on Linux, /dev/random can block if there's not419 enough entropy. We really don't want that, so if it can't420 give anything, use /dev/urandom instead. */421 if( ( fd = open( "/dev/random", O_RDONLY | O_NONBLOCK ) ) >= 0 )422 if( read( fd, buf, count ) == count )423 {424 close( fd );425 return;426 }427 close( fd );428 429 /* urandom isn't supposed to block at all, but just to be430 sure. If it blocks, we'll disable use_dev and use the libc431 randomizer instead. */432 if( ( fd = open( "/dev/urandom", O_RDONLY | O_NONBLOCK ) ) >= 0 )433 if( read( fd, buf, count ) == count )434 {435 close( fd );436 return;437 }438 close( fd );439 440 /* If /dev/random blocks once, we'll still try to use it441 again next time. If /dev/urandom also fails for some442 reason, stick with libc during this session. */443 444 use_dev = 0;445 srand( ( getpid() << 16 ) ^ time( NULL ) );446 }447 448 if( !use_dev )449 {450 int i;451 452 /* Possibly the LSB of rand() isn't very random on some453 platforms. Seems okay on at least Linux and OSX though. */454 for( i = 0; i < count; i ++ )455 buf[i] = rand() & 0xff;456 }457 }458 459 394 int is_bool( char *value ) 460 395 { -
protocols/nogaim.h
rf1e7407 re46e077 130 130 struct im_connection *ic; /* the connection it belongs to */ 131 131 }; 132 133 struct ft 134 { 135 const char *filename; 136 137 /* Total number of bytes in file */ 138 size_t total_bytes; 139 140 /* Current number of bytes received */ 141 size_t cur_bytes; 142 }; 143 144 struct ft_request 145 { 146 const char *filename; 147 struct gaim_connection *gc; 148 }; 149 150 typedef void (*ft_recv_handler) (struct ft *, void *data, size_t len); 132 151 133 152 struct prpl { -
protocols/oscar/AUTHORS
rf1e7407 re46e077 28 28 E: awwaiid@auk.cx 29 29 D: Figured out original password roasting 30 31 -
protocols/yahoo/libyahoo2.c
rf1e7407 re46e077 69 69 #ifdef __MINGW32__ 70 70 # include <winsock2.h> 71 # define write(a,b,c) send(a,b,c,0)72 # define read(a,b,c) recv(a,b,c,0)73 71 #endif 74 72 -
protocols/yahoo/yahoo_httplib.c
rf1e7407 re46e077 51 51 #ifdef __MINGW32__ 52 52 # include <winsock2.h> 53 # define write(a,b,c) send(a,b,c,0)54 # define read(a,b,c) recv(a,b,c,0)55 53 # define snprintf _snprintf 56 54 #endif -
sock.h
rf1e7407 re46e077 16 16 #else 17 17 # include <winsock2.h> 18 # ifndef _MSC_VER 19 # include <ws2tcpip.h> 20 # endif 18 # include <ws2tcpip.h> 21 19 # if !defined(BITLBEE_CORE) && defined(_MSC_VER) 22 20 # pragma comment(lib,"bitlbee.lib") 23 21 # endif 24 22 # include <io.h> 25 # define read(a,b,c) recv(a,b,c,0)26 # define write(a,b,c) send(a,b,c,0)27 # define umask _umask28 # define mode_t int29 23 # define sock_make_nonblocking(fd) { int non_block = 1; ioctlsocket(fd, FIONBIO, &non_block); } 30 24 # define sock_make_blocking(fd) { int non_block = 0; ioctlsocket(fd, FIONBIO, &non_block); } -
storage_text.c
rf1e7407 re46e077 27 27 #include "bitlbee.h" 28 28 #include "crypting.h" 29 #ifdef _WIN32 30 # define umask _umask 31 # define mode_t int 32 #endif 33 34 #ifndef F_OK 35 #define F_OK 0 36 #endif 29 37 30 38 static void text_init (void) -
storage_xml.c
rf1e7407 re46e077 29 29 #include "arc.h" 30 30 #include "md5.h" 31 #include <glib/gstdio.h> 31 32 32 33 typedef enum … … 243 244 static void xml_init( void ) 244 245 { 245 if( access( global.conf->configdir, F_OK ) != 0)246 if( ! g_file_test( global.conf->configdir, G_FILE_TEST_EXISTS ) ) 246 247 log_message( LOGLVL_WARNING, "The configuration directory `%s' does not exist. Configuration won't be saved.", global.conf->configdir ); 247 else if( access( global.conf->configdir, R_OK ) != 0 ||access( global.conf->configdir, W_OK ) != 0 )248 else if( ! g_file_test( global.conf->configdir, G_FILE_TEST_EXISTS ) || g_access( global.conf->configdir, W_OK ) != 0 ) 248 249 log_message( LOGLVL_WARNING, "Permission problem: Can't read/write from/to `%s'.", global.conf->configdir ); 249 250 } … … 372 373 g_free( path2 ); 373 374 374 if( !overwrite && access( path, F_OK ) != -1)375 if( !overwrite && g_file_test( path, G_FILE_TEST_EXISTS ) ) 375 376 return STORAGE_ALREADY_EXISTS; 376 377 -
unix.c
rf1e7407 re46e077 60 60 if( global.conf->runmode == RUNMODE_INETD ) 61 61 { 62 log_link( LOGLVL_ERROR, LOGOUTPUT_IRC ); 63 log_link( LOGLVL_WARNING, LOGOUTPUT_IRC ); 64 62 65 i = bitlbee_inetd_init(); 63 66 log_message( LOGLVL_INFO, "Bitlbee %s starting in inetd mode.", BITLBEE_VERSION ); … … 66 69 else if( global.conf->runmode == RUNMODE_DAEMON ) 67 70 { 71 log_link( LOGLVL_ERROR, LOGOUTPUT_SYSLOG ); 72 log_link( LOGLVL_WARNING, LOGOUTPUT_SYSLOG ); 73 68 74 i = bitlbee_daemon_init(); 69 75 log_message( LOGLVL_INFO, "Bitlbee %s starting in daemon mode.", BITLBEE_VERSION ); … … 219 225 return( (double) time->tv_sec + (double) time->tv_usec / 1000000 ); 220 226 } 227 228 /* A pretty reliable random number generator. Tries to use the /dev/random 229 devices first, and falls back to the random number generator from libc 230 when it fails. Opens randomizer devices with O_NONBLOCK to make sure a 231 lack of entropy won't halt BitlBee. */ 232 void random_bytes( unsigned char *buf, int count ) 233 { 234 static int use_dev = -1; 235 236 /* Actually this probing code isn't really necessary, is it? */ 237 if( use_dev == -1 ) 238 { 239 if( access( "/dev/random", R_OK ) == 0 || access( "/dev/urandom", R_OK ) == 0 ) 240 use_dev = 1; 241 else 242 { 243 use_dev = 0; 244 srand( ( getpid() << 16 ) ^ time( NULL ) ); 245 } 246 } 247 248 if( use_dev ) 249 { 250 int fd; 251 252 /* At least on Linux, /dev/random can block if there's not 253 enough entropy. We really don't want that, so if it can't 254 give anything, use /dev/urandom instead. */ 255 if( ( fd = open( "/dev/random", O_RDONLY | O_NONBLOCK ) ) >= 0 ) 256 if( read( fd, buf, count ) == count ) 257 { 258 close( fd ); 259 return; 260 } 261 close( fd ); 262 263 /* urandom isn't supposed to block at all, but just to be 264 sure. If it blocks, we'll disable use_dev and use the libc 265 randomizer instead. */ 266 if( ( fd = open( "/dev/urandom", O_RDONLY | O_NONBLOCK ) ) >= 0 ) 267 if( read( fd, buf, count ) == count ) 268 { 269 close( fd ); 270 return; 271 } 272 close( fd ); 273 274 /* If /dev/random blocks once, we'll still try to use it 275 again next time. If /dev/urandom also fails for some 276 reason, stick with libc during this session. */ 277 278 use_dev = 0; 279 srand( ( getpid() << 16 ) ^ time( NULL ) ); 280 } 281 282 if( !use_dev ) 283 { 284 int i; 285 286 /* Possibly the LSB of rand() isn't very random on some 287 platforms. Seems okay on at least Linux and OSX though. */ 288 for( i = 0; i < count; i ++ ) 289 buf[i] = rand() & 0xff; 290 } 291 } 292 293
Note: See TracChangeset
for help on using the changeset viewer.