aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAl Viro <viro@ftp.linux.org.uk>2006-09-22 19:10:18 -0400
committerLinus Torvalds <torvalds@g5.osdl.org>2006-09-22 20:48:56 -0400
commita83fbf635992442edf6aa3252e4008d4a08edf12 (patch)
treedd31c01247cea278a77dcb88732d19c92b9bca77
parentdb392219c5f572610645696e3672f6ea38783a65 (diff)
[PATCH] fix missing ifdefs in syscall classes hookup for generic targets
several targets have no ....at() family and m32r calls its only chown variant chown32(), with __NR_chown being undefined. creat(2) is also absent in some targets. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--include/asm-generic/audit_change_attr.h4
-rw-r--r--include/asm-generic/audit_dir_write.h4
-rw-r--r--lib/audit.c2
3 files changed, 10 insertions, 0 deletions
diff --git a/include/asm-generic/audit_change_attr.h b/include/asm-generic/audit_change_attr.h
index cb05bf69745a..50764550a60c 100644
--- a/include/asm-generic/audit_change_attr.h
+++ b/include/asm-generic/audit_change_attr.h
@@ -1,16 +1,20 @@
1__NR_chmod, 1__NR_chmod,
2__NR_fchmod, 2__NR_fchmod,
3#ifdef __NR_chown
3__NR_chown, 4__NR_chown,
4__NR_fchown, 5__NR_fchown,
5__NR_lchown, 6__NR_lchown,
7#endif
6__NR_setxattr, 8__NR_setxattr,
7__NR_lsetxattr, 9__NR_lsetxattr,
8__NR_fsetxattr, 10__NR_fsetxattr,
9__NR_removexattr, 11__NR_removexattr,
10__NR_lremovexattr, 12__NR_lremovexattr,
11__NR_fremovexattr, 13__NR_fremovexattr,
14#ifdef __NR_fchownat
12__NR_fchownat, 15__NR_fchownat,
13__NR_fchmodat, 16__NR_fchmodat,
17#endif
14#ifdef __NR_chown32 18#ifdef __NR_chown32
15__NR_chown32, 19__NR_chown32,
16__NR_fchown32, 20__NR_fchown32,
diff --git a/include/asm-generic/audit_dir_write.h b/include/asm-generic/audit_dir_write.h
index 161a7a58fbab..6621bd82cbe8 100644
--- a/include/asm-generic/audit_dir_write.h
+++ b/include/asm-generic/audit_dir_write.h
@@ -1,14 +1,18 @@
1__NR_rename, 1__NR_rename,
2__NR_mkdir, 2__NR_mkdir,
3__NR_rmdir, 3__NR_rmdir,
4#ifdef __NR_creat
4__NR_creat, 5__NR_creat,
6#endif
5__NR_link, 7__NR_link,
6__NR_unlink, 8__NR_unlink,
7__NR_symlink, 9__NR_symlink,
8__NR_mknod, 10__NR_mknod,
11#ifdef __NR_mkdirat
9__NR_mkdirat, 12__NR_mkdirat,
10__NR_mknodat, 13__NR_mknodat,
11__NR_unlinkat, 14__NR_unlinkat,
12__NR_renameat, 15__NR_renameat,
13__NR_linkat, 16__NR_linkat,
14__NR_symlinkat, 17__NR_symlinkat,
18#endif
diff --git a/lib/audit.c b/lib/audit.c
index 8c21625ef938..3b1289fadf06 100644
--- a/lib/audit.c
+++ b/lib/audit.c
@@ -28,8 +28,10 @@ int audit_classify_syscall(int abi, unsigned syscall)
28 switch(syscall) { 28 switch(syscall) {
29 case __NR_open: 29 case __NR_open:
30 return 2; 30 return 2;
31#ifdef __NR_openat
31 case __NR_openat: 32 case __NR_openat:
32 return 3; 33 return 3;
34#endif
33#ifdef __NR_socketcall 35#ifdef __NR_socketcall
34 case __NR_socketcall: 36 case __NR_socketcall:
35 return 4; 37 return 4;