Allow servers with the same server and port to be part of multiple networks. This should make life much easier for znc users. Thanks to Tykling, Bazerka and znx.

git-svn-id: file:///var/www/svn.irssi.org/SVN/irssi/trunk@5125 dbcabf3a-b0e7-0310-adc4-f8d773084564
This commit is contained in:
Alexander Færøy 2010-03-21 20:06:10 +00:00 committed by ahf
commit e37be456cd
5 changed files with 29 additions and 26 deletions

View file

@ -352,15 +352,6 @@ SERVER_SETUP_REC *server_setup_find(const char *address, int port,
return server;
}
/* Find matching server from setup. Ports must match or NULL is returned. */
SERVER_SETUP_REC *server_setup_find_port(const char *address, int port)
{
SERVER_SETUP_REC *rec;
rec = server_setup_find(address, port, NULL);
return rec == NULL || rec->port != port ? NULL : rec;
}
static SERVER_SETUP_REC *server_setup_read(CONFIG_NODE *node)
{
SERVER_SETUP_REC *rec;
@ -375,14 +366,13 @@ static SERVER_SETUP_REC *server_setup_read(CONFIG_NODE *node)
return NULL;
port = config_node_get_int(node, "port", 0);
if (server_setup_find_port(server, port) != NULL) {
/* already exists - don't let it get there twice or
server reconnects will screw up! */
chatnet = config_node_get_str(node, "chatnet", NULL);
if (server_setup_find(server, port, chatnet) != NULL) {
return NULL;
}
rec = NULL;
chatnet = config_node_get_str(node, "chatnet", NULL);
chatnetrec = chatnet == NULL ? NULL : chatnet_find(chatnet);
if (chatnetrec == NULL && chatnet != NULL) {

View file

@ -35,8 +35,6 @@ server_create_conn(int chat_type, const char *dest, int port,
but fallback to any server with the same address. */
SERVER_SETUP_REC *server_setup_find(const char *address, int port,
const char *chatnet);
/* Find matching server from setup. Ports must match or NULL is returned. */
SERVER_SETUP_REC *server_setup_find_port(const char *address, int port);
void server_setup_add(SERVER_SETUP_REC *rec);
void server_setup_remove(SERVER_SETUP_REC *rec);