Changeset 70d7795
- Timestamp:
- 2010-11-12T22:51:39Z (14 years ago)
- Branches:
- master
- Children:
- ed0589c
- Parents:
- 6da18ac
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
configure
r6da18ac r70d7795 682 682 echo 'EFLAGS+=-lresolv -lnsl -lsocket' >> Makefile.settings 683 683 echo 'STRIP=\# skip strip' >> Makefile.settings 684 echo '#define NO_FD_PASSING' >> config.h 684 685 ;; 685 686 AIX ) -
ipc.c
r6da18ac r70d7795 38 38 static void ipc_master_takeover_fail( struct bitlbee_child *child, gboolean both ); 39 39 static gboolean ipc_send_fd( int fd, int send_fd ); 40 41 /* On Solaris and possibly other systems passing FDs between processes is 42 * not possible (or at least not using the method used in this file. 43 * Just disable that code, the functionality is not that important. */ 44 #if defined(NO_FD_PASSING) && !defined(CMSG_SPACE) 45 #define CMSG_SPACE(len) 1 46 #endif 40 47 41 48 static void ipc_master_cmd_client( irc_t *data, char **cmd ) … … 446 453 if( global.conf->runmode == RUNMODE_FORKDAEMON ) 447 454 { 455 #ifndef NO_FD_PASSING 448 456 if( !ipc_send_fd( global.listen_socket, irc->fd ) ) 449 457 ipc_child_disable(); 450 458 451 459 ipc_to_master_str( "IDENTIFY %s :%s\r\n", irc->user->nick, irc->password ); 460 #endif 452 461 453 462 return TRUE; … … 566 575 msg.msg_iov = &iov; 567 576 msg.msg_iovlen = 1; 577 #ifndef NO_FD_PASSING 568 578 msg.msg_control = ccmsg; 569 579 msg.msg_controllen = sizeof( ccmsg ); 580 #endif 570 581 571 582 if( recvmsg( fd, &msg, 0 ) != size ) 572 583 return NULL; 573 584 585 #ifndef NO_FD_PASSING 574 586 if( recv_fd ) 575 587 for( cmsg = CMSG_FIRSTHDR( &msg ); cmsg; cmsg = CMSG_NXTHDR( &msg, cmsg ) ) … … 586 598 */ 587 599 } 600 #endif 588 601 589 602 /* … … 758 771 msg.msg_iovlen = 1; 759 772 773 #ifndef NO_FD_PASSING 760 774 msg.msg_control = ccmsg; 761 775 msg.msg_controllen = sizeof( ccmsg ); … … 766 780 *(int*)CMSG_DATA( cmsg ) = send_fd; 767 781 msg.msg_controllen = cmsg->cmsg_len; 782 #endif 768 783 769 784 return sendmsg( fd, &msg, 0 ) == 6;
Note: See TracChangeset
for help on using the changeset viewer.