apparmor: fix error returns checks by making size a ssize_t
authorColin Ian King <colin.king@canonical.com>
Fri, 23 Mar 2018 23:34:22 +0000 (23:34 +0000)
committerJohn Johansen <john.johansen@canonical.com>
Sat, 24 Mar 2018 00:25:25 +0000 (17:25 -0700)
Currently variable size is a unsigned size_t, hence comparisons to
see if it is less than zero (for error checking) will always be
false.  Fix this by making size a ssize_t

Detected by CoverityScan, CID#1466080 ("Unsigned compared against 0")

Fixes: 8e51f9087f40 ("apparmor: Add support for attaching profiles via xattr, presence and value")
Signed-off-by: Colin Ian King <colin.king@canonical.com>
Signed-off-by: John Johansen <john.johansen@canonical.com>
security/apparmor/domain.c

index 57cc892..590b7e8 100644 (file)
@@ -314,7 +314,7 @@ static int aa_xattrs_match(const struct linux_binprm *bprm,
                           struct aa_profile *profile, unsigned int state)
 {
        int i;
-       size_t size;
+       ssize_t size;
        struct dentry *d;
        char *value = NULL;
        int value_size = 0, ret = profile->xattr_count;