if (channel->ch_status == IPC_DISCONNECT && cib_client != NULL) {
if (channel->ch_status != IPC_CONNECT && cib_client != NULL) {
cib_process_disconnect(IPC_Channel *channel, cib_client_t *cib_client){	if (channel->ch_status == IPC_DISCONNECT && cib_client != NULL) {		crm_info("Cleaning up after %s channel disconnect from client (%p) %s",			 cib_client->channel_name, cib_client,			 crm_str(cib_client->id));		if(cib_client->id != NULL) {			g_hash_table_remove(client_list, cib_client->id);		}		if(cib_client->source != NULL) {			crm_devel("deleting the IPC Channel"); 			G_main_del_IPC_Channel(cib_client->source);			cib_client->source = NULL;		}				crm_devel("Freeing the cib client %s", crm_str(cib_client->id));#if 0		/* todo - put this back in once i recheck its safe */ 		crm_free(cib_client->callback_id);  		crm_free(cib_client->name);  		crm_free(cib_client->id);#endif  		crm_free(cib_client);		crm_devel("Freed the cib client");		return FALSE;	} else if (channel->ch_status == IPC_DISCONNECT) {		crm_warn("Unknown client disconnected");		return FALSE;	}	return TRUE;}