2 * Stub functions for the default security function pointers in case no
3 * security model is loaded.
5 * Copyright (C) 2001 WireX Communications, Inc <chris@wirex.com>
6 * Copyright (C) 2001-2002 Greg Kroah-Hartman <greg@kroah.com>
7 * Copyright (C) 2001 Networks Associates Technology, Inc <ssmalley@nai.com>
9 * This program is free software; you can redistribute it and/or modify
10 * it under the terms of the GNU General Public License as published by
11 * the Free Software Foundation; either version 2 of the License, or
12 * (at your option) any later version.
17 #include <linux/capability.h>
18 #include <linux/config.h>
19 #include <linux/module.h>
20 #include <linux/kernel.h>
21 #include <linux/mman.h>
22 #include <linux/pagemap.h>
23 #include <linux/swap.h>
24 #include <linux/security.h>
25 #include <linux/skbuff.h>
26 #include <linux/netlink.h>
28 #include <linux/xattr.h>
29 #include <linux/hugetlb.h>
30 #include <linux/ptrace.h>
31 #include <linux/file.h>
33 static int dummy_ptrace (struct task_struct
*parent
, struct task_struct
*child
)
38 static int dummy_capget (struct task_struct
*target
, kernel_cap_t
* effective
,
39 kernel_cap_t
* inheritable
, kernel_cap_t
* permitted
)
41 *effective
= *inheritable
= *permitted
= 0;
42 if (!issecure(SECURE_NOROOT
)) {
43 if (target
->euid
== 0) {
44 *permitted
|= (~0 & ~CAP_FS_MASK
);
45 *effective
|= (~0 & ~CAP_TO_MASK(CAP_SETPCAP
) & ~CAP_FS_MASK
);
47 if (target
->fsuid
== 0) {
48 *permitted
|= CAP_FS_MASK
;
49 *effective
|= CAP_FS_MASK
;
55 static int dummy_capset_check (struct task_struct
*target
,
56 kernel_cap_t
* effective
,
57 kernel_cap_t
* inheritable
,
58 kernel_cap_t
* permitted
)
63 static void dummy_capset_set (struct task_struct
*target
,
64 kernel_cap_t
* effective
,
65 kernel_cap_t
* inheritable
,
66 kernel_cap_t
* permitted
)
71 static int dummy_acct (struct file
*file
)
76 static int dummy_capable (struct task_struct
*tsk
, int cap
)
78 if (cap_raised (tsk
->cap_effective
, cap
))
83 static int dummy_sysctl (ctl_table
* table
, int op
)
88 static int dummy_quotactl (int cmds
, int type
, int id
, struct super_block
*sb
)
93 static int dummy_quota_on (struct dentry
*dentry
)
98 static int dummy_syslog (int type
)
100 if ((type
!= 3 && type
!= 10) && current
->euid
)
105 static int dummy_settime(struct timespec
*ts
, struct timezone
*tz
)
107 if (!capable(CAP_SYS_TIME
))
112 static int dummy_vm_enough_memory(long pages
)
114 int cap_sys_admin
= 0;
116 if (dummy_capable(current
, CAP_SYS_ADMIN
) == 0)
118 return __vm_enough_memory(pages
, cap_sys_admin
);
121 static int dummy_bprm_alloc_security (struct linux_binprm
*bprm
)
126 static void dummy_bprm_free_security (struct linux_binprm
*bprm
)
131 static void dummy_bprm_apply_creds (struct linux_binprm
*bprm
, int unsafe
)
133 if (bprm
->e_uid
!= current
->uid
|| bprm
->e_gid
!= current
->gid
) {
134 current
->mm
->dumpable
= suid_dumpable
;
136 if ((unsafe
& ~LSM_UNSAFE_PTRACE_CAP
) && !capable(CAP_SETUID
)) {
137 bprm
->e_uid
= current
->uid
;
138 bprm
->e_gid
= current
->gid
;
142 current
->suid
= current
->euid
= current
->fsuid
= bprm
->e_uid
;
143 current
->sgid
= current
->egid
= current
->fsgid
= bprm
->e_gid
;
145 dummy_capget(current
, ¤t
->cap_effective
, ¤t
->cap_inheritable
, ¤t
->cap_permitted
);
148 static void dummy_bprm_post_apply_creds (struct linux_binprm
*bprm
)
153 static int dummy_bprm_set_security (struct linux_binprm
*bprm
)
158 static int dummy_bprm_check_security (struct linux_binprm
*bprm
)
163 static int dummy_bprm_secureexec (struct linux_binprm
*bprm
)
165 /* The new userland will simply use the value provided
166 in the AT_SECURE field to decide whether secure mode
167 is required. Hence, this logic is required to preserve
168 the legacy decision algorithm used by the old userland. */
169 return (current
->euid
!= current
->uid
||
170 current
->egid
!= current
->gid
);
173 static int dummy_sb_alloc_security (struct super_block
*sb
)
178 static void dummy_sb_free_security (struct super_block
*sb
)
183 static int dummy_sb_copy_data (struct file_system_type
*type
,
184 void *orig
, void *copy
)
189 static int dummy_sb_kern_mount (struct super_block
*sb
, void *data
)
194 static int dummy_sb_statfs (struct super_block
*sb
)
199 static int dummy_sb_mount (char *dev_name
, struct nameidata
*nd
, char *type
,
200 unsigned long flags
, void *data
)
205 static int dummy_sb_check_sb (struct vfsmount
*mnt
, struct nameidata
*nd
)
210 static int dummy_sb_umount (struct vfsmount
*mnt
, int flags
)
215 static void dummy_sb_umount_close (struct vfsmount
*mnt
)
220 static void dummy_sb_umount_busy (struct vfsmount
*mnt
)
225 static void dummy_sb_post_remount (struct vfsmount
*mnt
, unsigned long flags
,
232 static void dummy_sb_post_mountroot (void)
237 static void dummy_sb_post_addmount (struct vfsmount
*mnt
, struct nameidata
*nd
)
242 static int dummy_sb_pivotroot (struct nameidata
*old_nd
, struct nameidata
*new_nd
)
247 static void dummy_sb_post_pivotroot (struct nameidata
*old_nd
, struct nameidata
*new_nd
)
252 static int dummy_inode_alloc_security (struct inode
*inode
)
257 static void dummy_inode_free_security (struct inode
*inode
)
262 static int dummy_inode_init_security (struct inode
*inode
, struct inode
*dir
,
263 char **name
, void **value
, size_t *len
)
268 static int dummy_inode_create (struct inode
*inode
, struct dentry
*dentry
,
274 static int dummy_inode_link (struct dentry
*old_dentry
, struct inode
*inode
,
275 struct dentry
*new_dentry
)
280 static int dummy_inode_unlink (struct inode
*inode
, struct dentry
*dentry
)
285 static int dummy_inode_symlink (struct inode
*inode
, struct dentry
*dentry
,
291 static int dummy_inode_mkdir (struct inode
*inode
, struct dentry
*dentry
,
297 static int dummy_inode_rmdir (struct inode
*inode
, struct dentry
*dentry
)
302 static int dummy_inode_mknod (struct inode
*inode
, struct dentry
*dentry
,
308 static int dummy_inode_rename (struct inode
*old_inode
,
309 struct dentry
*old_dentry
,
310 struct inode
*new_inode
,
311 struct dentry
*new_dentry
)
316 static int dummy_inode_readlink (struct dentry
*dentry
)
321 static int dummy_inode_follow_link (struct dentry
*dentry
,
322 struct nameidata
*nameidata
)
327 static int dummy_inode_permission (struct inode
*inode
, int mask
, struct nameidata
*nd
)
332 static int dummy_inode_setattr (struct dentry
*dentry
, struct iattr
*iattr
)
337 static int dummy_inode_getattr (struct vfsmount
*mnt
, struct dentry
*dentry
)
342 static void dummy_inode_delete (struct inode
*ino
)
347 static int dummy_inode_setxattr (struct dentry
*dentry
, char *name
, void *value
,
348 size_t size
, int flags
)
350 if (!strncmp(name
, XATTR_SECURITY_PREFIX
,
351 sizeof(XATTR_SECURITY_PREFIX
) - 1) &&
352 !capable(CAP_SYS_ADMIN
))
357 static void dummy_inode_post_setxattr (struct dentry
*dentry
, char *name
, void *value
,
358 size_t size
, int flags
)
362 static int dummy_inode_getxattr (struct dentry
*dentry
, char *name
)
367 static int dummy_inode_listxattr (struct dentry
*dentry
)
372 static int dummy_inode_removexattr (struct dentry
*dentry
, char *name
)
374 if (!strncmp(name
, XATTR_SECURITY_PREFIX
,
375 sizeof(XATTR_SECURITY_PREFIX
) - 1) &&
376 !capable(CAP_SYS_ADMIN
))
381 static int dummy_inode_getsecurity(const struct inode
*inode
, const char *name
, void *buffer
, size_t size
, int err
)
386 static int dummy_inode_setsecurity(struct inode
*inode
, const char *name
, const void *value
, size_t size
, int flags
)
391 static int dummy_inode_listsecurity(struct inode
*inode
, char *buffer
, size_t buffer_size
)
396 static const char *dummy_inode_xattr_getsuffix(void)
401 static int dummy_file_permission (struct file
*file
, int mask
)
406 static int dummy_file_alloc_security (struct file
*file
)
411 static void dummy_file_free_security (struct file
*file
)
416 static int dummy_file_ioctl (struct file
*file
, unsigned int command
,
422 static int dummy_file_mmap (struct file
*file
, unsigned long reqprot
,
429 static int dummy_file_mprotect (struct vm_area_struct
*vma
,
430 unsigned long reqprot
,
436 static int dummy_file_lock (struct file
*file
, unsigned int cmd
)
441 static int dummy_file_fcntl (struct file
*file
, unsigned int cmd
,
447 static int dummy_file_set_fowner (struct file
*file
)
452 static int dummy_file_send_sigiotask (struct task_struct
*tsk
,
453 struct fown_struct
*fown
, int sig
)
458 static int dummy_file_receive (struct file
*file
)
463 static int dummy_task_create (unsigned long clone_flags
)
468 static int dummy_task_alloc_security (struct task_struct
*p
)
473 static void dummy_task_free_security (struct task_struct
*p
)
478 static int dummy_task_setuid (uid_t id0
, uid_t id1
, uid_t id2
, int flags
)
483 static int dummy_task_post_setuid (uid_t id0
, uid_t id1
, uid_t id2
, int flags
)
485 dummy_capget(current
, ¤t
->cap_effective
, ¤t
->cap_inheritable
, ¤t
->cap_permitted
);
489 static int dummy_task_setgid (gid_t id0
, gid_t id1
, gid_t id2
, int flags
)
494 static int dummy_task_setpgid (struct task_struct
*p
, pid_t pgid
)
499 static int dummy_task_getpgid (struct task_struct
*p
)
504 static int dummy_task_getsid (struct task_struct
*p
)
509 static int dummy_task_setgroups (struct group_info
*group_info
)
514 static int dummy_task_setnice (struct task_struct
*p
, int nice
)
519 static int dummy_task_setrlimit (unsigned int resource
, struct rlimit
*new_rlim
)
524 static int dummy_task_setscheduler (struct task_struct
*p
, int policy
,
525 struct sched_param
*lp
)
530 static int dummy_task_getscheduler (struct task_struct
*p
)
535 static int dummy_task_wait (struct task_struct
*p
)
540 static int dummy_task_kill (struct task_struct
*p
, struct siginfo
*info
,
546 static int dummy_task_prctl (int option
, unsigned long arg2
, unsigned long arg3
,
547 unsigned long arg4
, unsigned long arg5
)
552 static void dummy_task_reparent_to_init (struct task_struct
*p
)
554 p
->euid
= p
->fsuid
= 0;
558 static void dummy_task_to_inode(struct task_struct
*p
, struct inode
*inode
)
561 static int dummy_ipc_permission (struct kern_ipc_perm
*ipcp
, short flag
)
566 static int dummy_msg_msg_alloc_security (struct msg_msg
*msg
)
571 static void dummy_msg_msg_free_security (struct msg_msg
*msg
)
576 static int dummy_msg_queue_alloc_security (struct msg_queue
*msq
)
581 static void dummy_msg_queue_free_security (struct msg_queue
*msq
)
586 static int dummy_msg_queue_associate (struct msg_queue
*msq
,
592 static int dummy_msg_queue_msgctl (struct msg_queue
*msq
, int cmd
)
597 static int dummy_msg_queue_msgsnd (struct msg_queue
*msq
, struct msg_msg
*msg
,
603 static int dummy_msg_queue_msgrcv (struct msg_queue
*msq
, struct msg_msg
*msg
,
604 struct task_struct
*target
, long type
,
610 static int dummy_shm_alloc_security (struct shmid_kernel
*shp
)
615 static void dummy_shm_free_security (struct shmid_kernel
*shp
)
620 static int dummy_shm_associate (struct shmid_kernel
*shp
, int shmflg
)
625 static int dummy_shm_shmctl (struct shmid_kernel
*shp
, int cmd
)
630 static int dummy_shm_shmat (struct shmid_kernel
*shp
, char __user
*shmaddr
,
636 static int dummy_sem_alloc_security (struct sem_array
*sma
)
641 static void dummy_sem_free_security (struct sem_array
*sma
)
646 static int dummy_sem_associate (struct sem_array
*sma
, int semflg
)
651 static int dummy_sem_semctl (struct sem_array
*sma
, int cmd
)
656 static int dummy_sem_semop (struct sem_array
*sma
,
657 struct sembuf
*sops
, unsigned nsops
, int alter
)
662 static int dummy_netlink_send (struct sock
*sk
, struct sk_buff
*skb
)
664 NETLINK_CB(skb
).eff_cap
= current
->cap_effective
;
668 static int dummy_netlink_recv (struct sk_buff
*skb
)
670 if (!cap_raised (NETLINK_CB (skb
).eff_cap
, CAP_NET_ADMIN
))
675 #ifdef CONFIG_SECURITY_NETWORK
676 static int dummy_unix_stream_connect (struct socket
*sock
,
677 struct socket
*other
,
683 static int dummy_unix_may_send (struct socket
*sock
,
684 struct socket
*other
)
689 static int dummy_socket_create (int family
, int type
,
690 int protocol
, int kern
)
695 static void dummy_socket_post_create (struct socket
*sock
, int family
, int type
,
696 int protocol
, int kern
)
701 static int dummy_socket_bind (struct socket
*sock
, struct sockaddr
*address
,
707 static int dummy_socket_connect (struct socket
*sock
, struct sockaddr
*address
,
713 static int dummy_socket_listen (struct socket
*sock
, int backlog
)
718 static int dummy_socket_accept (struct socket
*sock
, struct socket
*newsock
)
723 static void dummy_socket_post_accept (struct socket
*sock
,
724 struct socket
*newsock
)
729 static int dummy_socket_sendmsg (struct socket
*sock
, struct msghdr
*msg
,
735 static int dummy_socket_recvmsg (struct socket
*sock
, struct msghdr
*msg
,
741 static int dummy_socket_getsockname (struct socket
*sock
)
746 static int dummy_socket_getpeername (struct socket
*sock
)
751 static int dummy_socket_setsockopt (struct socket
*sock
, int level
, int optname
)
756 static int dummy_socket_getsockopt (struct socket
*sock
, int level
, int optname
)
761 static int dummy_socket_shutdown (struct socket
*sock
, int how
)
766 static int dummy_socket_sock_rcv_skb (struct sock
*sk
, struct sk_buff
*skb
)
771 static int dummy_socket_getpeersec_stream(struct socket
*sock
, char __user
*optval
,
772 int __user
*optlen
, unsigned len
)
777 static int dummy_socket_getpeersec_dgram(struct sk_buff
*skb
, char **secdata
,
783 static inline int dummy_sk_alloc_security (struct sock
*sk
, int family
, gfp_t priority
)
788 static inline void dummy_sk_free_security (struct sock
*sk
)
792 static unsigned int dummy_sk_getsid(struct sock
*sk
, struct flowi
*fl
, u8 dir
)
796 #endif /* CONFIG_SECURITY_NETWORK */
798 #ifdef CONFIG_SECURITY_NETWORK_XFRM
799 static int dummy_xfrm_policy_alloc_security(struct xfrm_policy
*xp
, struct xfrm_user_sec_ctx
*sec_ctx
)
804 static inline int dummy_xfrm_policy_clone_security(struct xfrm_policy
*old
, struct xfrm_policy
*new)
809 static void dummy_xfrm_policy_free_security(struct xfrm_policy
*xp
)
813 static int dummy_xfrm_state_alloc_security(struct xfrm_state
*x
, struct xfrm_user_sec_ctx
*sec_ctx
)
818 static void dummy_xfrm_state_free_security(struct xfrm_state
*x
)
822 static int dummy_xfrm_policy_lookup(struct xfrm_policy
*xp
, u32 sk_sid
, u8 dir
)
826 #endif /* CONFIG_SECURITY_NETWORK_XFRM */
827 static int dummy_register_security (const char *name
, struct security_operations
*ops
)
832 static int dummy_unregister_security (const char *name
, struct security_operations
*ops
)
837 static void dummy_d_instantiate (struct dentry
*dentry
, struct inode
*inode
)
842 static int dummy_getprocattr(struct task_struct
*p
, char *name
, void *value
, size_t size
)
847 static int dummy_setprocattr(struct task_struct
*p
, char *name
, void *value
, size_t size
)
853 static inline int dummy_key_alloc(struct key
*key
)
858 static inline void dummy_key_free(struct key
*key
)
862 static inline int dummy_key_permission(key_ref_t key_ref
,
863 struct task_struct
*context
,
868 #endif /* CONFIG_KEYS */
870 struct security_operations dummy_security_ops
;
872 #define set_to_dummy_if_null(ops, function) \
874 if (!ops->function) { \
875 ops->function = dummy_##function; \
876 pr_debug("Had to override the " #function \
877 " security operation with the dummy one.\n");\
881 void security_fixup_ops (struct security_operations
*ops
)
883 set_to_dummy_if_null(ops
, ptrace
);
884 set_to_dummy_if_null(ops
, capget
);
885 set_to_dummy_if_null(ops
, capset_check
);
886 set_to_dummy_if_null(ops
, capset_set
);
887 set_to_dummy_if_null(ops
, acct
);
888 set_to_dummy_if_null(ops
, capable
);
889 set_to_dummy_if_null(ops
, quotactl
);
890 set_to_dummy_if_null(ops
, quota_on
);
891 set_to_dummy_if_null(ops
, sysctl
);
892 set_to_dummy_if_null(ops
, syslog
);
893 set_to_dummy_if_null(ops
, settime
);
894 set_to_dummy_if_null(ops
, vm_enough_memory
);
895 set_to_dummy_if_null(ops
, bprm_alloc_security
);
896 set_to_dummy_if_null(ops
, bprm_free_security
);
897 set_to_dummy_if_null(ops
, bprm_apply_creds
);
898 set_to_dummy_if_null(ops
, bprm_post_apply_creds
);
899 set_to_dummy_if_null(ops
, bprm_set_security
);
900 set_to_dummy_if_null(ops
, bprm_check_security
);
901 set_to_dummy_if_null(ops
, bprm_secureexec
);
902 set_to_dummy_if_null(ops
, sb_alloc_security
);
903 set_to_dummy_if_null(ops
, sb_free_security
);
904 set_to_dummy_if_null(ops
, sb_copy_data
);
905 set_to_dummy_if_null(ops
, sb_kern_mount
);
906 set_to_dummy_if_null(ops
, sb_statfs
);
907 set_to_dummy_if_null(ops
, sb_mount
);
908 set_to_dummy_if_null(ops
, sb_check_sb
);
909 set_to_dummy_if_null(ops
, sb_umount
);
910 set_to_dummy_if_null(ops
, sb_umount_close
);
911 set_to_dummy_if_null(ops
, sb_umount_busy
);
912 set_to_dummy_if_null(ops
, sb_post_remount
);
913 set_to_dummy_if_null(ops
, sb_post_mountroot
);
914 set_to_dummy_if_null(ops
, sb_post_addmount
);
915 set_to_dummy_if_null(ops
, sb_pivotroot
);
916 set_to_dummy_if_null(ops
, sb_post_pivotroot
);
917 set_to_dummy_if_null(ops
, inode_alloc_security
);
918 set_to_dummy_if_null(ops
, inode_free_security
);
919 set_to_dummy_if_null(ops
, inode_init_security
);
920 set_to_dummy_if_null(ops
, inode_create
);
921 set_to_dummy_if_null(ops
, inode_link
);
922 set_to_dummy_if_null(ops
, inode_unlink
);
923 set_to_dummy_if_null(ops
, inode_symlink
);
924 set_to_dummy_if_null(ops
, inode_mkdir
);
925 set_to_dummy_if_null(ops
, inode_rmdir
);
926 set_to_dummy_if_null(ops
, inode_mknod
);
927 set_to_dummy_if_null(ops
, inode_rename
);
928 set_to_dummy_if_null(ops
, inode_readlink
);
929 set_to_dummy_if_null(ops
, inode_follow_link
);
930 set_to_dummy_if_null(ops
, inode_permission
);
931 set_to_dummy_if_null(ops
, inode_setattr
);
932 set_to_dummy_if_null(ops
, inode_getattr
);
933 set_to_dummy_if_null(ops
, inode_delete
);
934 set_to_dummy_if_null(ops
, inode_setxattr
);
935 set_to_dummy_if_null(ops
, inode_post_setxattr
);
936 set_to_dummy_if_null(ops
, inode_getxattr
);
937 set_to_dummy_if_null(ops
, inode_listxattr
);
938 set_to_dummy_if_null(ops
, inode_removexattr
);
939 set_to_dummy_if_null(ops
, inode_xattr_getsuffix
);
940 set_to_dummy_if_null(ops
, inode_getsecurity
);
941 set_to_dummy_if_null(ops
, inode_setsecurity
);
942 set_to_dummy_if_null(ops
, inode_listsecurity
);
943 set_to_dummy_if_null(ops
, file_permission
);
944 set_to_dummy_if_null(ops
, file_alloc_security
);
945 set_to_dummy_if_null(ops
, file_free_security
);
946 set_to_dummy_if_null(ops
, file_ioctl
);
947 set_to_dummy_if_null(ops
, file_mmap
);
948 set_to_dummy_if_null(ops
, file_mprotect
);
949 set_to_dummy_if_null(ops
, file_lock
);
950 set_to_dummy_if_null(ops
, file_fcntl
);
951 set_to_dummy_if_null(ops
, file_set_fowner
);
952 set_to_dummy_if_null(ops
, file_send_sigiotask
);
953 set_to_dummy_if_null(ops
, file_receive
);
954 set_to_dummy_if_null(ops
, task_create
);
955 set_to_dummy_if_null(ops
, task_alloc_security
);
956 set_to_dummy_if_null(ops
, task_free_security
);
957 set_to_dummy_if_null(ops
, task_setuid
);
958 set_to_dummy_if_null(ops
, task_post_setuid
);
959 set_to_dummy_if_null(ops
, task_setgid
);
960 set_to_dummy_if_null(ops
, task_setpgid
);
961 set_to_dummy_if_null(ops
, task_getpgid
);
962 set_to_dummy_if_null(ops
, task_getsid
);
963 set_to_dummy_if_null(ops
, task_setgroups
);
964 set_to_dummy_if_null(ops
, task_setnice
);
965 set_to_dummy_if_null(ops
, task_setrlimit
);
966 set_to_dummy_if_null(ops
, task_setscheduler
);
967 set_to_dummy_if_null(ops
, task_getscheduler
);
968 set_to_dummy_if_null(ops
, task_wait
);
969 set_to_dummy_if_null(ops
, task_kill
);
970 set_to_dummy_if_null(ops
, task_prctl
);
971 set_to_dummy_if_null(ops
, task_reparent_to_init
);
972 set_to_dummy_if_null(ops
, task_to_inode
);
973 set_to_dummy_if_null(ops
, ipc_permission
);
974 set_to_dummy_if_null(ops
, msg_msg_alloc_security
);
975 set_to_dummy_if_null(ops
, msg_msg_free_security
);
976 set_to_dummy_if_null(ops
, msg_queue_alloc_security
);
977 set_to_dummy_if_null(ops
, msg_queue_free_security
);
978 set_to_dummy_if_null(ops
, msg_queue_associate
);
979 set_to_dummy_if_null(ops
, msg_queue_msgctl
);
980 set_to_dummy_if_null(ops
, msg_queue_msgsnd
);
981 set_to_dummy_if_null(ops
, msg_queue_msgrcv
);
982 set_to_dummy_if_null(ops
, shm_alloc_security
);
983 set_to_dummy_if_null(ops
, shm_free_security
);
984 set_to_dummy_if_null(ops
, shm_associate
);
985 set_to_dummy_if_null(ops
, shm_shmctl
);
986 set_to_dummy_if_null(ops
, shm_shmat
);
987 set_to_dummy_if_null(ops
, sem_alloc_security
);
988 set_to_dummy_if_null(ops
, sem_free_security
);
989 set_to_dummy_if_null(ops
, sem_associate
);
990 set_to_dummy_if_null(ops
, sem_semctl
);
991 set_to_dummy_if_null(ops
, sem_semop
);
992 set_to_dummy_if_null(ops
, netlink_send
);
993 set_to_dummy_if_null(ops
, netlink_recv
);
994 set_to_dummy_if_null(ops
, register_security
);
995 set_to_dummy_if_null(ops
, unregister_security
);
996 set_to_dummy_if_null(ops
, d_instantiate
);
997 set_to_dummy_if_null(ops
, getprocattr
);
998 set_to_dummy_if_null(ops
, setprocattr
);
999 #ifdef CONFIG_SECURITY_NETWORK
1000 set_to_dummy_if_null(ops
, unix_stream_connect
);
1001 set_to_dummy_if_null(ops
, unix_may_send
);
1002 set_to_dummy_if_null(ops
, socket_create
);
1003 set_to_dummy_if_null(ops
, socket_post_create
);
1004 set_to_dummy_if_null(ops
, socket_bind
);
1005 set_to_dummy_if_null(ops
, socket_connect
);
1006 set_to_dummy_if_null(ops
, socket_listen
);
1007 set_to_dummy_if_null(ops
, socket_accept
);
1008 set_to_dummy_if_null(ops
, socket_post_accept
);
1009 set_to_dummy_if_null(ops
, socket_sendmsg
);
1010 set_to_dummy_if_null(ops
, socket_recvmsg
);
1011 set_to_dummy_if_null(ops
, socket_getsockname
);
1012 set_to_dummy_if_null(ops
, socket_getpeername
);
1013 set_to_dummy_if_null(ops
, socket_setsockopt
);
1014 set_to_dummy_if_null(ops
, socket_getsockopt
);
1015 set_to_dummy_if_null(ops
, socket_shutdown
);
1016 set_to_dummy_if_null(ops
, socket_sock_rcv_skb
);
1017 set_to_dummy_if_null(ops
, socket_getpeersec_stream
);
1018 set_to_dummy_if_null(ops
, socket_getpeersec_dgram
);
1019 set_to_dummy_if_null(ops
, sk_alloc_security
);
1020 set_to_dummy_if_null(ops
, sk_free_security
);
1021 set_to_dummy_if_null(ops
, sk_getsid
);
1022 #endif /* CONFIG_SECURITY_NETWORK */
1023 #ifdef CONFIG_SECURITY_NETWORK_XFRM
1024 set_to_dummy_if_null(ops
, xfrm_policy_alloc_security
);
1025 set_to_dummy_if_null(ops
, xfrm_policy_clone_security
);
1026 set_to_dummy_if_null(ops
, xfrm_policy_free_security
);
1027 set_to_dummy_if_null(ops
, xfrm_state_alloc_security
);
1028 set_to_dummy_if_null(ops
, xfrm_state_free_security
);
1029 set_to_dummy_if_null(ops
, xfrm_policy_lookup
);
1030 #endif /* CONFIG_SECURITY_NETWORK_XFRM */
1032 set_to_dummy_if_null(ops
, key_alloc
);
1033 set_to_dummy_if_null(ops
, key_free
);
1034 set_to_dummy_if_null(ops
, key_permission
);
1035 #endif /* CONFIG_KEYS */