Просмотр исходного кода

* Fixed server connect over proxy

svn: 1192
Bryan Drewery 22 лет назад
Родитель
Сommit
3720fc51f4
3 измененных файлов с 8 добавлено и 8 удалено
  1. 1 1
      Makefile.in
  2. 1 0
      src/mod/server.mod/server.c
  3. 6 7
      src/mod/server.mod/servmsg.c

+ 1 - 1
Makefile.in

@@ -35,7 +35,7 @@ STRIP = @STRIP@
 #LIBS = @LIBS@ @ZLIB@ @SSL@ @RESLIB@
 #LIBS = @LIBS@ @ZLIB@ @SSL@ @RESLIB@
 LIBS = @LIBS@ @ZLIB@ @RESLIB@
 LIBS = @LIBS@ @ZLIB@ @RESLIB@
 
 
-DEBCFLAGS = -DDEBUG_ASSERT -DDEBUG_MEM -g3 -ggdb3
+DEBCFLAGS = -DDEBUG_ASSERT -DDEBUG_MEM -Dinline= -g3 -ggdb3
 CFLGS = -fno-strict-aliasing -W -Wformat \
 CFLGS = -fno-strict-aliasing -W -Wformat \
 -Wshadow -Wnested-externs -Wno-format-y2k \
 -Wshadow -Wnested-externs -Wno-format-y2k \
 -Wlarger-than-2048 -Wpointer-arith -Wcast-align \
 -Wlarger-than-2048 -Wpointer-arith -Wcast-align \

+ 1 - 0
src/mod/server.mod/server.c

@@ -33,6 +33,7 @@ int servidx;		/* idx of server */
 char newserver[121] = "";	/* new server? */
 char newserver[121] = "";	/* new server? */
 int newserverport;		/* new server port? */
 int newserverport;		/* new server port? */
 char newserverpass[121] = "";	/* new server password? */
 char newserverpass[121] = "";	/* new server password? */
+static char serverpass[121] = "";
 static time_t trying_server;	/* trying to connect to a server right now? */
 static time_t trying_server;	/* trying to connect to a server right now? */
 static int curserv;		/* current position in server list: */
 static int curserv;		/* current position in server list: */
 int flud_thr;		/* msg flood threshold */
 int flud_thr;		/* msg flood threshold */

+ 6 - 7
src/mod/server.mod/servmsg.c

@@ -1051,6 +1051,11 @@ static void server_activity(int idx, char *msg, int len)
     strcpy(dcc[idx].nick, "(server)");
     strcpy(dcc[idx].nick, "(server)");
     putlog(LOG_SERV, "*", "Connected to %s", dcc[idx].host);
     putlog(LOG_SERV, "*", "Connected to %s", dcc[idx].host);
 
 
+    if (serverpass[0])
+      dprintf(DP_MODE, "PASS %s\n", serverpass);
+    dprintf(DP_MODE, "NICK %s\n", botname);
+    dprintf(DP_MODE, "USER %s localhost %s :%s\n", botuser, dcc[idx].host, botrealname);
+
     trying_server = 0;
     trying_server = 0;
     /*
     /*
     servidx = idx;
     servidx = idx;
@@ -1441,11 +1446,9 @@ static void server_resolve_failure(int idx)
 
 
 static void server_resolve_success(int idx)
 static void server_resolve_success(int idx)
 {
 {
-  char pass[121] = "";
-
   resolvserv = 0;
   resolvserv = 0;
   dcc[idx].addr = dcc[idx].u.dns->ip;
   dcc[idx].addr = dcc[idx].u.dns->ip;
-  strcpy(pass, dcc[idx].u.dns->cbuf);
+  strcpy(serverpass, dcc[idx].u.dns->cbuf);
   changeover_dcc(idx, &SERVER_SOCKET, 0);
   changeover_dcc(idx, &SERVER_SOCKET, 0);
   identd_open();
   identd_open();
 #ifdef USE_IPV6
 #ifdef USE_IPV6
@@ -1472,10 +1475,6 @@ static void server_resolve_success(int idx)
     /* Start alternate nicks from the beginning */
     /* Start alternate nicks from the beginning */
     altnick_char = 0;
     altnick_char = 0;
 
 
-    if (pass[0]) 
-      dprintf(DP_MODE, "PASS %s\n", pass);
-    dprintf(DP_MODE, "NICK %s\n", botname);
-    dprintf(DP_MODE, "USER %s localhost %s :%s\n", botuser, dcc[idx].host, botrealname);
     /* Wait for async result now */
     /* Wait for async result now */
   }
   }
 }
 }