From: Steve Dickson Date: Sat, 17 Nov 2012 13:50:09 +0000 (-0500) Subject: svcgssd: Encryption types not being parsed correctly X-Git-Tag: debian/1%1.2.8-1~11^2^2~55 X-Git-Url: https://git.decadent.org.uk/gitweb/?a=commitdiff_plain;h=e07913c2c5e4dc5e406c2cb12cf78150cab3d95a;p=nfs-utils.git svcgssd: Encryption types not being parsed correctly When svcgssd reads the supported encrytion types from the kernel, they are prefixed with a 'enctypes='. That prefix has to be ignored to correctly parse the rest of the types. Signed-off-by: Steve Dickson --- diff --git a/utils/gssd/svcgssd_krb5.c b/utils/gssd/svcgssd_krb5.c index 6c34faf..1d44d34 100644 --- a/utils/gssd/svcgssd_krb5.c +++ b/utils/gssd/svcgssd_krb5.c @@ -38,6 +38,7 @@ #include #include +#include #include #include @@ -98,6 +99,12 @@ parse_enctypes(char *enctypes) if (n == 0) return ENOENT; + /* Skip pass any non digits */ + while (*enctypes && isdigit(*enctypes) == 0) + enctypes++; + if (*enctypes == '\0') + return EINVAL; + /* Allocate space for enctypes array */ if ((parsed_enctypes = (int *) calloc(n, sizeof(int))) == NULL) { return ENOMEM;