g_main_set_poll_func(cl_glibpoll); ipc_set_pollfunc(cl_poll);
init_server_ipc_comms(const char *child,		      gboolean (*channel_client_connect)(IPC_Channel *newclient, gpointer user_data),		      void (*channel_input_destroy)(gpointer user_data)){    FNIN();    CRM_DEBUG("Init IPC Comms");    /* the clients wait channel is the other source of events.     * This source delivers the clients connection events.     * listen to this source at a relatively lower priority.     */        char    commpath[FIFO_LEN];    sprintf(commpath, WORKING_DIR "/%s.fifo", child);    IPC_WaitConnection *wait_ch;    wait_ch = wait_channel_init(commpath);    if(wait_ch == NULL) FNRET(1);    G_main_add_IPC_WaitConnection(G_PRIORITY_LOW,				  wait_ch,				  NULL,				  FALSE,				  channel_client_connect,				  wait_ch, // user data passed to ??				  channel_input_destroy);    cl_log(LOG_DEBUG, "Listening on: %s", commpath);    /*     if (!usenormalpoll) { */    g_main_set_poll_func(cl_glibpoll);    ipc_set_pollfunc(cl_poll); /*     } */    FNRET(0);}