[PULL] Smack: Restore the smackfsdef mount option

Casey Schaufler casey at schaufler-ca.com
Tue May 28 19:43:12 UTC 2019


On 5/28/2019 12:02 PM, David Howells wrote:
> Casey Schaufler <casey at schaufler-ca.com> wrote:
>
>> James, this is a repair for a regression introduced in 5.1.
>> It should be pulled for 5.2 and added to 5.1.
>>
>> The following changes since commit 619ae03e922b65a1a5d4269ceae1e9e13a058d6b:
>>
>>   Smack: Fix kbuild reported build error (2019-04-30 14:13:32 -0700)
>>
>> are available in the git repository at:
>>
>>   https://github.com/cschaufler/next-smack.git smack-for-5.2-b
>>
>> for you to fetch changes up to a5765ce797070d046dc53ccceeb0ed304cb918eb:
>>
>>   Smack: Restore the smackfsdef mount option (2019-05-28 10:22:04 -0700)
> Can you hold this for the moment, please?

OK ...

> Note that there appears to be another problem by inspection of the code.  I
> think that smack_sb_eat_lsm_opts() strips the "smack" prefix off of the
> options, whereas smack_fs_context_parse_param() does not.
>
> This means that there's no need to do this:
>
> 	 static const struct fs_parameter_spec smack_param_specs[] = {
> 	+	fsparam_string("fsdef",		Opt_fsdefault),
> 		fsparam_string("fsdefault",	Opt_fsdefault),
> 		fsparam_string("fsfloor",	Opt_fsfloor),
> 		fsparam_string("fshat",		Opt_fshat),
>
> but that all the option names in that table *do* need prefixing with "smack".

I'm not sure I follow the logic, because "mount -o smackfsdefault=Pop"
does what I would expect it to.

> The way you enter the LSM is going to depend on whether
> generic_parse_monolithic() is called.  You're only going to enter this way if
> mount(2) is the syscall of entry and the filesystem doesn't override the
> ->parse_monolithic() option (none in the upstream kernel).

So you're saying that the code works for the mount(2) case,
but won't work for some other case? Are you planning a fix?
Will that fix include restoration of smackfsdef?

> David




More information about the Linux-security-module-archive mailing list