upgrade to linux 2.6.10-1.12_FC2
[linux-2.6.git] / net / unix / af_unix.c
index 5deed5c..c28632b 100644 (file)
@@ -190,18 +190,7 @@ static int unix_mkname(struct sockaddr_un * sunaddr, int len, unsigned *hashp)
                return -EINVAL;
        if (!sunaddr || sunaddr->sun_family != AF_UNIX)
                return -EINVAL;
-       if (sunaddr->sun_path[0])
-       {
-               /*
-                *      This may look like an off by one error but it is
-                *      a bit more subtle. 108 is the longest valid AF_UNIX
-                *      path for a binding. sun_path[108] doesn't as such
-                *      exist. However in kernel space we are guaranteed that
-                *      it is a valid memory location in our kernel
-                *      address buffer.
-                */
-               if (len > sizeof(*sunaddr))
-                       len = sizeof(*sunaddr);
+       if (sunaddr->sun_path[0]) {
                ((char *)sunaddr)[len]=0;
                len = strlen(sunaddr->sun_path)+1+sizeof(short);
                return len;