$OpenBSD: patch-src_proto_c,v 1.4 2005/10/27 21:47:28 sturm Exp $
--- src/proto.c.orig	Fri Jul 15 04:25:15 2005
+++ src/proto.c	Fri Oct 21 16:35:56 2005
@@ -133,14 +133,14 @@ if (!SKIPIDENTIFY)
    
    if ((strstr(hp->h_name,".") == 0) && (strlen(VDOMAIN) > 0))
       {
-      strcat(dnsname,".");
-      strcat(dnsname,VDOMAIN);
+      (void)strlcat(dnsname,".",sizeof(dnsname));
+      (void)strlcat(dnsname,VDOMAIN,sizeof(dnsname));
       } 
 #endif 
    }
 else
    {
-   strcat(dnsname,"skipident");
+   (void)strlcat(dnsname,"skipident",sizeof(dnsname));
    }
 
 user_ptr = getpwuid(getuid());
@@ -151,19 +151,19 @@ uname = user_ptr ? user_ptr->pw_name : "
 if ((strlen(VDOMAIN) > 0) && !IsIPV6Address(dnsname) && !strchr(dnsname,'.'))
    {
    Debug("Appending domain %s to %s\n",VDOMAIN,dnsname);
-   strcat(dnsname,".");
+   (void)strlcat(dnsname,".",sizeof(dnsname));
    strncat(dnsname,VDOMAIN,CF_MAXVARSIZE/2);
    }  
 
 if (strncmp(dnsname,localip,strlen(localip)) == 0)
    {
    /* Seems to be a bug in some resolvers that adds garbage, when it just returns the input */
-   strcpy(dnsname,localip);
+   (void)strlcpy(dnsname,localip,sizeof(dnsname));
    }
 
 if (strlen(dnsname) == 0)
    {
-   strcpy(dnsname,localip);
+   (void)strlcpy(dnsname,localip,sizeof(dnsname));
    }
 
 snprintf(sendbuff,CF_BUFSIZE-1,"CAUTH %s %s %s %d",localip,dnsname,uname,CFSIGNATURE);
