work around Ultrix problem: gethostbyname can return large h_length
authorEric Allman <eric@ucbvax.Berkeley.EDU>
Fri, 26 Nov 1993 03:23:24 +0000 (19:23 -0800)
committerEric Allman <eric@ucbvax.Berkeley.EDU>
Fri, 26 Nov 1993 03:23:24 +0000 (19:23 -0800)
SCCS-vsn: usr.sbin/sendmail/src/daemon.c 8.26
SCCS-vsn: usr.sbin/sendmail/src/udb.c 8.4

usr/src/usr.sbin/sendmail/src/daemon.c
usr/src/usr.sbin/sendmail/src/udb.c

index 4f01b16..2ea7b6e 100644 (file)
@@ -12,9 +12,9 @@
 
 #ifndef lint
 #ifdef DAEMON
 
 #ifndef lint
 #ifdef DAEMON
-static char sccsid[] = "@(#)daemon.c   8.25 (Berkeley) %G% (with daemon mode)";
+static char sccsid[] = "@(#)daemon.c   8.26 (Berkeley) %G% (with daemon mode)";
 #else
 #else
-static char sccsid[] = "@(#)daemon.c   8.25 (Berkeley) %G% (without daemon mode)";
+static char sccsid[] = "@(#)daemon.c   8.26 (Berkeley) %G% (without daemon mode)";
 #endif
 #endif /* not lint */
 
 #endif
 #endif /* not lint */
 
@@ -309,7 +309,7 @@ gothostent:
                  case AF_INET:
                        bcopy(hp->h_addr,
                                &addr.sin.sin_addr,
                  case AF_INET:
                        bcopy(hp->h_addr,
                                &addr.sin.sin_addr,
-                               hp->h_length);
+                               sizeof addr.sin.sin_addr);
                        break;
 #endif
 
                        break;
 #endif
 
@@ -438,7 +438,7 @@ gothostent:
                          case AF_INET:
                                bcopy(hp->h_addr_list[i++],
                                      &addr.sin.sin_addr,
                          case AF_INET:
                                bcopy(hp->h_addr_list[i++],
                                      &addr.sin.sin_addr,
-                                     hp->h_length);
+                                     sizeof addr.sin.sin_addr);
                                break;
 #endif
 
                                break;
 #endif
 
index 483cd80..b1ce2ee 100644 (file)
@@ -10,9 +10,9 @@
 
 #ifndef lint
 #ifdef USERDB
 
 #ifndef lint
 #ifdef USERDB
-static char sccsid [] = "@(#)udb.c     8.3 (Berkeley) %G% (with USERDB)";
+static char sccsid [] = "@(#)udb.c     8.4 (Berkeley) %G% (with USERDB)";
 #else
 #else
-static char sccsid [] = "@(#)udb.c     8.3 (Berkeley) %G% (without USERDB)";
+static char sccsid [] = "@(#)udb.c     8.4 (Berkeley) %G% (without USERDB)";
 #endif
 #endif
 
 #endif
 #endif
 
@@ -577,7 +577,7 @@ _udbx_init()
                                up->udb_addr.sin_family = h->h_addrtype;
                                bcopy(h->h_addr_list[0],
                                      (char *) &up->udb_addr.sin_addr,
                                up->udb_addr.sin_family = h->h_addrtype;
                                bcopy(h->h_addr_list[0],
                                      (char *) &up->udb_addr.sin_addr,
-                                     h->h_length);
+                                     sizeof up->udb_addr.sin_addr);
                                up->udb_addr.sin_port = UdbPort;
                                up->udb_timeout = UdbTimeout;
                                up++;
                                up->udb_addr.sin_port = UdbPort;
                                up->udb_timeout = UdbTimeout;
                                up++;