Merge branch 'turbostat' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux
[linux-2.6-microblaze.git] / include / linux / lsm_hooks.h
index 85a3016..a9b8ff5 100644 (file)
  *     changes on the process such as clearing out non-inheritable signal
  *     state.  This is called immediately after commit_creds().
  *
+ * Security hooks for mount using fs_context.
+ *     [See also Documentation/filesystems/mounting.txt]
+ *
+ * @fs_context_dup:
+ *     Allocate and attach a security structure to sc->security.  This pointer
+ *     is initialised to NULL by the caller.
+ *     @fc indicates the new filesystem context.
+ *     @src_fc indicates the original filesystem context.
+ * @fs_context_parse_param:
+ *     Userspace provided a parameter to configure a superblock.  The LSM may
+ *     reject it with an error and may use it for itself, in which case it
+ *     should return 0; otherwise it should return -ENOPARAM to pass it on to
+ *     the filesystem.
+ *     @fc indicates the filesystem context.
+ *     @param The parameter
+ *
  * Security hooks for filesystem operations.
  *
  * @sb_alloc_security:
@@ -1460,6 +1476,9 @@ union security_list_options {
        void (*bprm_committing_creds)(struct linux_binprm *bprm);
        void (*bprm_committed_creds)(struct linux_binprm *bprm);
 
+       int (*fs_context_dup)(struct fs_context *fc, struct fs_context *src_sc);
+       int (*fs_context_parse_param)(struct fs_context *fc, struct fs_parameter *param);
+
        int (*sb_alloc_security)(struct super_block *sb);
        void (*sb_free_security)(struct super_block *sb);
        void (*sb_free_mnt_opts)(void *mnt_opts);
@@ -1800,6 +1819,8 @@ struct security_hook_heads {
        struct hlist_head bprm_check_security;
        struct hlist_head bprm_committing_creds;
        struct hlist_head bprm_committed_creds;
+       struct hlist_head fs_context_dup;
+       struct hlist_head fs_context_parse_param;
        struct hlist_head sb_alloc_security;
        struct hlist_head sb_free_security;
        struct hlist_head sb_free_mnt_opts;