$OpenBSD: patch-src_ifconf_c,v 1.1 2004/06/17 11:21:43 sturm Exp $
--- src/ifconf.c.orig	2004-06-10 10:50:04.000000000 -0400
+++ src/ifconf.c	2004-06-10 13:33:06.000000000 -0400
@@ -113,7 +113,7 @@ if (vbroadcast[0] == '\0')
    return;
    }
 
-strcpy(IFR.ifr_name,vifdev);
+(void)strlcpy(IFR.ifr_name,vifdev,sizeof(IFR.ifr_name));
 IFR.ifr_addr.sa_family = AF_INET;
 
 if ((sk = socket(AF_INET,SOCK_DGRAM,IPPROTO_IP)) == -1)
@@ -129,7 +129,7 @@ if (ioctl(sk,SIOCGIFFLAGS, (caddr_t) &IF
    }
 
 flags = IFR.ifr_flags;
-strcpy(IFR.ifr_name,vifdev);                   /* copy this each time */
+(void)strlcpy(IFR.ifr_name,vifdev,sizeof(IFR.ifr_name));                   /* copy this each time */
  
 if (ioctl(sk,SIOCGIFMETRIC, (caddr_t) &IFR) == -1)   /* Get the routing priority */
    {
@@ -174,7 +174,7 @@ else
    Verbose("Address given by nameserver: %s\n",inet_ntoa(inaddr));
    }
 
-strcpy(IFR.ifr_name,vifdev);
+(void)strlcpy(IFR.ifr_name,vifdev,sizeof(IFR.ifr_name));
 
 if (ioctl(sk,SIOCGIFADDR, (caddr_t) &IFR) == -1)   /* Get the device status flags */
    {
@@ -211,7 +211,7 @@ netmask.sin_addr = ((struct sockaddr_in 
 
 Verbose("Found netmask: %s\n",inet_ntoa(netmask.sin_addr));
 
-strcpy(VBUFF,inet_ntoa(netmask.sin_addr));
+(void)strlcpy(VBUFF,inet_ntoa(netmask.sin_addr),sizeof(VBUFF));
 
 if (strcmp(VBUFF,vnetmask))
    {
@@ -225,7 +225,7 @@ if (ioctl(sk,SIOCGIFBRDADDR, (caddr_t) &
    }
 
 sin = (struct sockaddr_in *) &IFR.ifr_addr;
-strcpy(VBUFF,inet_ntoa(sin->sin_addr));
+(void)strlcpy(VBUFF,inet_ntoa(sin->sin_addr),sizeof(VBUFF));
 
 Verbose("Found broadcast address: %s\n",inet_ntoa(sin->sin_addr));
 
@@ -287,7 +287,7 @@ else
 
 /* broadcast addr */
 
-strcpy(IFR.ifr_name,vifdev);
+(void)strlcpy(IFR.ifr_name,vifdev,sizeof(IFR.ifr_name));
 broadcast.sin_addr.s_addr = inet_addr(VNUMBROADCAST);
 IFR.ifr_addr = *((struct sockaddr *) &broadcast);
 sin = (struct sockaddr_in *) &IFR.ifr_addr;
@@ -345,7 +345,7 @@ ba = broadcast / (256 * 256 * 256);
 bb = (broadcast / (256 * 256)) % 256;
 bc = broadcast / (256) % 256;
 bd = broadcast % 256;
-sprintf(VNUMBROADCAST,"%u.%u.%u.%u",ba,bb,bc,bd);
+(void)snprintf(VNUMBROADCAST,sizeof(VNUMBROADCAST),"%u.%u.%u.%u",ba,bb,bc,bd);
 }
 
 /****************************************************************/
