Go to the source code of this file.
Functions | |
void | connect_to_next_server () |
void | kill_server (const char *reason) |
void connect_to_next_server | ( | ) |
Definition at line 44 of file servsock.c.
References _, current_server, egg_connect(), server::host, LOG_MISC, LOG_SERV, NULL, server::pass, server::port, putlog(), server_config, server_get_next, sockbuf_set_handler(), and str_redup().
00044 { 00045 server_t *serv; 00046 00047 serv = server_get_next(); 00048 if (!serv) { 00049 putlog(LOG_MISC, "*", _("Error connecting to next server: no servers are defined!")); 00050 return; 00051 } 00052 00053 str_redup(¤t_server.server_host, serv->host); 00054 str_redup(¤t_server.server_self, serv->host); 00055 str_redup(¤t_server.pass, serv->pass); 00056 current_server.strcmp = strcasecmp; 00057 if (!server_config.fake005) server_config.fake005 = strdup(":fakeserver 005 fakenick MODES=3 MAXCHANNELS=10 MAXBANS=100 NICKLEN=9 TOPICLEN=307 KICKLEN=307 CHANTYPES=#& PREFIX=(ov)@+ NETWORK=fakenetwork CASEMAPPING=rfc1459 CHANMODES=b,k,l,imnprst :are available on this server"); 00058 00059 if (serv->port) current_server.port = serv->port; 00060 else current_server.port = server_config.default_port; 00061 00062 putlog(LOG_SERV, "*", _("Connecting to %s (%d)."), current_server.server_host, current_server.port); 00063 current_server.idx = egg_connect(current_server.server_host, current_server.port, server_config.connect_timeout); 00064 if (current_server.idx < 0) { 00065 putlog(LOG_SERV, "*", _("Error connecting to server.")); 00066 } 00067 sockbuf_set_handler(current_server.idx, &server_handler, NULL, NULL); 00068 }
void kill_server | ( | const char * | reason | ) |
Definition at line 71 of file servsock.c.
References current_server, disconnect_server(), printserv, and SERVER_NOQUEUE.
00072 { 00073 if (reason && (current_server.idx > -1)) printserv(SERVER_NOQUEUE, "QUIT :%s\r\n", reason); 00074 disconnect_server(); 00075 }