diff options
| author | John Johansen <john.johansen@canonical.com> | 2018-05-02 00:38:52 -0700 | 
|---|---|---|
| committer | John Johansen <john.johansen@canonical.com> | 2018-05-02 00:38:52 -0700 | 
| commit | 552c69b36ebd966186573b9c7a286b390935cce1 (patch) | |
| tree | 43ae55082805c8e7f900a63197d21de36937de16 /scripts/gcc-plugins/randomize_layout_plugin.c | |
| parent | 588558eb6d0e0b6edfa65a67e906c2ffeba63ff1 (diff) | |
| parent | 6da6c0db5316275015e8cc2959f12a17584aeb64 (diff) | |
Merge tag 'v4.17-rc3' into apparmor-next
Linux v4.17-rc3
Merge in v4.17 for LSM updates
Signed-off-by: John Johansen <john.johansen@canonical.com>
Diffstat (limited to 'scripts/gcc-plugins/randomize_layout_plugin.c')
| -rw-r--r-- | scripts/gcc-plugins/randomize_layout_plugin.c | 79 | 
1 files changed, 23 insertions, 56 deletions
| diff --git a/scripts/gcc-plugins/randomize_layout_plugin.c b/scripts/gcc-plugins/randomize_layout_plugin.c index 0073af326449..6d5bbd31db7f 100644 --- a/scripts/gcc-plugins/randomize_layout_plugin.c +++ b/scripts/gcc-plugins/randomize_layout_plugin.c @@ -52,8 +52,8 @@ static const struct whitelist_entry whitelist[] = {  	{ "net/unix/af_unix.c", "unix_skb_parms", "char" },  	/* big_key payload.data struct splashing */  	{ "security/keys/big_key.c", "path", "void *" }, -	/* walk struct security_hook_heads as an array of struct list_head */ -	{ "security/security.c", "list_head", "security_hook_heads" }, +	/* walk struct security_hook_heads as an array of struct hlist_head */ +	{ "security/security.c", "hlist_head", "security_hook_heads" },  	{ }  }; @@ -580,68 +580,35 @@ static void finish_type(void *event_data, void *data)  	return;  } -static struct attribute_spec randomize_layout_attr = { -	.name		= "randomize_layout", -	// related to args -	.min_length	= 0, -	.max_length	= 0, -	.decl_required	= false, -	// need type declaration -	.type_required	= true, -	.function_type_required = false, -	.handler		= handle_randomize_layout_attr, -#if BUILDING_GCC_VERSION >= 4007 -	.affects_type_identity  = true -#endif -}; +static struct attribute_spec randomize_layout_attr = { }; +static struct attribute_spec no_randomize_layout_attr = { }; +static struct attribute_spec randomize_considered_attr = { }; +static struct attribute_spec randomize_performed_attr = { }; -static struct attribute_spec no_randomize_layout_attr = { -	.name		= "no_randomize_layout", -	// related to args -	.min_length	= 0, -	.max_length	= 0, -	.decl_required	= false, -	// need type declaration -	.type_required	= true, -	.function_type_required = false, -	.handler		= handle_randomize_layout_attr, +static void register_attributes(void *event_data, void *data) +{ +	randomize_layout_attr.name		= "randomize_layout"; +	randomize_layout_attr.type_required	= true; +	randomize_layout_attr.handler		= handle_randomize_layout_attr;  #if BUILDING_GCC_VERSION >= 4007 -	.affects_type_identity  = true +	randomize_layout_attr.affects_type_identity = true;  #endif -}; -static struct attribute_spec randomize_considered_attr = { -	.name		= "randomize_considered", -	// related to args -	.min_length	= 0, -	.max_length	= 0, -	.decl_required	= false, -	// need type declaration -	.type_required	= true, -	.function_type_required = false, -	.handler		= handle_randomize_considered_attr, +	no_randomize_layout_attr.name		= "no_randomize_layout"; +	no_randomize_layout_attr.type_required	= true; +	no_randomize_layout_attr.handler	= handle_randomize_layout_attr;  #if BUILDING_GCC_VERSION >= 4007 -	.affects_type_identity  = false +	no_randomize_layout_attr.affects_type_identity = true;  #endif -}; -static struct attribute_spec randomize_performed_attr = { -	.name		= "randomize_performed", -	// related to args -	.min_length	= 0, -	.max_length	= 0, -	.decl_required	= false, -	// need type declaration -	.type_required	= true, -	.function_type_required = false, -	.handler		= handle_randomize_performed_attr, -#if BUILDING_GCC_VERSION >= 4007 -	.affects_type_identity  = false -#endif -}; +	randomize_considered_attr.name		= "randomize_considered"; +	randomize_considered_attr.type_required	= true; +	randomize_considered_attr.handler	= handle_randomize_considered_attr; + +	randomize_performed_attr.name		= "randomize_performed"; +	randomize_performed_attr.type_required	= true; +	randomize_performed_attr.handler	= handle_randomize_performed_attr; -static void register_attributes(void *event_data, void *data) -{  	register_attribute(&randomize_layout_attr);  	register_attribute(&no_randomize_layout_attr);  	register_attribute(&randomize_considered_attr); | 
