Re: [RFC] change policy loading to initramfs

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

 



On 1/24/08 11:11 AM, "Bill Nottingham" <notting@xxxxxxxxxx> wrote:

> Stephen Smalley (sds@xxxxxxxxxxxxx) said:
>> Hmm...Chad Sellers was working on similar support for Ubuntu, but did it
>> by adding a -i option to the load_policy program to perform an initial
>> policy load so that you can just execute it from a script rather than
>> requiring a direct patch to nash or anything else.  cc'ing him.  The
>> load_policy -i support is upstream and should be in Fedora devel /
>> rawhide too.
> 
> This would still need to be done chroot()ed into the system (there's no
> way to set the base path for filename resoution), correct?
> 
Yes, I have to chroot to make this work. The current working initramfs
script that I've been using in Ubuntu looks like this (at least the
important parts):

set +e
chroot /root /usr/sbin/load_policy -i
RET=$?
if [ $RET -eq 3 ]; then echo "SELinux policy load failed and enforcing mode
requested, halting now"; kill -INT 1;
elif [ $RET -ne 0 ]; then echo "SELinux policy load failed, continuing";
fi

So, I just call load_policy -i from a chroot, and then save off the return
value. load_policy -i has a separate return value (3) if the system should
halt (i.e. enforcing requested but policy load failed). If that occurs, I
kill the initramfs init process. Note that Ubuntu uses busybox init for it's
initrd, which seems quite buggy when it comes to signal handling. It
apparently ignores SIGKILL, but dies on SIGINT. Eventually I plan to debug
this further to figure out why this is the case and send a patch to the
busybox guys, but I haven't had time yet.


----------------------
Chad Sellers
csellers@xxxxxxxxxx
http://www.tresys.com

 

--
fedora-selinux-list mailing list
fedora-selinux-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/fedora-selinux-list

[Index of Archives]     [Fedora Users]     [Fedora Desktop]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Campsites]     [KDE Users]     [Gnome Users]

  Powered by Linux