at v3.10 24 kB view raw
1/* 2 * Capabilities Linux Security Module 3 * 4 * This is the default security module in case no other module is loaded. 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation; either version 2 of the License, or 9 * (at your option) any later version. 10 * 11 */ 12 13#include <linux/security.h> 14 15static int cap_syslog(int type) 16{ 17 return 0; 18} 19 20static int cap_quotactl(int cmds, int type, int id, struct super_block *sb) 21{ 22 return 0; 23} 24 25static int cap_quota_on(struct dentry *dentry) 26{ 27 return 0; 28} 29 30static int cap_bprm_check_security(struct linux_binprm *bprm) 31{ 32 return 0; 33} 34 35static void cap_bprm_committing_creds(struct linux_binprm *bprm) 36{ 37} 38 39static void cap_bprm_committed_creds(struct linux_binprm *bprm) 40{ 41} 42 43static int cap_sb_alloc_security(struct super_block *sb) 44{ 45 return 0; 46} 47 48static void cap_sb_free_security(struct super_block *sb) 49{ 50} 51 52static int cap_sb_copy_data(char *orig, char *copy) 53{ 54 return 0; 55} 56 57static int cap_sb_remount(struct super_block *sb, void *data) 58{ 59 return 0; 60} 61 62static int cap_sb_kern_mount(struct super_block *sb, int flags, void *data) 63{ 64 return 0; 65} 66 67static int cap_sb_show_options(struct seq_file *m, struct super_block *sb) 68{ 69 return 0; 70} 71 72static int cap_sb_statfs(struct dentry *dentry) 73{ 74 return 0; 75} 76 77static int cap_sb_mount(const char *dev_name, struct path *path, 78 const char *type, unsigned long flags, void *data) 79{ 80 return 0; 81} 82 83static int cap_sb_umount(struct vfsmount *mnt, int flags) 84{ 85 return 0; 86} 87 88static int cap_sb_pivotroot(struct path *old_path, struct path *new_path) 89{ 90 return 0; 91} 92 93static int cap_sb_set_mnt_opts(struct super_block *sb, 94 struct security_mnt_opts *opts) 95{ 96 if (unlikely(opts->num_mnt_opts)) 97 return -EOPNOTSUPP; 98 return 0; 99} 100 101static int cap_sb_clone_mnt_opts(const struct super_block *oldsb, 102 struct super_block *newsb) 103{ 104 return 0; 105} 106 107static int cap_sb_parse_opts_str(char *options, struct security_mnt_opts *opts) 108{ 109 return 0; 110} 111 112static int cap_inode_alloc_security(struct inode *inode) 113{ 114 return 0; 115} 116 117static void cap_inode_free_security(struct inode *inode) 118{ 119} 120 121static int cap_inode_init_security(struct inode *inode, struct inode *dir, 122 const struct qstr *qstr, char **name, 123 void **value, size_t *len) 124{ 125 return -EOPNOTSUPP; 126} 127 128static int cap_inode_create(struct inode *inode, struct dentry *dentry, 129 umode_t mask) 130{ 131 return 0; 132} 133 134static int cap_inode_link(struct dentry *old_dentry, struct inode *inode, 135 struct dentry *new_dentry) 136{ 137 return 0; 138} 139 140static int cap_inode_unlink(struct inode *inode, struct dentry *dentry) 141{ 142 return 0; 143} 144 145static int cap_inode_symlink(struct inode *inode, struct dentry *dentry, 146 const char *name) 147{ 148 return 0; 149} 150 151static int cap_inode_mkdir(struct inode *inode, struct dentry *dentry, 152 umode_t mask) 153{ 154 return 0; 155} 156 157static int cap_inode_rmdir(struct inode *inode, struct dentry *dentry) 158{ 159 return 0; 160} 161 162static int cap_inode_mknod(struct inode *inode, struct dentry *dentry, 163 umode_t mode, dev_t dev) 164{ 165 return 0; 166} 167 168static int cap_inode_rename(struct inode *old_inode, struct dentry *old_dentry, 169 struct inode *new_inode, struct dentry *new_dentry) 170{ 171 return 0; 172} 173 174static int cap_inode_readlink(struct dentry *dentry) 175{ 176 return 0; 177} 178 179static int cap_inode_follow_link(struct dentry *dentry, 180 struct nameidata *nameidata) 181{ 182 return 0; 183} 184 185static int cap_inode_permission(struct inode *inode, int mask) 186{ 187 return 0; 188} 189 190static int cap_inode_setattr(struct dentry *dentry, struct iattr *iattr) 191{ 192 return 0; 193} 194 195static int cap_inode_getattr(struct vfsmount *mnt, struct dentry *dentry) 196{ 197 return 0; 198} 199 200static void cap_inode_post_setxattr(struct dentry *dentry, const char *name, 201 const void *value, size_t size, int flags) 202{ 203} 204 205static int cap_inode_getxattr(struct dentry *dentry, const char *name) 206{ 207 return 0; 208} 209 210static int cap_inode_listxattr(struct dentry *dentry) 211{ 212 return 0; 213} 214 215static int cap_inode_getsecurity(const struct inode *inode, const char *name, 216 void **buffer, bool alloc) 217{ 218 return -EOPNOTSUPP; 219} 220 221static int cap_inode_setsecurity(struct inode *inode, const char *name, 222 const void *value, size_t size, int flags) 223{ 224 return -EOPNOTSUPP; 225} 226 227static int cap_inode_listsecurity(struct inode *inode, char *buffer, 228 size_t buffer_size) 229{ 230 return 0; 231} 232 233static void cap_inode_getsecid(const struct inode *inode, u32 *secid) 234{ 235 *secid = 0; 236} 237 238#ifdef CONFIG_SECURITY_PATH 239static int cap_path_mknod(struct path *dir, struct dentry *dentry, umode_t mode, 240 unsigned int dev) 241{ 242 return 0; 243} 244 245static int cap_path_mkdir(struct path *dir, struct dentry *dentry, umode_t mode) 246{ 247 return 0; 248} 249 250static int cap_path_rmdir(struct path *dir, struct dentry *dentry) 251{ 252 return 0; 253} 254 255static int cap_path_unlink(struct path *dir, struct dentry *dentry) 256{ 257 return 0; 258} 259 260static int cap_path_symlink(struct path *dir, struct dentry *dentry, 261 const char *old_name) 262{ 263 return 0; 264} 265 266static int cap_path_link(struct dentry *old_dentry, struct path *new_dir, 267 struct dentry *new_dentry) 268{ 269 return 0; 270} 271 272static int cap_path_rename(struct path *old_path, struct dentry *old_dentry, 273 struct path *new_path, struct dentry *new_dentry) 274{ 275 return 0; 276} 277 278static int cap_path_truncate(struct path *path) 279{ 280 return 0; 281} 282 283static int cap_path_chmod(struct path *path, umode_t mode) 284{ 285 return 0; 286} 287 288static int cap_path_chown(struct path *path, kuid_t uid, kgid_t gid) 289{ 290 return 0; 291} 292 293static int cap_path_chroot(struct path *root) 294{ 295 return 0; 296} 297#endif 298 299static int cap_file_permission(struct file *file, int mask) 300{ 301 return 0; 302} 303 304static int cap_file_alloc_security(struct file *file) 305{ 306 return 0; 307} 308 309static void cap_file_free_security(struct file *file) 310{ 311} 312 313static int cap_file_ioctl(struct file *file, unsigned int command, 314 unsigned long arg) 315{ 316 return 0; 317} 318 319static int cap_file_mprotect(struct vm_area_struct *vma, unsigned long reqprot, 320 unsigned long prot) 321{ 322 return 0; 323} 324 325static int cap_file_lock(struct file *file, unsigned int cmd) 326{ 327 return 0; 328} 329 330static int cap_file_fcntl(struct file *file, unsigned int cmd, 331 unsigned long arg) 332{ 333 return 0; 334} 335 336static int cap_file_set_fowner(struct file *file) 337{ 338 return 0; 339} 340 341static int cap_file_send_sigiotask(struct task_struct *tsk, 342 struct fown_struct *fown, int sig) 343{ 344 return 0; 345} 346 347static int cap_file_receive(struct file *file) 348{ 349 return 0; 350} 351 352static int cap_file_open(struct file *file, const struct cred *cred) 353{ 354 return 0; 355} 356 357static int cap_task_create(unsigned long clone_flags) 358{ 359 return 0; 360} 361 362static void cap_task_free(struct task_struct *task) 363{ 364} 365 366static int cap_cred_alloc_blank(struct cred *cred, gfp_t gfp) 367{ 368 return 0; 369} 370 371static void cap_cred_free(struct cred *cred) 372{ 373} 374 375static int cap_cred_prepare(struct cred *new, const struct cred *old, gfp_t gfp) 376{ 377 return 0; 378} 379 380static void cap_cred_transfer(struct cred *new, const struct cred *old) 381{ 382} 383 384static int cap_kernel_act_as(struct cred *new, u32 secid) 385{ 386 return 0; 387} 388 389static int cap_kernel_create_files_as(struct cred *new, struct inode *inode) 390{ 391 return 0; 392} 393 394static int cap_kernel_module_request(char *kmod_name) 395{ 396 return 0; 397} 398 399static int cap_kernel_module_from_file(struct file *file) 400{ 401 return 0; 402} 403 404static int cap_task_setpgid(struct task_struct *p, pid_t pgid) 405{ 406 return 0; 407} 408 409static int cap_task_getpgid(struct task_struct *p) 410{ 411 return 0; 412} 413 414static int cap_task_getsid(struct task_struct *p) 415{ 416 return 0; 417} 418 419static void cap_task_getsecid(struct task_struct *p, u32 *secid) 420{ 421 *secid = 0; 422} 423 424static int cap_task_getioprio(struct task_struct *p) 425{ 426 return 0; 427} 428 429static int cap_task_setrlimit(struct task_struct *p, unsigned int resource, 430 struct rlimit *new_rlim) 431{ 432 return 0; 433} 434 435static int cap_task_getscheduler(struct task_struct *p) 436{ 437 return 0; 438} 439 440static int cap_task_movememory(struct task_struct *p) 441{ 442 return 0; 443} 444 445static int cap_task_wait(struct task_struct *p) 446{ 447 return 0; 448} 449 450static int cap_task_kill(struct task_struct *p, struct siginfo *info, 451 int sig, u32 secid) 452{ 453 return 0; 454} 455 456static void cap_task_to_inode(struct task_struct *p, struct inode *inode) 457{ 458} 459 460static int cap_ipc_permission(struct kern_ipc_perm *ipcp, short flag) 461{ 462 return 0; 463} 464 465static void cap_ipc_getsecid(struct kern_ipc_perm *ipcp, u32 *secid) 466{ 467 *secid = 0; 468} 469 470static int cap_msg_msg_alloc_security(struct msg_msg *msg) 471{ 472 return 0; 473} 474 475static void cap_msg_msg_free_security(struct msg_msg *msg) 476{ 477} 478 479static int cap_msg_queue_alloc_security(struct msg_queue *msq) 480{ 481 return 0; 482} 483 484static void cap_msg_queue_free_security(struct msg_queue *msq) 485{ 486} 487 488static int cap_msg_queue_associate(struct msg_queue *msq, int msqflg) 489{ 490 return 0; 491} 492 493static int cap_msg_queue_msgctl(struct msg_queue *msq, int cmd) 494{ 495 return 0; 496} 497 498static int cap_msg_queue_msgsnd(struct msg_queue *msq, struct msg_msg *msg, 499 int msgflg) 500{ 501 return 0; 502} 503 504static int cap_msg_queue_msgrcv(struct msg_queue *msq, struct msg_msg *msg, 505 struct task_struct *target, long type, int mode) 506{ 507 return 0; 508} 509 510static int cap_shm_alloc_security(struct shmid_kernel *shp) 511{ 512 return 0; 513} 514 515static void cap_shm_free_security(struct shmid_kernel *shp) 516{ 517} 518 519static int cap_shm_associate(struct shmid_kernel *shp, int shmflg) 520{ 521 return 0; 522} 523 524static int cap_shm_shmctl(struct shmid_kernel *shp, int cmd) 525{ 526 return 0; 527} 528 529static int cap_shm_shmat(struct shmid_kernel *shp, char __user *shmaddr, 530 int shmflg) 531{ 532 return 0; 533} 534 535static int cap_sem_alloc_security(struct sem_array *sma) 536{ 537 return 0; 538} 539 540static void cap_sem_free_security(struct sem_array *sma) 541{ 542} 543 544static int cap_sem_associate(struct sem_array *sma, int semflg) 545{ 546 return 0; 547} 548 549static int cap_sem_semctl(struct sem_array *sma, int cmd) 550{ 551 return 0; 552} 553 554static int cap_sem_semop(struct sem_array *sma, struct sembuf *sops, 555 unsigned nsops, int alter) 556{ 557 return 0; 558} 559 560#ifdef CONFIG_SECURITY_NETWORK 561static int cap_unix_stream_connect(struct sock *sock, struct sock *other, 562 struct sock *newsk) 563{ 564 return 0; 565} 566 567static int cap_unix_may_send(struct socket *sock, struct socket *other) 568{ 569 return 0; 570} 571 572static int cap_socket_create(int family, int type, int protocol, int kern) 573{ 574 return 0; 575} 576 577static int cap_socket_post_create(struct socket *sock, int family, int type, 578 int protocol, int kern) 579{ 580 return 0; 581} 582 583static int cap_socket_bind(struct socket *sock, struct sockaddr *address, 584 int addrlen) 585{ 586 return 0; 587} 588 589static int cap_socket_connect(struct socket *sock, struct sockaddr *address, 590 int addrlen) 591{ 592 return 0; 593} 594 595static int cap_socket_listen(struct socket *sock, int backlog) 596{ 597 return 0; 598} 599 600static int cap_socket_accept(struct socket *sock, struct socket *newsock) 601{ 602 return 0; 603} 604 605static int cap_socket_sendmsg(struct socket *sock, struct msghdr *msg, int size) 606{ 607 return 0; 608} 609 610static int cap_socket_recvmsg(struct socket *sock, struct msghdr *msg, 611 int size, int flags) 612{ 613 return 0; 614} 615 616static int cap_socket_getsockname(struct socket *sock) 617{ 618 return 0; 619} 620 621static int cap_socket_getpeername(struct socket *sock) 622{ 623 return 0; 624} 625 626static int cap_socket_setsockopt(struct socket *sock, int level, int optname) 627{ 628 return 0; 629} 630 631static int cap_socket_getsockopt(struct socket *sock, int level, int optname) 632{ 633 return 0; 634} 635 636static int cap_socket_shutdown(struct socket *sock, int how) 637{ 638 return 0; 639} 640 641static int cap_socket_sock_rcv_skb(struct sock *sk, struct sk_buff *skb) 642{ 643 return 0; 644} 645 646static int cap_socket_getpeersec_stream(struct socket *sock, 647 char __user *optval, 648 int __user *optlen, unsigned len) 649{ 650 return -ENOPROTOOPT; 651} 652 653static int cap_socket_getpeersec_dgram(struct socket *sock, 654 struct sk_buff *skb, u32 *secid) 655{ 656 return -ENOPROTOOPT; 657} 658 659static int cap_sk_alloc_security(struct sock *sk, int family, gfp_t priority) 660{ 661 return 0; 662} 663 664static void cap_sk_free_security(struct sock *sk) 665{ 666} 667 668static void cap_sk_clone_security(const struct sock *sk, struct sock *newsk) 669{ 670} 671 672static void cap_sk_getsecid(struct sock *sk, u32 *secid) 673{ 674} 675 676static void cap_sock_graft(struct sock *sk, struct socket *parent) 677{ 678} 679 680static int cap_inet_conn_request(struct sock *sk, struct sk_buff *skb, 681 struct request_sock *req) 682{ 683 return 0; 684} 685 686static void cap_inet_csk_clone(struct sock *newsk, 687 const struct request_sock *req) 688{ 689} 690 691static void cap_inet_conn_established(struct sock *sk, struct sk_buff *skb) 692{ 693} 694 695static int cap_secmark_relabel_packet(u32 secid) 696{ 697 return 0; 698} 699 700static void cap_secmark_refcount_inc(void) 701{ 702} 703 704static void cap_secmark_refcount_dec(void) 705{ 706} 707 708static void cap_req_classify_flow(const struct request_sock *req, 709 struct flowi *fl) 710{ 711} 712 713static int cap_tun_dev_alloc_security(void **security) 714{ 715 return 0; 716} 717 718static void cap_tun_dev_free_security(void *security) 719{ 720} 721 722static int cap_tun_dev_create(void) 723{ 724 return 0; 725} 726 727static int cap_tun_dev_attach_queue(void *security) 728{ 729 return 0; 730} 731 732static int cap_tun_dev_attach(struct sock *sk, void *security) 733{ 734 return 0; 735} 736 737static int cap_tun_dev_open(void *security) 738{ 739 return 0; 740} 741 742static void cap_skb_owned_by(struct sk_buff *skb, struct sock *sk) 743{ 744} 745 746#endif /* CONFIG_SECURITY_NETWORK */ 747 748#ifdef CONFIG_SECURITY_NETWORK_XFRM 749static int cap_xfrm_policy_alloc_security(struct xfrm_sec_ctx **ctxp, 750 struct xfrm_user_sec_ctx *sec_ctx) 751{ 752 return 0; 753} 754 755static int cap_xfrm_policy_clone_security(struct xfrm_sec_ctx *old_ctx, 756 struct xfrm_sec_ctx **new_ctxp) 757{ 758 return 0; 759} 760 761static void cap_xfrm_policy_free_security(struct xfrm_sec_ctx *ctx) 762{ 763} 764 765static int cap_xfrm_policy_delete_security(struct xfrm_sec_ctx *ctx) 766{ 767 return 0; 768} 769 770static int cap_xfrm_state_alloc_security(struct xfrm_state *x, 771 struct xfrm_user_sec_ctx *sec_ctx, 772 u32 secid) 773{ 774 return 0; 775} 776 777static void cap_xfrm_state_free_security(struct xfrm_state *x) 778{ 779} 780 781static int cap_xfrm_state_delete_security(struct xfrm_state *x) 782{ 783 return 0; 784} 785 786static int cap_xfrm_policy_lookup(struct xfrm_sec_ctx *ctx, u32 sk_sid, u8 dir) 787{ 788 return 0; 789} 790 791static int cap_xfrm_state_pol_flow_match(struct xfrm_state *x, 792 struct xfrm_policy *xp, 793 const struct flowi *fl) 794{ 795 return 1; 796} 797 798static int cap_xfrm_decode_session(struct sk_buff *skb, u32 *fl, int ckall) 799{ 800 return 0; 801} 802 803#endif /* CONFIG_SECURITY_NETWORK_XFRM */ 804static void cap_d_instantiate(struct dentry *dentry, struct inode *inode) 805{ 806} 807 808static int cap_getprocattr(struct task_struct *p, char *name, char **value) 809{ 810 return -EINVAL; 811} 812 813static int cap_setprocattr(struct task_struct *p, char *name, void *value, 814 size_t size) 815{ 816 return -EINVAL; 817} 818 819static int cap_secid_to_secctx(u32 secid, char **secdata, u32 *seclen) 820{ 821 return -EOPNOTSUPP; 822} 823 824static int cap_secctx_to_secid(const char *secdata, u32 seclen, u32 *secid) 825{ 826 *secid = 0; 827 return 0; 828} 829 830static void cap_release_secctx(char *secdata, u32 seclen) 831{ 832} 833 834static int cap_inode_notifysecctx(struct inode *inode, void *ctx, u32 ctxlen) 835{ 836 return 0; 837} 838 839static int cap_inode_setsecctx(struct dentry *dentry, void *ctx, u32 ctxlen) 840{ 841 return 0; 842} 843 844static int cap_inode_getsecctx(struct inode *inode, void **ctx, u32 *ctxlen) 845{ 846 return 0; 847} 848#ifdef CONFIG_KEYS 849static int cap_key_alloc(struct key *key, const struct cred *cred, 850 unsigned long flags) 851{ 852 return 0; 853} 854 855static void cap_key_free(struct key *key) 856{ 857} 858 859static int cap_key_permission(key_ref_t key_ref, const struct cred *cred, 860 key_perm_t perm) 861{ 862 return 0; 863} 864 865static int cap_key_getsecurity(struct key *key, char **_buffer) 866{ 867 *_buffer = NULL; 868 return 0; 869} 870 871#endif /* CONFIG_KEYS */ 872 873#ifdef CONFIG_AUDIT 874static int cap_audit_rule_init(u32 field, u32 op, char *rulestr, void **lsmrule) 875{ 876 return 0; 877} 878 879static int cap_audit_rule_known(struct audit_krule *krule) 880{ 881 return 0; 882} 883 884static int cap_audit_rule_match(u32 secid, u32 field, u32 op, void *lsmrule, 885 struct audit_context *actx) 886{ 887 return 0; 888} 889 890static void cap_audit_rule_free(void *lsmrule) 891{ 892} 893#endif /* CONFIG_AUDIT */ 894 895#define set_to_cap_if_null(ops, function) \ 896 do { \ 897 if (!ops->function) { \ 898 ops->function = cap_##function; \ 899 pr_debug("Had to override the " #function \ 900 " security operation with the default.\n");\ 901 } \ 902 } while (0) 903 904void __init security_fixup_ops(struct security_operations *ops) 905{ 906 set_to_cap_if_null(ops, ptrace_access_check); 907 set_to_cap_if_null(ops, ptrace_traceme); 908 set_to_cap_if_null(ops, capget); 909 set_to_cap_if_null(ops, capset); 910 set_to_cap_if_null(ops, capable); 911 set_to_cap_if_null(ops, quotactl); 912 set_to_cap_if_null(ops, quota_on); 913 set_to_cap_if_null(ops, syslog); 914 set_to_cap_if_null(ops, settime); 915 set_to_cap_if_null(ops, vm_enough_memory); 916 set_to_cap_if_null(ops, bprm_set_creds); 917 set_to_cap_if_null(ops, bprm_committing_creds); 918 set_to_cap_if_null(ops, bprm_committed_creds); 919 set_to_cap_if_null(ops, bprm_check_security); 920 set_to_cap_if_null(ops, bprm_secureexec); 921 set_to_cap_if_null(ops, sb_alloc_security); 922 set_to_cap_if_null(ops, sb_free_security); 923 set_to_cap_if_null(ops, sb_copy_data); 924 set_to_cap_if_null(ops, sb_remount); 925 set_to_cap_if_null(ops, sb_kern_mount); 926 set_to_cap_if_null(ops, sb_show_options); 927 set_to_cap_if_null(ops, sb_statfs); 928 set_to_cap_if_null(ops, sb_mount); 929 set_to_cap_if_null(ops, sb_umount); 930 set_to_cap_if_null(ops, sb_pivotroot); 931 set_to_cap_if_null(ops, sb_set_mnt_opts); 932 set_to_cap_if_null(ops, sb_clone_mnt_opts); 933 set_to_cap_if_null(ops, sb_parse_opts_str); 934 set_to_cap_if_null(ops, inode_alloc_security); 935 set_to_cap_if_null(ops, inode_free_security); 936 set_to_cap_if_null(ops, inode_init_security); 937 set_to_cap_if_null(ops, inode_create); 938 set_to_cap_if_null(ops, inode_link); 939 set_to_cap_if_null(ops, inode_unlink); 940 set_to_cap_if_null(ops, inode_symlink); 941 set_to_cap_if_null(ops, inode_mkdir); 942 set_to_cap_if_null(ops, inode_rmdir); 943 set_to_cap_if_null(ops, inode_mknod); 944 set_to_cap_if_null(ops, inode_rename); 945 set_to_cap_if_null(ops, inode_readlink); 946 set_to_cap_if_null(ops, inode_follow_link); 947 set_to_cap_if_null(ops, inode_permission); 948 set_to_cap_if_null(ops, inode_setattr); 949 set_to_cap_if_null(ops, inode_getattr); 950 set_to_cap_if_null(ops, inode_setxattr); 951 set_to_cap_if_null(ops, inode_post_setxattr); 952 set_to_cap_if_null(ops, inode_getxattr); 953 set_to_cap_if_null(ops, inode_listxattr); 954 set_to_cap_if_null(ops, inode_removexattr); 955 set_to_cap_if_null(ops, inode_need_killpriv); 956 set_to_cap_if_null(ops, inode_killpriv); 957 set_to_cap_if_null(ops, inode_getsecurity); 958 set_to_cap_if_null(ops, inode_setsecurity); 959 set_to_cap_if_null(ops, inode_listsecurity); 960 set_to_cap_if_null(ops, inode_getsecid); 961#ifdef CONFIG_SECURITY_PATH 962 set_to_cap_if_null(ops, path_mknod); 963 set_to_cap_if_null(ops, path_mkdir); 964 set_to_cap_if_null(ops, path_rmdir); 965 set_to_cap_if_null(ops, path_unlink); 966 set_to_cap_if_null(ops, path_symlink); 967 set_to_cap_if_null(ops, path_link); 968 set_to_cap_if_null(ops, path_rename); 969 set_to_cap_if_null(ops, path_truncate); 970 set_to_cap_if_null(ops, path_chmod); 971 set_to_cap_if_null(ops, path_chown); 972 set_to_cap_if_null(ops, path_chroot); 973#endif 974 set_to_cap_if_null(ops, file_permission); 975 set_to_cap_if_null(ops, file_alloc_security); 976 set_to_cap_if_null(ops, file_free_security); 977 set_to_cap_if_null(ops, file_ioctl); 978 set_to_cap_if_null(ops, mmap_addr); 979 set_to_cap_if_null(ops, mmap_file); 980 set_to_cap_if_null(ops, file_mprotect); 981 set_to_cap_if_null(ops, file_lock); 982 set_to_cap_if_null(ops, file_fcntl); 983 set_to_cap_if_null(ops, file_set_fowner); 984 set_to_cap_if_null(ops, file_send_sigiotask); 985 set_to_cap_if_null(ops, file_receive); 986 set_to_cap_if_null(ops, file_open); 987 set_to_cap_if_null(ops, task_create); 988 set_to_cap_if_null(ops, task_free); 989 set_to_cap_if_null(ops, cred_alloc_blank); 990 set_to_cap_if_null(ops, cred_free); 991 set_to_cap_if_null(ops, cred_prepare); 992 set_to_cap_if_null(ops, cred_transfer); 993 set_to_cap_if_null(ops, kernel_act_as); 994 set_to_cap_if_null(ops, kernel_create_files_as); 995 set_to_cap_if_null(ops, kernel_module_request); 996 set_to_cap_if_null(ops, kernel_module_from_file); 997 set_to_cap_if_null(ops, task_fix_setuid); 998 set_to_cap_if_null(ops, task_setpgid); 999 set_to_cap_if_null(ops, task_getpgid); 1000 set_to_cap_if_null(ops, task_getsid); 1001 set_to_cap_if_null(ops, task_getsecid); 1002 set_to_cap_if_null(ops, task_setnice); 1003 set_to_cap_if_null(ops, task_setioprio); 1004 set_to_cap_if_null(ops, task_getioprio); 1005 set_to_cap_if_null(ops, task_setrlimit); 1006 set_to_cap_if_null(ops, task_setscheduler); 1007 set_to_cap_if_null(ops, task_getscheduler); 1008 set_to_cap_if_null(ops, task_movememory); 1009 set_to_cap_if_null(ops, task_wait); 1010 set_to_cap_if_null(ops, task_kill); 1011 set_to_cap_if_null(ops, task_prctl); 1012 set_to_cap_if_null(ops, task_to_inode); 1013 set_to_cap_if_null(ops, ipc_permission); 1014 set_to_cap_if_null(ops, ipc_getsecid); 1015 set_to_cap_if_null(ops, msg_msg_alloc_security); 1016 set_to_cap_if_null(ops, msg_msg_free_security); 1017 set_to_cap_if_null(ops, msg_queue_alloc_security); 1018 set_to_cap_if_null(ops, msg_queue_free_security); 1019 set_to_cap_if_null(ops, msg_queue_associate); 1020 set_to_cap_if_null(ops, msg_queue_msgctl); 1021 set_to_cap_if_null(ops, msg_queue_msgsnd); 1022 set_to_cap_if_null(ops, msg_queue_msgrcv); 1023 set_to_cap_if_null(ops, shm_alloc_security); 1024 set_to_cap_if_null(ops, shm_free_security); 1025 set_to_cap_if_null(ops, shm_associate); 1026 set_to_cap_if_null(ops, shm_shmctl); 1027 set_to_cap_if_null(ops, shm_shmat); 1028 set_to_cap_if_null(ops, sem_alloc_security); 1029 set_to_cap_if_null(ops, sem_free_security); 1030 set_to_cap_if_null(ops, sem_associate); 1031 set_to_cap_if_null(ops, sem_semctl); 1032 set_to_cap_if_null(ops, sem_semop); 1033 set_to_cap_if_null(ops, netlink_send); 1034 set_to_cap_if_null(ops, d_instantiate); 1035 set_to_cap_if_null(ops, getprocattr); 1036 set_to_cap_if_null(ops, setprocattr); 1037 set_to_cap_if_null(ops, secid_to_secctx); 1038 set_to_cap_if_null(ops, secctx_to_secid); 1039 set_to_cap_if_null(ops, release_secctx); 1040 set_to_cap_if_null(ops, inode_notifysecctx); 1041 set_to_cap_if_null(ops, inode_setsecctx); 1042 set_to_cap_if_null(ops, inode_getsecctx); 1043#ifdef CONFIG_SECURITY_NETWORK 1044 set_to_cap_if_null(ops, unix_stream_connect); 1045 set_to_cap_if_null(ops, unix_may_send); 1046 set_to_cap_if_null(ops, socket_create); 1047 set_to_cap_if_null(ops, socket_post_create); 1048 set_to_cap_if_null(ops, socket_bind); 1049 set_to_cap_if_null(ops, socket_connect); 1050 set_to_cap_if_null(ops, socket_listen); 1051 set_to_cap_if_null(ops, socket_accept); 1052 set_to_cap_if_null(ops, socket_sendmsg); 1053 set_to_cap_if_null(ops, socket_recvmsg); 1054 set_to_cap_if_null(ops, socket_getsockname); 1055 set_to_cap_if_null(ops, socket_getpeername); 1056 set_to_cap_if_null(ops, socket_setsockopt); 1057 set_to_cap_if_null(ops, socket_getsockopt); 1058 set_to_cap_if_null(ops, socket_shutdown); 1059 set_to_cap_if_null(ops, socket_sock_rcv_skb); 1060 set_to_cap_if_null(ops, socket_getpeersec_stream); 1061 set_to_cap_if_null(ops, socket_getpeersec_dgram); 1062 set_to_cap_if_null(ops, sk_alloc_security); 1063 set_to_cap_if_null(ops, sk_free_security); 1064 set_to_cap_if_null(ops, sk_clone_security); 1065 set_to_cap_if_null(ops, sk_getsecid); 1066 set_to_cap_if_null(ops, sock_graft); 1067 set_to_cap_if_null(ops, inet_conn_request); 1068 set_to_cap_if_null(ops, inet_csk_clone); 1069 set_to_cap_if_null(ops, inet_conn_established); 1070 set_to_cap_if_null(ops, secmark_relabel_packet); 1071 set_to_cap_if_null(ops, secmark_refcount_inc); 1072 set_to_cap_if_null(ops, secmark_refcount_dec); 1073 set_to_cap_if_null(ops, req_classify_flow); 1074 set_to_cap_if_null(ops, tun_dev_alloc_security); 1075 set_to_cap_if_null(ops, tun_dev_free_security); 1076 set_to_cap_if_null(ops, tun_dev_create); 1077 set_to_cap_if_null(ops, tun_dev_open); 1078 set_to_cap_if_null(ops, tun_dev_attach_queue); 1079 set_to_cap_if_null(ops, tun_dev_attach); 1080 set_to_cap_if_null(ops, skb_owned_by); 1081#endif /* CONFIG_SECURITY_NETWORK */ 1082#ifdef CONFIG_SECURITY_NETWORK_XFRM 1083 set_to_cap_if_null(ops, xfrm_policy_alloc_security); 1084 set_to_cap_if_null(ops, xfrm_policy_clone_security); 1085 set_to_cap_if_null(ops, xfrm_policy_free_security); 1086 set_to_cap_if_null(ops, xfrm_policy_delete_security); 1087 set_to_cap_if_null(ops, xfrm_state_alloc_security); 1088 set_to_cap_if_null(ops, xfrm_state_free_security); 1089 set_to_cap_if_null(ops, xfrm_state_delete_security); 1090 set_to_cap_if_null(ops, xfrm_policy_lookup); 1091 set_to_cap_if_null(ops, xfrm_state_pol_flow_match); 1092 set_to_cap_if_null(ops, xfrm_decode_session); 1093#endif /* CONFIG_SECURITY_NETWORK_XFRM */ 1094#ifdef CONFIG_KEYS 1095 set_to_cap_if_null(ops, key_alloc); 1096 set_to_cap_if_null(ops, key_free); 1097 set_to_cap_if_null(ops, key_permission); 1098 set_to_cap_if_null(ops, key_getsecurity); 1099#endif /* CONFIG_KEYS */ 1100#ifdef CONFIG_AUDIT 1101 set_to_cap_if_null(ops, audit_rule_init); 1102 set_to_cap_if_null(ops, audit_rule_known); 1103 set_to_cap_if_null(ops, audit_rule_match); 1104 set_to_cap_if_null(ops, audit_rule_free); 1105#endif 1106}