Message ID | 1735b3a4-2792-0ce4-3bf4-94fee5b50ff6@infradead.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Randy Dunlap <rdunlap@infradead.org> wrote: > Since this header is in "include/uapi/linux/", apparently people > want to use it in userspace programs -- even in C++ ones. > However, the header uses a C++ reserved keyword ("private"), > so change that to "dh_private" instead to allow the header file > to be used in C++ userspace. > > Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=191051 Ugh. Yeah. This is a UAPI breaker, but I think we have to do it, despite it being 2 years old. Maybe wrap that element in a #ifdef so it's still allowed in C? cc'ing Mat Martineau as he's the originator of the structure. David -- To unsubscribe from this list: send the line "unsubscribe linux-security-module" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Hi, [This is an automated email] This commit has been processed because it contains a "Fixes:" tag, fixing commit: . The bot has also determined it's probably a bug fixing patch. (score: 15.7018) The bot has tested the following trees: v4.16.1, v4.15.16, v4.14.33, v4.9.93, v4.4.127. v4.16.1: Build OK! v4.15.16: Build OK! v4.14.33: Build OK! v4.9.93: Failed to apply! Possible dependencies: 7cbe0932c2f2 ("KEYS: Convert KEYCTL_DH_COMPUTE to use the crypto KPP API") v4.4.127: Failed to apply! Possible dependencies: 7cbe0932c2f2 ("KEYS: Convert KEYCTL_DH_COMPUTE to use the crypto KPP API") ddbb41148724 ("KEYS: Add KEYCTL_DH_COMPUTE command") -- Thanks, Sasha-- To unsubscribe from this list: send the line "unsubscribe linux-security-module" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Tue, 10 Apr 2018, David Howells wrote: > Randy Dunlap <rdunlap@infradead.org> wrote: > >> Since this header is in "include/uapi/linux/", apparently people >> want to use it in userspace programs -- even in C++ ones. >> However, the header uses a C++ reserved keyword ("private"), >> so change that to "dh_private" instead to allow the header file >> to be used in C++ userspace. >> >> Fixes: https://bugzilla.kernel.org/show_bug.cgi?id=191051 > > Ugh. Yeah. This is a UAPI breaker, but I think we have to do it, despite it > being 2 years old. Maybe wrap that element in a #ifdef so it's still allowed > in C? > > cc'ing Mat Martineau as he's the originator of the structure. I agree with David's assessment. The keyctl() system call wrapper is implemented in libkeyutils, which may reduce the need for the proposed ifdef. libkeyutils and its users don't require any updates if this patch is merged because it has its own keyword-free structure definition. -- Mat Martineau Intel OTC -- To unsubscribe from this list: send the line "unsubscribe linux-security-module" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
--- lnx-416.orig/include/uapi/linux/keyctl.h +++ lnx-416/include/uapi/linux/keyctl.h @@ -65,7 +65,7 @@ /* keyctl structures */ struct keyctl_dh_params { - __s32 private; + __s32 dh_private; __s32 prime; __s32 base; }; --- lnx-416.orig/security/keys/dh.c +++ lnx-416/security/keys/dh.c @@ -307,7 +307,7 @@ long __keyctl_dh_compute(struct keyctl_d } dh_inputs.g_size = dlen; - dlen = dh_data_from_key(pcopy.private, &dh_inputs.key); + dlen = dh_data_from_key(pcopy.dh_private, &dh_inputs.key); if (dlen < 0) { ret = dlen; goto out2;