source: ipc.h @ a3d5766

Last change on this file since a3d5766 was 68b518d6, checked in by Wilmer van der Gaast <wilmer@…>, at 2006-05-26T09:03:38Z

Merging from main development tree.

  • Property mode set to 100644
File size: 2.1 KB
Line 
1  /********************************************************************\
2  * BitlBee -- An IRC to other IM-networks gateway                     *
3  *                                                                    *
4  * Copyright 2002-2004 Wilmer van der Gaast and others                *
5  \********************************************************************/
6
7/* IPC - communication between BitlBee processes                        */
8
9/*
10  This program is free software; you can redistribute it and/or modify
11  it under the terms of the GNU General Public License as published by
12  the Free Software Foundation; either version 2 of the License, or
13  (at your option) any later version.
14
15  This program is distributed in the hope that it will be useful,
16  but WITHOUT ANY WARRANTY; without even the implied warranty of
17  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  GNU General Public License for more details.
19
20  You should have received a copy of the GNU General Public License with
21  the Debian GNU/Linux distribution in /usr/share/common-licenses/GPL;
22  if not, write to the Free Software Foundation, Inc., 59 Temple Place,
23  Suite 330, Boston, MA  02111-1307  USA
24*/
25
26#define BITLBEE_CORE
27#include "bitlbee.h"
28
29
30struct bitlbee_child
31{
32        pid_t pid;
33        int ipc_fd;
34        gint ipc_inpa;
35       
36        char *host;
37        char *nick;
38        char *realname;
39};
40
41
42gboolean ipc_master_read( gpointer data, gint source, b_input_condition cond );
43gboolean ipc_child_read( gpointer data, gint source, b_input_condition cond );
44
45void ipc_master_free_one( struct bitlbee_child *child );
46void ipc_master_free_all();
47
48void ipc_to_master( char **cmd );
49void ipc_to_master_str( char *format, ... ) G_GNUC_PRINTF( 1, 2 );
50void ipc_to_children( char **cmd );
51void ipc_to_children_str( char *format, ... ) G_GNUC_PRINTF( 1, 2 );
52
53/* We need this function in inetd mode, so let's just make it non-static. */
54void ipc_master_cmd_rehash( irc_t *data, char **cmd );
55
56char *ipc_master_save_state();
57void ipc_master_set_statefile( char *fn );
58int ipc_master_load_state();
59int ipc_master_listen_socket();
60
61extern GSList *child_list;
Note: See TracBrowser for help on using the repository browser.