On 02/24/13 07:15, Mimi Zohar wrote: > Fix a build error when CONFIG_BLOCK is not enabled, by defining > a wrapper called blk_part_pack_uuid(). The wrapper returns > -EINVAL, when CONFIG_BLOCK is not defined. > > security/integrity/ima/ima_policy.c:538:4: error: implicit declaration > of function 'part_pack_uuid' [-Werror=implicit-function-declaration] > > Changleog v1: > - rename ima_part_pack_uuid() to blk_part_pack_uuid() > - resolve scripts/checkpatch.pl warnings > Changelog v0: > - fix UUID scripts/Lindent msgs > > Reported-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> > Reported-by: David Rientjes <rientjes@xxxxxxxxxx> > Signed-off-by: Mimi Zohar <zohar@xxxxxxxxxxxxxxxxxx> Acked-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> Thanks. > --- > include/linux/genhd.h | 10 ++++++++++ > security/integrity/ima/ima_policy.c | 11 ++++++----- > 2 files changed, 16 insertions(+), 5 deletions(-) > > diff --git a/include/linux/genhd.h b/include/linux/genhd.h > index 79b8bba..9f3c275 100644 > --- a/include/linux/genhd.h > +++ b/include/linux/genhd.h > @@ -231,6 +231,12 @@ static inline void part_pack_uuid(const u8 *uuid_str, u8 *to) > } > } > > +static inline int blk_part_pack_uuid(const u8 *uuid_str, u8 *to) > +{ > + part_pack_uuid(uuid_str, to); > + return 0; > +} > + > static inline int disk_max_parts(struct gendisk *disk) > { > if (disk->flags & GENHD_FL_EXT_DEVT) > @@ -718,6 +724,10 @@ static inline dev_t blk_lookup_devt(const char *name, int partno) > return devt; > } > > +static inline int blk_part_pack_uuid(const u8 *uuid_str, u8 *to) > +{ > + return -EINVAL; > +} > #endif /* CONFIG_BLOCK */ > > #endif /* _LINUX_GENHD_H */ > diff --git a/security/integrity/ima/ima_policy.c b/security/integrity/ima/ima_policy.c > index b27535a..399433a 100644 > --- a/security/integrity/ima/ima_policy.c > +++ b/security/integrity/ima/ima_policy.c > @@ -176,7 +176,7 @@ static bool ima_match_rules(struct ima_rule_entry *rule, > && rule->fsmagic != inode->i_sb->s_magic) > return false; > if ((rule->flags & IMA_FSUUID) && > - memcmp(rule->fsuuid, inode->i_sb->s_uuid, sizeof(rule->fsuuid))) > + memcmp(rule->fsuuid, inode->i_sb->s_uuid, sizeof(rule->fsuuid))) > return false; > if ((rule->flags & IMA_UID) && !uid_eq(rule->uid, cred->uid)) > return false; > @@ -530,14 +530,15 @@ static int ima_parse_rule(char *rule, struct ima_rule_entry *entry) > ima_log_string(ab, "fsuuid", args[0].from); > > if (memchr_inv(entry->fsuuid, 0x00, > - sizeof(entry->fsuuid))) { > + sizeof(entry->fsuuid))) { > result = -EINVAL; > break; > } > > - part_pack_uuid(args[0].from, entry->fsuuid); > - entry->flags |= IMA_FSUUID; > - result = 0; > + result = blk_part_pack_uuid(args[0].from, > + entry->fsuuid); > + if (!result) > + entry->flags |= IMA_FSUUID; > break; > case Opt_uid: > ima_log_string(ab, "uid", args[0].from); > -- ~Randy -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html