Re: PythonSELinux binding problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jul 22, 2011 at 9:44 AM, Stephen Smalley <sds@xxxxxxxxxxxxx> wrote:
> On Thu, 2011-07-21 at 17:33 -0400, rarob@xxxxxxxxxxxxxxxxxxxxxx wrote:
>> Hi,
>>   I'm using the python selinux bindings to determine if SELinux is
>> disable/permissive/enforcing.  The following snippet of code works just
>> fine on RH5 and F10 regardless of the SELinux mode, but fails with an
>> error on F11/12/13 and RH6 if SELinux is disabled.
>>
>> $ python -c 'import selinux ; print selinux.security_getenforce()'
>>
>> Under RH5 and F10 I correctly get the -1/0/1 returns for
>> disabled/permissive/enforcing, as specified in the man pages for
>> 'security_getenforce'.  Under F11/12/13 and RH6 for permissive and
>> enforcing I get the correct return values, but if the system is in
>> disabled mode instead an OSError is thrown for 'No such file or
>> directory'.  I haven't look at the source for the underlying
>> security_getenforce() system call, but I suspect is is assuming that the
>> /selinux pseudo filesystem is populated (as in permissive/enforcing mode),
>> and is not handling the case where that pseudo filesystem is empty.
>>
>> For now I've got my python calls wrapped in try/except blocks treating any
>> exception as SELinux in disabled mode.
>>
>> I wasn't sure where the best place to log this as a bug is, either for the
>> libselinux-python package or libselinux itself.
>
> I don't know why this would have ever worked, as security_getenforce()
> has always returned -1 with errno ENOENT if there is no selinuxfs mount.
> Maybe the older python bindings handled this error condition?  The
> correct test for enabled/disabled is selinux.is_selinux_enabled(), and
> that should be checked prior to calling security_getenforce().

Looks like the change is in my tree (but not upstream)  [not the title
is slightly wrong]

http://git.infradead.org/users/eparis/selinux-userspace.git/commitdiff/958217e94829487815ea3b62b264aa18b466ce4a


--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@xxxxxxxxxxxxx with
the words "unsubscribe selinux" without quotes as the message.


[Index of Archives]     [Selinux Refpolicy]     [Linux SGX]     [Fedora Users]     [Fedora Desktop]     [Yosemite Photos]     [Yosemite Camping]     [Yosemite Campsites]     [KDE Users]     [Gnome Users]

  Powered by Linux