Pull thinkpad-2.6.24 into release branch
[sfrench/cifs-2.6.git] / kernel / sysctl.c
index 3a1744fed2b68d589da4cbf4e5f088e652066262..0deed82a61568d6660a7f4ee625c490ffecffcc5 100644 (file)
@@ -2620,6 +2620,10 @@ static int deprecated_sysctl_warning(struct __sysctl_args *args)
        int name[CTL_MAXNAME];
        int i;
 
+       /* Check args->nlen. */
+       if (args->nlen < 0 || args->nlen > CTL_MAXNAME)
+               return -ENOTDIR;
+
        /* Read in the sysctl name for better debug message logging */
        for (i = 0; i < args->nlen; i++)
                if (get_user(name[i], args->name + i))