X-Git-Url: http://git.monstr.eu/?a=blobdiff_plain;f=security%2Fsmack%2Fsmackfs.c;h=3a75d2a8f51786f9edece8c8a1dacddbc208fa0e;hb=49ec114a6e62d8d320037ce71c1aaf9650b3cafd;hp=22ded2c26089c10610f99c6f91c0d7dc500e0a88;hpb=63dcd69d9b497c045c4169cddc6a24e1a7428f88;p=linux-2.6-microblaze.git diff --git a/security/smack/smackfs.c b/security/smack/smackfs.c index 22ded2c26089..3a75d2a8f517 100644 --- a/security/smack/smackfs.c +++ b/security/smack/smackfs.c @@ -380,7 +380,7 @@ static int smk_parse_rule(const char *data, struct smack_parsed_rule *rule, * @data: string to be parsed, null terminated * @rule: Will be filled with Smack parsed rule * @import: if non-zero, import labels - * @tokens: numer of substrings expected in data + * @tokens: number of substrings expected in data * * Returns number of processed bytes on success, -ERRNO on failure. */ @@ -855,6 +855,8 @@ static ssize_t smk_set_cipso(struct file *file, const char __user *buf, if (format == SMK_FIXED24_FMT && (count < SMK_CIPSOMIN || count > SMK_CIPSOMAX)) return -EINVAL; + if (count > PAGE_SIZE) + return -EINVAL; data = memdup_user_nul(buf, count); if (IS_ERR(data))