]> arthur.barton.de Git - ngircd-alex.git/blobdiff - src/ngircd/conn.c
- h_error wird nur noch ausgewertet, wenn vorhanden.
[ngircd-alex.git] / src / ngircd / conn.c
index efc189e78d2059ba5afc0c8c6520e0404453535e..7d2c4c6adb212f2a58c1c78050997c704b3e9968 100644 (file)
@@ -9,7 +9,7 @@
  * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste
  * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS.
  *
- * $Id: conn.c,v 1.59 2002/03/30 13:37:12 alex Exp $
+ * $Id: conn.c,v 1.62 2002/05/18 21:53:53 alex Exp $
  *
  * connect.h: Verwaltung aller Netz-Verbindungen ("connections")
  */
@@ -92,7 +92,10 @@ LOCAL RES_STAT *ResolveName( CHAR *Host );
 LOCAL VOID Do_ResolveAddr( struct sockaddr_in *Addr, INT w_fd );
 LOCAL VOID Do_ResolveName( CHAR *Host, INT w_fd );
 LOCAL VOID Read_Resolver_Result( INT r_fd );
+
+#ifdef h_errno
 LOCAL CHAR *Resolv_Error( INT H_Error );
+#endif
 
 
 LOCAL fd_set My_Listeners;
@@ -557,11 +560,7 @@ LOCAL BOOLEAN Handle_Write( CONN_ID Idx )
 
                /* Ergebnis des connect() ermitteln */
                len = sizeof( err );
-#ifdef SO_ERROR
                res = getsockopt( My_Connections[Idx].sock, SOL_SOCKET, SO_ERROR, &err, &len );
-#else
-               res = err = 0;
-#endif
                assert( len == sizeof( err ));
 
                /* Fehler aufgetreten? */
@@ -980,6 +979,7 @@ LOCAL VOID New_Server( INT Server, CONN_ID Idx )
                return;
        }
        Client_SetIntroducer( c, c );
+       Client_SetToken( c, TOKEN_OUTBOUND );
 
        /* Verbindung registrieren */
        My_Connections[Idx].sock = new_sock;
@@ -1157,7 +1157,11 @@ LOCAL VOID Do_ResolveAddr( struct sockaddr_in *Addr, INT w_fd )
        if( h ) strcpy( hostname, h->h_name );
        else
        {
-               Log_Resolver( LOG_WARNING, "Can't resolve address %s: code %s!", inet_ntoa( Addr->sin_addr ), Resolv_Error( h_errno ));
+#ifdef h_errno
+               Log_Resolver( LOG_WARNING, "Can't resolve address \"%s\": %s!", inet_ntoa( Addr->sin_addr ), Resolv_Error( h_errno ));
+#else
+               Log_Resolver( LOG_WARNING, "Can't resolve address \"%s\"!", inet_ntoa( Addr->sin_addr ));
+#endif 
                strcpy( hostname, inet_ntoa( Addr->sin_addr ));
        }
 
@@ -1192,7 +1196,11 @@ LOCAL VOID Do_ResolveName( CHAR *Host, INT w_fd )
        }
        else
        {
+#ifdef h_errno
                Log_Resolver( LOG_WARNING, "Can't resolve \"%s\": %s!", Host, Resolv_Error( h_errno ));
+#else
+               Log_Resolver( LOG_WARNING, "Can't resolve \"%s\"!", Host );
+#endif
                strcpy( ip, "" );
        }
 
@@ -1267,6 +1275,9 @@ LOCAL VOID Read_Resolver_Result( INT r_fd )
 } /* Read_Resolver_Result */
 
 
+
+#ifdef h_errno
+
 LOCAL CHAR *Resolv_Error( INT H_Error )
 {
        /* Fehlerbeschreibung fuer H_Error liefern */
@@ -1286,5 +1297,7 @@ LOCAL CHAR *Resolv_Error( INT H_Error )
        }
 } /* Resolv_Error */
 
+#endif
+
 
 /* -eof- */