[patch 1/12] lsm stacking v0.2: don't default to dummy_##hook

serue
2005-06-30T19:48:52Z

When stacking multiple LSMs, we do not want hooks which are undefined to
be substituted with the dummy_##hook.

Signed-off-by: Serge Hallyn <serue@us.ibm.com>
---
security.c | 12 ++++++------
1 files changed, 6 insertions(+), 6 deletions(-)

Index: linux-2.6.13-rc1/security/security.c
===================================================================
--- linux-2.6.13-rc1.orig/security/security.c 2005-06-30 14:02:59.000000000 -0500
+++ linux-2.6.13-rc1/security/security.c 2005-06-30 14:03:54.000000000 -0500
@@ -81,15 +81,15 @@ int __init security_init(void)
*/
int register_security(struct security_operations *ops)
{
+ if (security_ops != &dummy_security_ops)
+ return -EAGAIN;
+
if (verify(ops)) {
printk(KERN_DEBUG "%s could not verify "
"security_operations structure.\n", __FUNCTION__);
return -EINVAL;
}

- if (security_ops != &dummy_security_ops)
- return -EAGAIN;
-
security_ops = ops;

return 0;
@@ -134,9 +134,9 @@ int unregister_security(struct security_
*/
int mod_reg_security(const char *name, struct security_operations *ops)
{
- if (verify(ops)) {
- printk(KERN_INFO "%s could not verify "
- "security operations.\n", __FUNCTION__);
+ if (!ops) {
+ printk(KERN_INFO "%s received NULL security operations",
+ __FUNCTION__);
return -EINVAL;
}