"MODSIGN: Provide module signing public keys to the kernel" causes a build
error when CONFIG_UIDGID_STRICT_TYPE_CHECKS is enabled:
kernel/modsign_pubkey.c: In function 'module_verify_init':
kernel/modsign_pubkey.c:47: error: incompatible type for argument 3 of 'key_alloc'
include/linux/key.h:195: note: expected 'kuid_t' but argument is of type 'int'
kernel/modsign_pubkey.c:47: error: incompatible type for argument 4 of 'key_alloc'
include/linux/key.h:195: note: expected 'kgid_t' but argument is of type 'int'
Cast the parameters accordingly.
Signed-off-by: David Rientjes <rientjes@google.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
pr_notice("Initialise module verification\n");
modsign_keyring = key_alloc(&key_type_keyring, ".module_sign",
- 0, 0, current_cred(),
+ KUIDT_INIT(0), KGIDT_INIT(0),
+ current_cred(),
(KEY_POS_ALL & ~KEY_POS_SETATTR) |
KEY_USR_VIEW | KEY_USR_READ,
KEY_ALLOC_NOT_IN_QUOTA);