$OpenBSD$
--- common/sock_any.c.orig	Thu Jan  5 14:56:59 2006
+++ common/sock_any.c	Thu Jan  5 14:58:35 2006
@@ -125,7 +125,7 @@ int sock_any_pton(const char* addr, stru
     if(l < IPV4_MIN || l > IPV4_MAX)
       break;
       
-    strcpy(buf, addr);
+    strlcpy(buf, addr, sizeof(buf));
         
     /* Find the last set that contains just numbers */
     l = strspn(buf, IPV4_CHARS);
@@ -182,7 +182,7 @@ int sock_any_pton(const char* addr, stru
       addr++;
     }
       
-    strcpy(buf, addr);
+    strlcpy(buf, addr, sizeof(buf));
         
     /* Find the last set that contains just numbers */
     l = strspn(buf, IPV6_CHARS);
@@ -234,7 +234,7 @@ int sock_any_pton(const char* addr, stru
       break;
 
     any->s.un.sun_family = AF_UNIX;
-    strcpy(any->s.un.sun_path, addr);
+    strlcpy(any->s.un.sun_path, addr, l);
      
     any->namelen = sizeof(any->s.un) - (sizeof(any->s.un.sun_path) - l);
     return AF_UNIX;
@@ -256,7 +256,7 @@ int sock_any_pton(const char* addr, stru
     if(strcspn(addr, " /\\") != l)
       break;
       
-    strcpy(buf, addr);
+    strlcpy(buf, addr, sizeof(buf));
         
     /* Find the last set that contains just numbers */
     t = strchr(buf, ':');
@@ -317,7 +317,7 @@ int sock_any_ntop(const struct sockaddr_
       return -1;
     }
     
-    strcpy(addr, any->s.un.sun_path);
+    strlcpy(addr, any->s.un.sun_path, len);
     break;  
     
   case AF_INET:
