static void chatnet_config_save(CHATNET_REC *chatnet) { CONFIG_NODE *node; node = iconfig_node_traverse("chatnets", TRUE); node = config_node_section(node, chatnet->name, NODE_TYPE_BLOCK); iconfig_node_clear(node); iconfig_node_set_str(node, "type", chat_protocol_find_id(chatnet->chat_type)->name); iconfig_node_set_str(node, "nick", chatnet->nick); iconfig_node_set_str(node, "username", chatnet->username); iconfig_node_set_str(node, "realname", chatnet->realname); iconfig_node_set_str(node, "host", chatnet->own_host); iconfig_node_set_str(node, "autosendcmd", chatnet->autosendcmd); signal_emit("chatnet saved", 2, chatnet, node); }
void *chatnet_save(CHATNET_REC *chatnet, void *parentnode) { CONFIG_NODE *node = parentnode; g_return_val_if_fail(parentnode != NULL, NULL); g_return_val_if_fail(chatnet != NULL, NULL); node = config_node_section(node, chatnet->name, NODE_TYPE_BLOCK); iconfig_node_clear(node); iconfig_node_set_str(node, "nick", chatnet->nick); iconfig_node_set_str(node, "username", chatnet->username); iconfig_node_set_str(node, "realname", chatnet->realname); iconfig_node_set_str(node, "host", chatnet->own_host); iconfig_node_set_str(node, "autosendcmd", chatnet->autosendcmd); return node; }
static void server_setup_save(SERVER_SETUP_REC *rec) { CONFIG_NODE *parent_node, *node; GSList *config_node; parent_node = iconfig_node_traverse("(servers", TRUE); /* Try to find this channel in the configuration */ config_node = g_slist_find_custom(parent_node->value, rec, (GCompareFunc)compare_server_setup); if (config_node != NULL) /* Let's update this server record */ node = config_node->data; else /* Create a brand-new server record */ node = iconfig_node_section(parent_node, NULL, NODE_TYPE_BLOCK); iconfig_node_clear(node); iconfig_node_set_str(node, "address", rec->address); iconfig_node_set_str(node, "chatnet", rec->chatnet); iconfig_node_set_int(node, "port", rec->port); iconfig_node_set_str(node, "password", rec->password); iconfig_node_set_bool(node, "use_ssl", rec->use_ssl); iconfig_node_set_str(node, "ssl_cert", rec->ssl_cert); iconfig_node_set_str(node, "ssl_pkey", rec->ssl_pkey); iconfig_node_set_str(node, "ssl_pass", rec->ssl_pass); iconfig_node_set_bool(node, "ssl_verify", rec->ssl_verify); iconfig_node_set_str(node, "ssl_cafile", rec->ssl_cafile); iconfig_node_set_str(node, "ssl_capath", rec->ssl_capath); iconfig_node_set_str(node, "ssl_ciphers", rec->ssl_ciphers); iconfig_node_set_str(node, "own_host", rec->own_host); iconfig_node_set_str(node, "family", rec->family == AF_INET6 ? "inet6" : rec->family == AF_INET ? "inet" : NULL); if (rec->autoconnect) iconfig_node_set_bool(node, "autoconnect", TRUE); if (rec->no_proxy) iconfig_node_set_bool(node, "no_proxy", TRUE); signal_emit("server setup saved", 2, rec, node); }
static void channel_setup_save(CHANNEL_SETUP_REC *channel) { CONFIG_NODE *parentnode, *node; int index; index = g_slist_index(setupchannels, channel); parentnode = iconfig_node_traverse("(channels", TRUE); node = config_node_index(parentnode, index); if (node == NULL) node = config_node_section(parentnode, NULL, NODE_TYPE_BLOCK); iconfig_node_clear(node); iconfig_node_set_str(node, "name", channel->name); iconfig_node_set_str(node, "chatnet", channel->chatnet); if (channel->autojoin) iconfig_node_set_bool(node, "autojoin", TRUE); iconfig_node_set_str(node, "password", channel->password); iconfig_node_set_str(node, "botmasks", channel->botmasks); iconfig_node_set_str(node, "autosendcmd", channel->autosendcmd); }
static void server_setup_save(SERVER_SETUP_REC *rec) { CONFIG_NODE *parentnode, *node; int index; index = g_slist_index(setupservers, rec); parentnode = iconfig_node_traverse("(servers", TRUE); node = config_node_nth(parentnode, index); if (node == NULL) node = config_node_section(parentnode, NULL, NODE_TYPE_BLOCK); iconfig_node_clear(node); iconfig_node_set_str(node, "address", rec->address); iconfig_node_set_str(node, "chatnet", rec->chatnet); iconfig_node_set_int(node, "port", rec->port); iconfig_node_set_str(node, "password", rec->password); iconfig_node_set_bool(node, "use_ssl", rec->use_ssl); iconfig_node_set_str(node, "ssl_tpm", rec->ssl_tpm); iconfig_node_set_str(node, "ssl_cert", rec->ssl_cert); iconfig_node_set_str(node, "ssl_pkey", rec->ssl_pkey); iconfig_node_set_bool(node, "ssl_verify", rec->ssl_verify); iconfig_node_set_str(node, "ssl_cafile", rec->ssl_cafile); iconfig_node_set_str(node, "ssl_capath", rec->ssl_capath); iconfig_node_set_str(node, "own_host", rec->own_host); iconfig_node_set_str(node, "family", rec->family == AF_INET6 ? "inet6" : rec->family == AF_INET ? "inet" : NULL); if (rec->autoconnect) iconfig_node_set_bool(node, "autoconnect", TRUE); if (rec->no_proxy) iconfig_node_set_bool(node, "no_proxy", TRUE); signal_emit("server setup saved", 2, rec, node); }