1 |
This is TOMOYO Linux patch for VineLinux 4.2. |
This is TOMOYO Linux patch for VineLinux 4.2. |
2 |
|
|
3 |
Source code for this patch is http://updates.vinelinux.org/Vine-4.2/updates/SRPMS/kernel-2.6.16-76.39vl4.src.rpm |
Source code for this patch is http://updates.vinelinux.org/Vine-4.2/updates/SRPMS/kernel-2.6.16-76.40vl4.src.rpm |
4 |
--- |
--- |
5 |
arch/alpha/kernel/ptrace.c | 9 +++ |
arch/alpha/kernel/ptrace.c | 9 +++ |
6 |
arch/ia64/ia32/sys_ia32.c | 9 +++ |
arch/ia64/ia32/sys_ia32.c | 9 +++ |
46 |
net/unix/af_unix.c | 15 +++++ |
net/unix/af_unix.c | 15 +++++ |
47 |
42 files changed, 703 insertions(+), 10 deletions(-) |
42 files changed, 703 insertions(+), 10 deletions(-) |
48 |
|
|
49 |
--- linux-2.6.16-76.39vl4.orig/arch/alpha/kernel/ptrace.c |
--- linux-2.6.16-76.40vl4.orig/arch/alpha/kernel/ptrace.c |
50 |
+++ linux-2.6.16-76.39vl4/arch/alpha/kernel/ptrace.c |
+++ linux-2.6.16-76.40vl4/arch/alpha/kernel/ptrace.c |
51 |
@@ -20,6 +20,9 @@ |
@@ -20,6 +20,9 @@ |
52 |
#include <asm/pgtable.h> |
#include <asm/pgtable.h> |
53 |
#include <asm/system.h> |
#include <asm/system.h> |
71 |
|
|
72 |
lock_kernel(); |
lock_kernel(); |
73 |
DBG(DBG_MEM, ("request=%ld pid=%ld addr=0x%lx data=0x%lx\n", |
DBG(DBG_MEM, ("request=%ld pid=%ld addr=0x%lx data=0x%lx\n", |
74 |
--- linux-2.6.16-76.39vl4.orig/arch/ia64/ia32/sys_ia32.c |
--- linux-2.6.16-76.40vl4.orig/arch/ia64/ia32/sys_ia32.c |
75 |
+++ linux-2.6.16-76.39vl4/arch/ia64/ia32/sys_ia32.c |
+++ linux-2.6.16-76.40vl4/arch/ia64/ia32/sys_ia32.c |
76 |
@@ -58,6 +58,9 @@ |
@@ -58,6 +58,9 @@ |
77 |
#include <asm/types.h> |
#include <asm/types.h> |
78 |
#include <asm/uaccess.h> |
#include <asm/uaccess.h> |
96 |
|
|
97 |
lock_kernel(); |
lock_kernel(); |
98 |
if (request == PTRACE_TRACEME) { |
if (request == PTRACE_TRACEME) { |
99 |
--- linux-2.6.16-76.39vl4.orig/arch/ia64/kernel/ptrace.c |
--- linux-2.6.16-76.40vl4.orig/arch/ia64/kernel/ptrace.c |
100 |
+++ linux-2.6.16-76.39vl4/arch/ia64/kernel/ptrace.c |
+++ linux-2.6.16-76.40vl4/arch/ia64/kernel/ptrace.c |
101 |
@@ -29,6 +29,9 @@ |
@@ -29,6 +29,9 @@ |
102 |
#ifdef CONFIG_PERFMON |
#ifdef CONFIG_PERFMON |
103 |
#include <asm/perfmon.h> |
#include <asm/perfmon.h> |
121 |
|
|
122 |
lock_kernel(); |
lock_kernel(); |
123 |
ret = -EPERM; |
ret = -EPERM; |
124 |
--- linux-2.6.16-76.39vl4.orig/arch/m32r/kernel/ptrace.c |
--- linux-2.6.16-76.40vl4.orig/arch/m32r/kernel/ptrace.c |
125 |
+++ linux-2.6.16-76.39vl4/arch/m32r/kernel/ptrace.c |
+++ linux-2.6.16-76.40vl4/arch/m32r/kernel/ptrace.c |
126 |
@@ -33,6 +33,9 @@ |
@@ -33,6 +33,9 @@ |
127 |
#include <asm/system.h> |
#include <asm/system.h> |
128 |
#include <asm/processor.h> |
#include <asm/processor.h> |
146 |
|
|
147 |
lock_kernel(); |
lock_kernel(); |
148 |
if (request == PTRACE_TRACEME) { |
if (request == PTRACE_TRACEME) { |
149 |
--- linux-2.6.16-76.39vl4.orig/arch/mips/kernel/ptrace32.c |
--- linux-2.6.16-76.40vl4.orig/arch/mips/kernel/ptrace32.c |
150 |
+++ linux-2.6.16-76.39vl4/arch/mips/kernel/ptrace32.c |
+++ linux-2.6.16-76.40vl4/arch/mips/kernel/ptrace32.c |
151 |
@@ -35,6 +35,9 @@ |
@@ -35,6 +35,9 @@ |
152 |
#include <asm/system.h> |
#include <asm/system.h> |
153 |
#include <asm/uaccess.h> |
#include <asm/uaccess.h> |
171 |
|
|
172 |
#if 0 |
#if 0 |
173 |
printk("ptrace(r=%d,pid=%d,addr=%08lx,data=%08lx)\n", |
printk("ptrace(r=%d,pid=%d,addr=%08lx,data=%08lx)\n", |
174 |
--- linux-2.6.16-76.39vl4.orig/arch/powerpc/kernel/ptrace32.c |
--- linux-2.6.16-76.40vl4.orig/arch/powerpc/kernel/ptrace32.c |
175 |
+++ linux-2.6.16-76.39vl4/arch/powerpc/kernel/ptrace32.c |
+++ linux-2.6.16-76.40vl4/arch/powerpc/kernel/ptrace32.c |
176 |
@@ -33,6 +33,9 @@ |
@@ -33,6 +33,9 @@ |
177 |
#include <asm/page.h> |
#include <asm/page.h> |
178 |
#include <asm/pgtable.h> |
#include <asm/pgtable.h> |
196 |
|
|
197 |
lock_kernel(); |
lock_kernel(); |
198 |
if (request == PTRACE_TRACEME) { |
if (request == PTRACE_TRACEME) { |
199 |
--- linux-2.6.16-76.39vl4.orig/arch/s390/kernel/ptrace.c |
--- linux-2.6.16-76.40vl4.orig/arch/s390/kernel/ptrace.c |
200 |
+++ linux-2.6.16-76.39vl4/arch/s390/kernel/ptrace.c |
+++ linux-2.6.16-76.40vl4/arch/s390/kernel/ptrace.c |
201 |
@@ -41,6 +41,9 @@ |
@@ -41,6 +41,9 @@ |
202 |
#include <asm/system.h> |
#include <asm/system.h> |
203 |
#include <asm/uaccess.h> |
#include <asm/uaccess.h> |
221 |
lock_kernel(); |
lock_kernel(); |
222 |
if (request == PTRACE_TRACEME) { |
if (request == PTRACE_TRACEME) { |
223 |
ret = ptrace_traceme(); |
ret = ptrace_traceme(); |
224 |
--- linux-2.6.16-76.39vl4.orig/arch/sparc/kernel/ptrace.c |
--- linux-2.6.16-76.40vl4.orig/arch/sparc/kernel/ptrace.c |
225 |
+++ linux-2.6.16-76.39vl4/arch/sparc/kernel/ptrace.c |
+++ linux-2.6.16-76.40vl4/arch/sparc/kernel/ptrace.c |
226 |
@@ -23,6 +23,9 @@ |
@@ -23,6 +23,9 @@ |
227 |
#include <asm/pgtable.h> |
#include <asm/pgtable.h> |
228 |
#include <asm/system.h> |
#include <asm/system.h> |
248 |
|
|
249 |
lock_kernel(); |
lock_kernel(); |
250 |
#ifdef DEBUG_PTRACE |
#ifdef DEBUG_PTRACE |
251 |
--- linux-2.6.16-76.39vl4.orig/arch/sparc64/kernel/ptrace.c |
--- linux-2.6.16-76.40vl4.orig/arch/sparc64/kernel/ptrace.c |
252 |
+++ linux-2.6.16-76.39vl4/arch/sparc64/kernel/ptrace.c |
+++ linux-2.6.16-76.40vl4/arch/sparc64/kernel/ptrace.c |
253 |
@@ -32,6 +32,9 @@ |
@@ -32,6 +32,9 @@ |
254 |
#include <asm/spitfire.h> |
#include <asm/spitfire.h> |
255 |
#include <asm/page.h> |
#include <asm/page.h> |
275 |
|
|
276 |
if (test_thread_flag(TIF_32BIT)) { |
if (test_thread_flag(TIF_32BIT)) { |
277 |
addr &= 0xffffffffUL; |
addr &= 0xffffffffUL; |
278 |
--- linux-2.6.16-76.39vl4.orig/arch/x86_64/ia32/ptrace32.c |
--- linux-2.6.16-76.40vl4.orig/arch/x86_64/ia32/ptrace32.c |
279 |
+++ linux-2.6.16-76.39vl4/arch/x86_64/ia32/ptrace32.c |
+++ linux-2.6.16-76.40vl4/arch/x86_64/ia32/ptrace32.c |
280 |
@@ -27,6 +27,9 @@ |
@@ -27,6 +27,9 @@ |
281 |
#include <asm/debugreg.h> |
#include <asm/debugreg.h> |
282 |
#include <asm/i387.h> |
#include <asm/i387.h> |
300 |
|
|
301 |
switch (request) { |
switch (request) { |
302 |
default: |
default: |
303 |
--- linux-2.6.16-76.39vl4.orig/fs/Kconfig |
--- linux-2.6.16-76.40vl4.orig/fs/Kconfig |
304 |
+++ linux-2.6.16-76.39vl4/fs/Kconfig |
+++ linux-2.6.16-76.40vl4/fs/Kconfig |
305 |
@@ -1906,5 +1906,7 @@ endmenu |
@@ -1906,5 +1906,7 @@ endmenu |
306 |
|
|
307 |
source "fs/nls/Kconfig" |
source "fs/nls/Kconfig" |
310 |
+ |
+ |
311 |
endmenu |
endmenu |
312 |
|
|
313 |
--- linux-2.6.16-76.39vl4.orig/fs/Makefile |
--- linux-2.6.16-76.40vl4.orig/fs/Makefile |
314 |
+++ linux-2.6.16-76.39vl4/fs/Makefile |
+++ linux-2.6.16-76.40vl4/fs/Makefile |
315 |
@@ -106,3 +106,5 @@ obj-$(CONFIG_CONFIGFS_FS) += configfs/ |
@@ -106,3 +106,5 @@ obj-$(CONFIG_CONFIGFS_FS) += configfs/ |
316 |
obj-$(CONFIG_OCFS2_FS) += ocfs2/ |
obj-$(CONFIG_OCFS2_FS) += ocfs2/ |
317 |
obj-$(CONFIG_SUPERMOUNT) += supermount/ |
obj-$(CONFIG_SUPERMOUNT) += supermount/ |
318 |
obj-$(CONFIG_UNION_FS) += unionfs/ |
obj-$(CONFIG_UNION_FS) += unionfs/ |
319 |
+ |
+ |
320 |
+include $(srctree)/fs/Makefile-2.6.ccs |
+include $(srctree)/fs/Makefile-2.6.ccs |
321 |
--- linux-2.6.16-76.39vl4.orig/fs/attr.c |
--- linux-2.6.16-76.40vl4.orig/fs/attr.c |
322 |
+++ linux-2.6.16-76.39vl4/fs/attr.c |
+++ linux-2.6.16-76.40vl4/fs/attr.c |
323 |
@@ -15,6 +15,9 @@ |
@@ -15,6 +15,9 @@ |
324 |
#include <linux/fcntl.h> |
#include <linux/fcntl.h> |
325 |
#include <linux/quotaops.h> |
#include <linux/quotaops.h> |
359 |
if (!error) { |
if (!error) { |
360 |
if ((ia_valid & ATTR_UID && attr->ia_uid != inode->i_uid) || |
if ((ia_valid & ATTR_UID && attr->ia_uid != inode->i_uid) || |
361 |
(ia_valid & ATTR_GID && attr->ia_gid != inode->i_gid)) |
(ia_valid & ATTR_GID && attr->ia_gid != inode->i_gid)) |
362 |
--- linux-2.6.16-76.39vl4.orig/fs/compat.c |
--- linux-2.6.16-76.40vl4.orig/fs/compat.c |
363 |
+++ linux-2.6.16-76.39vl4/fs/compat.c |
+++ linux-2.6.16-76.40vl4/fs/compat.c |
364 |
@@ -52,6 +52,9 @@ |
@@ -52,6 +52,9 @@ |
365 |
#include <asm/uaccess.h> |
#include <asm/uaccess.h> |
366 |
#include <asm/mmu_context.h> |
#include <asm/mmu_context.h> |
393 |
if (retval >= 0) { |
if (retval >= 0) { |
394 |
free_arg_pages(bprm); |
free_arg_pages(bprm); |
395 |
|
|
396 |
--- linux-2.6.16-76.39vl4.orig/fs/exec.c |
--- linux-2.6.16-76.40vl4.orig/fs/exec.c |
397 |
+++ linux-2.6.16-76.39vl4/fs/exec.c |
+++ linux-2.6.16-76.40vl4/fs/exec.c |
398 |
@@ -57,6 +57,10 @@ |
@@ -57,6 +57,10 @@ |
399 |
#include <linux/kmod.h> |
#include <linux/kmod.h> |
400 |
#endif |
#endif |
444 |
if (retval >= 0) { |
if (retval >= 0) { |
445 |
free_arg_pages(bprm); |
free_arg_pages(bprm); |
446 |
|
|
447 |
--- linux-2.6.16-76.39vl4.orig/fs/fcntl.c |
--- linux-2.6.16-76.40vl4.orig/fs/fcntl.c |
448 |
+++ linux-2.6.16-76.39vl4/fs/fcntl.c |
+++ linux-2.6.16-76.40vl4/fs/fcntl.c |
449 |
@@ -22,6 +22,9 @@ |
@@ -22,6 +22,9 @@ |
450 |
#include <asm/poll.h> |
#include <asm/poll.h> |
451 |
#include <asm/siginfo.h> |
#include <asm/siginfo.h> |
469 |
/* O_NOATIME can only be set by the owner or superuser */ |
/* O_NOATIME can only be set by the owner or superuser */ |
470 |
if ((arg & O_NOATIME) && !(filp->f_flags & O_NOATIME)) |
if ((arg & O_NOATIME) && !(filp->f_flags & O_NOATIME)) |
471 |
if (current->fsuid != inode->i_uid && !capable(CAP_FOWNER)) |
if (current->fsuid != inode->i_uid && !capable(CAP_FOWNER)) |
472 |
--- linux-2.6.16-76.39vl4.orig/fs/ioctl.c |
--- linux-2.6.16-76.40vl4.orig/fs/ioctl.c |
473 |
+++ linux-2.6.16-76.39vl4/fs/ioctl.c |
+++ linux-2.6.16-76.40vl4/fs/ioctl.c |
474 |
@@ -16,6 +16,9 @@ |
@@ -16,6 +16,9 @@ |
475 |
|
|
476 |
#include <asm/uaccess.h> |
#include <asm/uaccess.h> |
492 |
|
|
493 |
if (filp->f_op->unlocked_ioctl) { |
if (filp->f_op->unlocked_ioctl) { |
494 |
error = filp->f_op->unlocked_ioctl(filp, cmd, arg); |
error = filp->f_op->unlocked_ioctl(filp, cmd, arg); |
495 |
--- linux-2.6.16-76.39vl4.orig/fs/namei.c |
--- linux-2.6.16-76.40vl4.orig/fs/namei.c |
496 |
+++ linux-2.6.16-76.39vl4/fs/namei.c |
+++ linux-2.6.16-76.40vl4/fs/namei.c |
497 |
@@ -37,6 +37,10 @@ |
@@ -37,6 +37,10 @@ |
498 |
|
|
499 |
#define ACC_MODE(x) ("\000\004\002\006"[(x)&O_ACCMODE]) |
#define ACC_MODE(x) ("\000\004\002\006"[(x)&O_ACCMODE]) |
505 |
/* [Feb-1997 T. Schoebel-Theuer] |
/* [Feb-1997 T. Schoebel-Theuer] |
506 |
* Fundamental changes in the pathname lookup mechanisms (namei) |
* Fundamental changes in the pathname lookup mechanisms (namei) |
507 |
* were necessary because of omirr. The reason is that omirr needs |
* were necessary because of omirr. The reason is that omirr needs |
508 |
@@ -1470,6 +1474,13 @@ int vfs_create(struct inode *dir, struct |
@@ -1484,6 +1488,13 @@ int vfs_create(struct inode *dir, struct |
509 |
error = security_inode_create(dir, dentry, mode); |
error = security_inode_create(dir, dentry, mode); |
510 |
if (error) |
if (error) |
511 |
return error; |
return error; |
519 |
DQUOT_INIT(dir); |
DQUOT_INIT(dir); |
520 |
error = dir->i_op->create(dir, dentry, mode, nd); |
error = dir->i_op->create(dir, dentry, mode, nd); |
521 |
if (!error) |
if (!error) |
522 |
@@ -1525,6 +1536,13 @@ int may_open(struct nameidata *nd, int a |
@@ -1539,6 +1550,13 @@ int may_open(struct nameidata *nd, int a |
523 |
if (current->fsuid != inode->i_uid && !capable(CAP_FOWNER)) |
if (current->fsuid != inode->i_uid && !capable(CAP_FOWNER)) |
524 |
return -EPERM; |
return -EPERM; |
525 |
|
|
533 |
/* |
/* |
534 |
* Ensure there are no outstanding leases on the file. |
* Ensure there are no outstanding leases on the file. |
535 |
*/ |
*/ |
536 |
@@ -1556,6 +1574,9 @@ int may_open(struct nameidata *nd, int a |
@@ -1570,6 +1588,9 @@ int may_open(struct nameidata *nd, int a |
537 |
return 0; |
return 0; |
538 |
} |
} |
539 |
|
|
543 |
/* |
/* |
544 |
* open_namei() |
* open_namei() |
545 |
* |
* |
546 |
@@ -1820,6 +1841,16 @@ asmlinkage long sys_mknodat(int dfd, con |
@@ -1834,6 +1855,16 @@ asmlinkage long sys_mknodat(int dfd, con |
547 |
|
|
548 |
if (S_ISDIR(mode)) |
if (S_ISDIR(mode)) |
549 |
return -EPERM; |
return -EPERM; |
560 |
tmp = getname(filename); |
tmp = getname(filename); |
561 |
if (IS_ERR(tmp)) |
if (IS_ERR(tmp)) |
562 |
return PTR_ERR(tmp); |
return PTR_ERR(tmp); |
563 |
@@ -1838,10 +1869,32 @@ asmlinkage long sys_mknodat(int dfd, con |
@@ -1852,10 +1883,32 @@ asmlinkage long sys_mknodat(int dfd, con |
564 |
error = vfs_create(nd.dentry->d_inode,dentry,mode,&nd); |
error = vfs_create(nd.dentry->d_inode,dentry,mode,&nd); |
565 |
break; |
break; |
566 |
case S_IFCHR: case S_IFBLK: |
case S_IFCHR: case S_IFBLK: |
593 |
error = vfs_mknod(nd.dentry->d_inode,dentry,mode,0); |
error = vfs_mknod(nd.dentry->d_inode,dentry,mode,0); |
594 |
break; |
break; |
595 |
case S_IFDIR: |
case S_IFDIR: |
596 |
@@ -1906,6 +1959,13 @@ asmlinkage long sys_mkdirat(int dfd, con |
@@ -1920,6 +1973,13 @@ asmlinkage long sys_mkdirat(int dfd, con |
597 |
if (!IS_ERR(dentry)) { |
if (!IS_ERR(dentry)) { |
598 |
if (!IS_POSIXACL(nd.dentry->d_inode)) |
if (!IS_POSIXACL(nd.dentry->d_inode)) |
599 |
mode &= ~current->fs->umask; |
mode &= ~current->fs->umask; |
607 |
error = vfs_mkdir(nd.dentry->d_inode, dentry, mode); |
error = vfs_mkdir(nd.dentry->d_inode, dentry, mode); |
608 |
dput(dentry); |
dput(dentry); |
609 |
} |
} |
610 |
@@ -2014,6 +2074,13 @@ static long do_rmdir(int dfd, const char |
@@ -2028,6 +2088,13 @@ static long do_rmdir(int dfd, const char |
611 |
dentry = lookup_hash(&nd); |
dentry = lookup_hash(&nd); |
612 |
error = PTR_ERR(dentry); |
error = PTR_ERR(dentry); |
613 |
if (!IS_ERR(dentry)) { |
if (!IS_ERR(dentry)) { |
621 |
error = vfs_rmdir(nd.dentry->d_inode, dentry); |
error = vfs_rmdir(nd.dentry->d_inode, dentry); |
622 |
dput(dentry); |
dput(dentry); |
623 |
} |
} |
624 |
@@ -2073,6 +2140,10 @@ static long do_unlinkat(int dfd, const c |
@@ -2087,6 +2154,10 @@ static long do_unlinkat(int dfd, const c |
625 |
struct dentry *dentry; |
struct dentry *dentry; |
626 |
struct nameidata nd; |
struct nameidata nd; |
627 |
struct inode *inode = NULL; |
struct inode *inode = NULL; |
632 |
|
|
633 |
name = getname(pathname); |
name = getname(pathname); |
634 |
if(IS_ERR(name)) |
if(IS_ERR(name)) |
635 |
@@ -2094,6 +2165,14 @@ static long do_unlinkat(int dfd, const c |
@@ -2108,6 +2179,14 @@ static long do_unlinkat(int dfd, const c |
636 |
inode = dentry->d_inode; |
inode = dentry->d_inode; |
637 |
if (inode) |
if (inode) |
638 |
atomic_inc(&inode->i_count); |
atomic_inc(&inode->i_count); |
647 |
error = vfs_unlink(nd.dentry->d_inode, dentry); |
error = vfs_unlink(nd.dentry->d_inode, dentry); |
648 |
exit2: |
exit2: |
649 |
dput(dentry); |
dput(dentry); |
650 |
@@ -2156,6 +2235,10 @@ asmlinkage long sys_symlinkat(const char |
@@ -2170,6 +2249,10 @@ asmlinkage long sys_symlinkat(const char |
651 |
int error = 0; |
int error = 0; |
652 |
char * from; |
char * from; |
653 |
char * to; |
char * to; |
658 |
|
|
659 |
from = getname(oldname); |
from = getname(oldname); |
660 |
if(IS_ERR(from)) |
if(IS_ERR(from)) |
661 |
@@ -2172,6 +2255,13 @@ asmlinkage long sys_symlinkat(const char |
@@ -2186,6 +2269,13 @@ asmlinkage long sys_symlinkat(const char |
662 |
dentry = lookup_create(&nd, 0); |
dentry = lookup_create(&nd, 0); |
663 |
error = PTR_ERR(dentry); |
error = PTR_ERR(dentry); |
664 |
if (!IS_ERR(dentry)) { |
if (!IS_ERR(dentry)) { |
672 |
error = vfs_symlink(nd.dentry->d_inode, dentry, from, S_IALLUGO); |
error = vfs_symlink(nd.dentry->d_inode, dentry, from, S_IALLUGO); |
673 |
dput(dentry); |
dput(dentry); |
674 |
} |
} |
675 |
@@ -2244,6 +2334,10 @@ asmlinkage long sys_linkat(int olddfd, c |
@@ -2258,6 +2348,10 @@ asmlinkage long sys_linkat(int olddfd, c |
676 |
struct nameidata nd, old_nd; |
struct nameidata nd, old_nd; |
677 |
int error; |
int error; |
678 |
char * to; |
char * to; |
683 |
|
|
684 |
if (flags != 0) |
if (flags != 0) |
685 |
return -EINVAL; |
return -EINVAL; |
686 |
@@ -2264,6 +2358,15 @@ asmlinkage long sys_linkat(int olddfd, c |
@@ -2278,6 +2372,15 @@ asmlinkage long sys_linkat(int olddfd, c |
687 |
new_dentry = lookup_create(&nd, 0); |
new_dentry = lookup_create(&nd, 0); |
688 |
error = PTR_ERR(new_dentry); |
error = PTR_ERR(new_dentry); |
689 |
if (!IS_ERR(new_dentry)) { |
if (!IS_ERR(new_dentry)) { |
699 |
error = vfs_link(old_nd.dentry, nd.dentry->d_inode, new_dentry); |
error = vfs_link(old_nd.dentry, nd.dentry->d_inode, new_dentry); |
700 |
dput(new_dentry); |
dput(new_dentry); |
701 |
} |
} |
702 |
@@ -2490,6 +2593,17 @@ static int do_rename(int olddfd, const c |
@@ -2504,6 +2607,17 @@ static int do_rename(int olddfd, const c |
703 |
if (new_dentry == trap) |
if (new_dentry == trap) |
704 |
goto exit5; |
goto exit5; |
705 |
|
|
717 |
error = vfs_rename(old_dir->d_inode, old_dentry, |
error = vfs_rename(old_dir->d_inode, old_dentry, |
718 |
new_dir->d_inode, new_dentry); |
new_dir->d_inode, new_dentry); |
719 |
exit5: |
exit5: |
720 |
@@ -2512,6 +2626,10 @@ asmlinkage long sys_renameat(int olddfd, |
@@ -2526,6 +2640,10 @@ asmlinkage long sys_renameat(int olddfd, |
721 |
int error; |
int error; |
722 |
char * from; |
char * from; |
723 |
char * to; |
char * to; |
728 |
|
|
729 |
from = getname(oldname); |
from = getname(oldname); |
730 |
if(IS_ERR(from)) |
if(IS_ERR(from)) |
731 |
--- linux-2.6.16-76.39vl4.orig/fs/namespace.c |
--- linux-2.6.16-76.40vl4.orig/fs/namespace.c |
732 |
+++ linux-2.6.16-76.39vl4/fs/namespace.c |
+++ linux-2.6.16-76.40vl4/fs/namespace.c |
733 |
@@ -26,6 +26,12 @@ |
@@ -26,6 +26,12 @@ |
734 |
#include <asm/uaccess.h> |
#include <asm/uaccess.h> |
735 |
#include <asm/unistd.h> |
#include <asm/unistd.h> |
766 |
|
|
767 |
retval = __user_walk(name, LOOKUP_FOLLOW, &nd); |
retval = __user_walk(name, LOOKUP_FOLLOW, &nd); |
768 |
if (retval) |
if (retval) |
769 |
@@ -881,6 +896,11 @@ static int do_loopback(struct nameidata |
@@ -884,6 +899,11 @@ static int do_loopback(struct nameidata |
770 |
|
|
771 |
if (!check_mnt(nd->mnt) || !check_mnt(old_nd.mnt)) |
if (!check_mnt(nd->mnt) || !check_mnt(old_nd.mnt)) |
772 |
goto out; |
goto out; |
778 |
|
|
779 |
err = -ENOMEM; |
err = -ENOMEM; |
780 |
if (recurse) |
if (recurse) |
781 |
@@ -965,7 +985,11 @@ static int do_move_mount(struct nameidat |
@@ -968,7 +988,11 @@ static int do_move_mount(struct nameidat |
782 |
err = -EINVAL; |
err = -EINVAL; |
783 |
if (!check_mnt(nd->mnt) || !check_mnt(old_nd.mnt)) |
if (!check_mnt(nd->mnt) || !check_mnt(old_nd.mnt)) |
784 |
goto out; |
goto out; |
791 |
err = -ENOENT; |
err = -ENOENT; |
792 |
mutex_lock(&nd->dentry->d_inode->i_mutex); |
mutex_lock(&nd->dentry->d_inode->i_mutex); |
793 |
if (IS_DEADDIR(nd->dentry->d_inode)) |
if (IS_DEADDIR(nd->dentry->d_inode)) |
794 |
@@ -1067,6 +1091,11 @@ int do_add_mount(struct vfsmount *newmnt |
@@ -1070,6 +1094,11 @@ int do_add_mount(struct vfsmount *newmnt |
795 |
err = -EINVAL; |
err = -EINVAL; |
796 |
if (S_ISLNK(newmnt->mnt_root->d_inode->i_mode)) |
if (S_ISLNK(newmnt->mnt_root->d_inode->i_mode)) |
797 |
goto unlock; |
goto unlock; |
803 |
|
|
804 |
newmnt->mnt_flags = mnt_flags; |
newmnt->mnt_flags = mnt_flags; |
805 |
if ((err = graft_tree(newmnt, nd))) |
if ((err = graft_tree(newmnt, nd))) |
806 |
@@ -1284,6 +1313,17 @@ long do_mount(char *dev_name, char *dir_ |
@@ -1287,6 +1316,17 @@ long do_mount(char *dev_name, char *dir_ |
807 |
if (data_page) |
if (data_page) |
808 |
((char *)data_page)[PAGE_SIZE - 1] = 0; |
((char *)data_page)[PAGE_SIZE - 1] = 0; |
809 |
|
|
821 |
/* Separate the per-mountpoint flags */ |
/* Separate the per-mountpoint flags */ |
822 |
if (flags & MS_NOSUID) |
if (flags & MS_NOSUID) |
823 |
mnt_flags |= MNT_NOSUID; |
mnt_flags |= MNT_NOSUID; |
824 |
@@ -1582,6 +1622,10 @@ asmlinkage long sys_pivot_root(const cha |
@@ -1585,6 +1625,10 @@ asmlinkage long sys_pivot_root(const cha |
825 |
|
|
826 |
if (!capable(CAP_SYS_ADMIN)) |
if (!capable(CAP_SYS_ADMIN)) |
827 |
return -EPERM; |
return -EPERM; |
832 |
|
|
833 |
lock_kernel(); |
lock_kernel(); |
834 |
|
|
835 |
@@ -1598,6 +1642,10 @@ asmlinkage long sys_pivot_root(const cha |
@@ -1601,6 +1645,10 @@ asmlinkage long sys_pivot_root(const cha |
836 |
goto out1; |
goto out1; |
837 |
|
|
838 |
error = security_sb_pivotroot(&old_nd, &new_nd); |
error = security_sb_pivotroot(&old_nd, &new_nd); |
843 |
if (error) { |
if (error) { |
844 |
path_release(&old_nd); |
path_release(&old_nd); |
845 |
goto out1; |
goto out1; |
846 |
--- linux-2.6.16-76.39vl4.orig/fs/open.c |
--- linux-2.6.16-76.40vl4.orig/fs/open.c |
847 |
+++ linux-2.6.16-76.39vl4/fs/open.c |
+++ linux-2.6.16-76.40vl4/fs/open.c |
848 |
@@ -30,6 +30,13 @@ |
@@ -30,6 +30,13 @@ |
849 |
|
|
850 |
#include <asm/unistd.h> |
#include <asm/unistd.h> |
859 |
int vfs_statfs(struct super_block *sb, struct kstatfs *buf) |
int vfs_statfs(struct super_block *sb, struct kstatfs *buf) |
860 |
{ |
{ |
861 |
int retval = -ENODEV; |
int retval = -ENODEV; |
862 |
@@ -266,6 +273,10 @@ static long do_sys_truncate(const char _ |
@@ -269,6 +276,10 @@ static long do_sys_truncate(const char _ |
863 |
if (error) |
if (error) |
864 |
goto dput_and_out; |
goto dput_and_out; |
865 |
|
|
870 |
error = locks_verify_truncate(inode, NULL, length); |
error = locks_verify_truncate(inode, NULL, length); |
871 |
if (!error) { |
if (!error) { |
872 |
DQUOT_INIT(inode); |
DQUOT_INIT(inode); |
873 |
@@ -318,7 +329,11 @@ static long do_sys_ftruncate(unsigned in |
@@ -321,7 +332,11 @@ static long do_sys_ftruncate(unsigned in |
874 |
error = -EPERM; |
error = -EPERM; |
875 |
if (IS_APPEND(inode)) |
if (IS_APPEND(inode)) |
876 |
goto out_putf; |
goto out_putf; |
883 |
error = locks_verify_truncate(inode, file, length); |
error = locks_verify_truncate(inode, file, length); |
884 |
if (!error) |
if (!error) |
885 |
error = do_truncate(dentry, length, 0, file); |
error = do_truncate(dentry, length, 0, file); |
886 |
@@ -607,6 +622,14 @@ asmlinkage long sys_chroot(const char __ |
@@ -610,6 +625,14 @@ asmlinkage long sys_chroot(const char __ |
887 |
error = -EPERM; |
error = -EPERM; |
888 |
if (!capable(CAP_SYS_CHROOT)) |
if (!capable(CAP_SYS_CHROOT)) |
889 |
goto dput_and_out; |
goto dput_and_out; |
898 |
|
|
899 |
set_fs_root(current->fs, nd.mnt, nd.dentry); |
set_fs_root(current->fs, nd.mnt, nd.dentry); |
900 |
set_fs_altroot(); |
set_fs_altroot(); |
901 |
@@ -1189,6 +1212,10 @@ EXPORT_SYMBOL(sys_close); |
@@ -1192,6 +1215,10 @@ EXPORT_SYMBOL(sys_close); |
902 |
*/ |
*/ |
903 |
asmlinkage long sys_vhangup(void) |
asmlinkage long sys_vhangup(void) |
904 |
{ |
{ |
909 |
if (capable(CAP_SYS_TTY_CONFIG)) { |
if (capable(CAP_SYS_TTY_CONFIG)) { |
910 |
tty_vhangup(current->signal->tty); |
tty_vhangup(current->signal->tty); |
911 |
return 0; |
return 0; |
912 |
--- linux-2.6.16-76.39vl4.orig/fs/proc/Makefile |
--- linux-2.6.16-76.40vl4.orig/fs/proc/Makefile |
913 |
+++ linux-2.6.16-76.39vl4/fs/proc/Makefile |
+++ linux-2.6.16-76.40vl4/fs/proc/Makefile |
914 |
@@ -13,3 +13,6 @@ proc-y += inode.o root.o base.o ge |
@@ -13,3 +13,6 @@ proc-y += inode.o root.o base.o ge |
915 |
proc-$(CONFIG_PROC_KCORE) += kcore.o |
proc-$(CONFIG_PROC_KCORE) += kcore.o |
916 |
proc-$(CONFIG_PROC_VMCORE) += vmcore.o |
proc-$(CONFIG_PROC_VMCORE) += vmcore.o |
918 |
+ |
+ |
919 |
+proc-$(CONFIG_SAKURA) += ccs_proc.o |
+proc-$(CONFIG_SAKURA) += ccs_proc.o |
920 |
+proc-$(CONFIG_TOMOYO) += ccs_proc.o |
+proc-$(CONFIG_TOMOYO) += ccs_proc.o |
921 |
--- linux-2.6.16-76.39vl4.orig/fs/proc/proc_misc.c |
--- linux-2.6.16-76.40vl4.orig/fs/proc/proc_misc.c |
922 |
+++ linux-2.6.16-76.39vl4/fs/proc/proc_misc.c |
+++ linux-2.6.16-76.40vl4/fs/proc/proc_misc.c |
923 |
@@ -682,4 +682,9 @@ void __init proc_misc_init(void) |
@@ -682,4 +682,9 @@ void __init proc_misc_init(void) |
924 |
if (entry) |
if (entry) |
925 |
entry->proc_fops = &proc_sysrq_trigger_operations; |
entry->proc_fops = &proc_sysrq_trigger_operations; |
926 |
#endif |
#endif |
927 |
+ /***** CCS start. *****/ |
+ /***** CCS start. *****/ |
928 |
+#if defined(CONFIG_SAKURA) || defined(CONFIG_TOMOYO) |
+#if defined(CONFIG_SAKURA) || defined(CONFIG_TOMOYO) |
929 |
+ printk(KERN_INFO "Hook version: 2.6.16-76.39vl4 2008/10/30\n"); |
+ printk(KERN_INFO "Hook version: 2.6.16-76.40vl4 2009/1/24\n"); |
930 |
+#endif |
+#endif |
931 |
+ /***** CCS end. *****/ |
+ /***** CCS end. *****/ |
932 |
} |
} |
933 |
--- linux-2.6.16-76.39vl4.orig/include/linux/init_task.h |
--- linux-2.6.16-76.40vl4.orig/include/linux/init_task.h |
934 |
+++ linux-2.6.16-76.39vl4/include/linux/init_task.h |
+++ linux-2.6.16-76.40vl4/include/linux/init_task.h |
935 |
@@ -121,6 +121,10 @@ extern struct group_info init_groups; |
@@ -121,6 +121,10 @@ extern struct group_info init_groups; |
936 |
.journal_info = NULL, \ |
.journal_info = NULL, \ |
937 |
.cpu_timers = INIT_CPU_TIMERS(tsk.cpu_timers), \ |
.cpu_timers = INIT_CPU_TIMERS(tsk.cpu_timers), \ |
943 |
} |
} |
944 |
|
|
945 |
|
|
946 |
--- linux-2.6.16-76.39vl4.orig/include/linux/sched.h |
--- linux-2.6.16-76.40vl4.orig/include/linux/sched.h |
947 |
+++ linux-2.6.16-76.39vl4/include/linux/sched.h |
+++ linux-2.6.16-76.40vl4/include/linux/sched.h |
948 |
@@ -40,6 +40,11 @@ |
@@ -40,6 +40,11 @@ |
949 |
|
|
950 |
struct exec_domain; |
struct exec_domain; |
968 |
}; |
}; |
969 |
|
|
970 |
static inline pid_t process_group(struct task_struct *tsk) |
static inline pid_t process_group(struct task_struct *tsk) |
971 |
--- linux-2.6.16-76.39vl4.orig/kernel/compat.c |
--- linux-2.6.16-76.40vl4.orig/kernel/compat.c |
972 |
+++ linux-2.6.16-76.39vl4/kernel/compat.c |
+++ linux-2.6.16-76.40vl4/kernel/compat.c |
973 |
@@ -23,6 +23,9 @@ |
@@ -23,6 +23,9 @@ |
974 |
#include <linux/security.h> |
#include <linux/security.h> |
975 |
|
|
991 |
|
|
992 |
do_settimeofday(&tv); |
do_settimeofday(&tv); |
993 |
return 0; |
return 0; |
994 |
--- linux-2.6.16-76.39vl4.orig/kernel/kexec.c |
--- linux-2.6.16-76.40vl4.orig/kernel/kexec.c |
995 |
+++ linux-2.6.16-76.39vl4/kernel/kexec.c |
+++ linux-2.6.16-76.40vl4/kernel/kexec.c |
996 |
@@ -26,6 +26,9 @@ |
@@ -26,6 +26,9 @@ |
997 |
#include <asm/io.h> |
#include <asm/io.h> |
998 |
#include <asm/system.h> |
#include <asm/system.h> |
1014 |
|
|
1015 |
/* |
/* |
1016 |
* Verify we have a legal set of flags |
* Verify we have a legal set of flags |
1017 |
--- linux-2.6.16-76.39vl4.orig/kernel/kmod.c |
--- linux-2.6.16-76.40vl4.orig/kernel/kmod.c |
1018 |
+++ linux-2.6.16-76.39vl4/kernel/kmod.c |
+++ linux-2.6.16-76.40vl4/kernel/kmod.c |
1019 |
@@ -150,6 +150,11 @@ static int ____call_usermodehelper(void |
@@ -150,6 +150,11 @@ static int ____call_usermodehelper(void |
1020 |
/* We can run anywhere, unlike our parent keventd(). */ |
/* We can run anywhere, unlike our parent keventd(). */ |
1021 |
set_cpus_allowed(current, CPU_MASK_ALL); |
set_cpus_allowed(current, CPU_MASK_ALL); |
1028 |
retval = -EPERM; |
retval = -EPERM; |
1029 |
if (current->fs->root) |
if (current->fs->root) |
1030 |
retval = execve(sub_info->path, sub_info->argv,sub_info->envp); |
retval = execve(sub_info->path, sub_info->argv,sub_info->envp); |
1031 |
--- linux-2.6.16-76.39vl4.orig/kernel/module.c |
--- linux-2.6.16-76.40vl4.orig/kernel/module.c |
1032 |
+++ linux-2.6.16-76.39vl4/kernel/module.c |
+++ linux-2.6.16-76.40vl4/kernel/module.c |
1033 |
@@ -42,6 +42,9 @@ |
@@ -42,6 +42,9 @@ |
1034 |
#include <asm/uaccess.h> |
#include <asm/uaccess.h> |
1035 |
#include <asm/semaphore.h> |
#include <asm/semaphore.h> |
1064 |
/* Only one module load at a time, please */ |
/* Only one module load at a time, please */ |
1065 |
if (down_interruptible(&module_mutex) != 0) |
if (down_interruptible(&module_mutex) != 0) |
1066 |
return -EINTR; |
return -EINTR; |
1067 |
--- linux-2.6.16-76.39vl4.orig/kernel/ptrace.c |
--- linux-2.6.16-76.40vl4.orig/kernel/ptrace.c |
1068 |
+++ linux-2.6.16-76.39vl4/kernel/ptrace.c |
+++ linux-2.6.16-76.40vl4/kernel/ptrace.c |
1069 |
@@ -21,6 +21,9 @@ |
@@ -21,6 +21,9 @@ |
1070 |
|
|
1071 |
#include <asm/pgtable.h> |
#include <asm/pgtable.h> |
1089 |
lock_kernel(); |
lock_kernel(); |
1090 |
if (request == PTRACE_TRACEME) { |
if (request == PTRACE_TRACEME) { |
1091 |
ret = ptrace_traceme(); |
ret = ptrace_traceme(); |
1092 |
--- linux-2.6.16-76.39vl4.orig/kernel/sched.c |
--- linux-2.6.16-76.40vl4.orig/kernel/sched.c |
1093 |
+++ linux-2.6.16-76.39vl4/kernel/sched.c |
+++ linux-2.6.16-76.40vl4/kernel/sched.c |
1094 |
@@ -52,6 +52,9 @@ |
@@ -52,6 +52,9 @@ |
1095 |
#include <asm/tlb.h> |
#include <asm/tlb.h> |
1096 |
|
|
1112 |
|
|
1113 |
/* |
/* |
1114 |
* Setpriority might change our priority at the same moment. |
* Setpriority might change our priority at the same moment. |
1115 |
--- linux-2.6.16-76.39vl4.orig/kernel/signal.c |
--- linux-2.6.16-76.40vl4.orig/kernel/signal.c |
1116 |
+++ linux-2.6.16-76.39vl4/kernel/signal.c |
+++ linux-2.6.16-76.40vl4/kernel/signal.c |
1117 |
@@ -30,6 +30,9 @@ |
@@ -30,6 +30,9 @@ |
1118 |
#include <asm/uaccess.h> |
#include <asm/uaccess.h> |
1119 |
#include <asm/unistd.h> |
#include <asm/unistd.h> |
1163 |
|
|
1164 |
return do_tkill(0, pid, sig); |
return do_tkill(0, pid, sig); |
1165 |
} |
} |
1166 |
--- linux-2.6.16-76.39vl4.orig/kernel/sys.c |
--- linux-2.6.16-76.40vl4.orig/kernel/sys.c |
1167 |
+++ linux-2.6.16-76.39vl4/kernel/sys.c |
+++ linux-2.6.16-76.40vl4/kernel/sys.c |
1168 |
@@ -38,6 +38,9 @@ |
@@ -38,6 +38,9 @@ |
1169 |
#include <asm/uaccess.h> |
#include <asm/uaccess.h> |
1170 |
#include <asm/io.h> |
#include <asm/io.h> |
1221 |
|
|
1222 |
down_write(&uts_sem); |
down_write(&uts_sem); |
1223 |
errno = -EFAULT; |
errno = -EFAULT; |
1224 |
--- linux-2.6.16-76.39vl4.orig/kernel/sysctl.c |
--- linux-2.6.16-76.40vl4.orig/kernel/sysctl.c |
1225 |
+++ linux-2.6.16-76.39vl4/kernel/sysctl.c |
+++ linux-2.6.16-76.40vl4/kernel/sysctl.c |
1226 |
@@ -49,6 +49,9 @@ |
@@ -49,6 +49,9 @@ |
1227 |
|
|
1228 |
#include <asm/uaccess.h> |
#include <asm/uaccess.h> |
1362 |
error = table->strategy( |
error = table->strategy( |
1363 |
table, name, nlen, |
table, name, nlen, |
1364 |
oldval, oldlenp, |
oldval, oldlenp, |
1365 |
--- linux-2.6.16-76.39vl4.orig/kernel/time.c |
--- linux-2.6.16-76.40vl4.orig/kernel/time.c |
1366 |
+++ linux-2.6.16-76.39vl4/kernel/time.c |
+++ linux-2.6.16-76.40vl4/kernel/time.c |
1367 |
@@ -39,6 +39,9 @@ |
@@ -39,6 +39,9 @@ |
1368 |
|
|
1369 |
#include <asm/uaccess.h> |
#include <asm/uaccess.h> |
1407 |
|
|
1408 |
/* Now we validate the data before disabling interrupts */ |
/* Now we validate the data before disabling interrupts */ |
1409 |
|
|
1410 |
--- linux-2.6.16-76.39vl4.orig/net/core/datagram.c |
--- linux-2.6.16-76.40vl4.orig/net/core/datagram.c |
1411 |
+++ linux-2.6.16-76.39vl4/net/core/datagram.c |
+++ linux-2.6.16-76.40vl4/net/core/datagram.c |
1412 |
@@ -56,6 +56,11 @@ |
@@ -56,6 +56,11 @@ |
1413 |
#include <net/sock.h> |
#include <net/sock.h> |
1414 |
#include <net/tcp_states.h> |
#include <net/tcp_states.h> |
1434 |
if (skb) |
if (skb) |
1435 |
return skb; |
return skb; |
1436 |
|
|
1437 |
--- linux-2.6.16-76.39vl4.orig/net/ipv4/inet_connection_sock.c |
--- linux-2.6.16-76.40vl4.orig/net/ipv4/inet_connection_sock.c |
1438 |
+++ linux-2.6.16-76.39vl4/net/ipv4/inet_connection_sock.c |
+++ linux-2.6.16-76.40vl4/net/ipv4/inet_connection_sock.c |
1439 |
@@ -24,6 +24,9 @@ |
@@ -24,6 +24,9 @@ |
1440 |
#include <net/route.h> |
#include <net/route.h> |
1441 |
#include <net/tcp_states.h> |
#include <net/tcp_states.h> |
1457 |
inet_bind_bucket_for_each(tb, node, &head->chain) |
inet_bind_bucket_for_each(tb, node, &head->chain) |
1458 |
if (tb->port == rover) |
if (tb->port == rover) |
1459 |
goto next; |
goto next; |
1460 |
--- linux-2.6.16-76.39vl4.orig/net/ipv4/inet_hashtables.c |
--- linux-2.6.16-76.40vl4.orig/net/ipv4/inet_hashtables.c |
1461 |
+++ linux-2.6.16-76.39vl4/net/ipv4/inet_hashtables.c |
+++ linux-2.6.16-76.40vl4/net/ipv4/inet_hashtables.c |
1462 |
@@ -23,6 +23,9 @@ |
@@ -23,6 +23,9 @@ |
1463 |
#include <net/inet_connection_sock.h> |
#include <net/inet_connection_sock.h> |
1464 |
#include <net/inet_hashtables.h> |
#include <net/inet_hashtables.h> |
1480 |
head = &hinfo->bhash[inet_bhashfn(port, hinfo->bhash_size)]; |
head = &hinfo->bhash[inet_bhashfn(port, hinfo->bhash_size)]; |
1481 |
spin_lock(&head->lock); |
spin_lock(&head->lock); |
1482 |
|
|
1483 |
--- linux-2.6.16-76.39vl4.orig/net/ipv4/udp.c |
--- linux-2.6.16-76.40vl4.orig/net/ipv4/udp.c |
1484 |
+++ linux-2.6.16-76.39vl4/net/ipv4/udp.c |
+++ linux-2.6.16-76.40vl4/net/ipv4/udp.c |
1485 |
@@ -109,6 +109,9 @@ |
@@ -109,6 +109,9 @@ |
1486 |
#include <net/inet_common.h> |
#include <net/inet_common.h> |
1487 |
#include <net/checksum.h> |
#include <net/checksum.h> |
1514 |
if (!udp_lport_inuse(result)) |
if (!udp_lport_inuse(result)) |
1515 |
break; |
break; |
1516 |
} |
} |
1517 |
--- linux-2.6.16-76.39vl4.orig/net/ipv6/inet6_hashtables.c |
--- linux-2.6.16-76.40vl4.orig/net/ipv6/inet6_hashtables.c |
1518 |
+++ linux-2.6.16-76.39vl4/net/ipv6/inet6_hashtables.c |
+++ linux-2.6.16-76.40vl4/net/ipv6/inet6_hashtables.c |
1519 |
@@ -22,6 +22,9 @@ |
@@ -22,6 +22,9 @@ |
1520 |
#include <net/inet_hashtables.h> |
#include <net/inet_hashtables.h> |
1521 |
#include <net/inet6_hashtables.h> |
#include <net/inet6_hashtables.h> |
1546 |
head = &hinfo->bhash[inet_bhashfn(port, hinfo->bhash_size)]; |
head = &hinfo->bhash[inet_bhashfn(port, hinfo->bhash_size)]; |
1547 |
spin_lock(&head->lock); |
spin_lock(&head->lock); |
1548 |
|
|
1549 |
--- linux-2.6.16-76.39vl4.orig/net/ipv6/udp.c |
--- linux-2.6.16-76.40vl4.orig/net/ipv6/udp.c |
1550 |
+++ linux-2.6.16-76.39vl4/net/ipv6/udp.c |
+++ linux-2.6.16-76.40vl4/net/ipv6/udp.c |
1551 |
@@ -59,6 +59,9 @@ |
@@ -59,6 +59,9 @@ |
1552 |
|
|
1553 |
#include <linux/proc_fs.h> |
#include <linux/proc_fs.h> |
1580 |
if (!udp_lport_inuse(result)) |
if (!udp_lport_inuse(result)) |
1581 |
break; |
break; |
1582 |
} |
} |
1583 |
--- linux-2.6.16-76.39vl4.orig/net/socket.c |
--- linux-2.6.16-76.40vl4.orig/net/socket.c |
1584 |
+++ linux-2.6.16-76.39vl4/net/socket.c |
+++ linux-2.6.16-76.40vl4/net/socket.c |
1585 |
@@ -97,6 +97,11 @@ |
@@ -97,6 +97,11 @@ |
1586 |
#include <net/sock.h> |
#include <net/sock.h> |
1587 |
#include <linux/netfilter.h> |
#include <linux/netfilter.h> |
1674 |
err = sock->ops->connect(sock, (struct sockaddr *) address, addrlen, |
err = sock->ops->connect(sock, (struct sockaddr *) address, addrlen, |
1675 |
sock->file->f_flags); |
sock->file->f_flags); |
1676 |
out_put: |
out_put: |
1677 |
--- linux-2.6.16-76.39vl4.orig/net/unix/af_unix.c |
--- linux-2.6.16-76.40vl4.orig/net/unix/af_unix.c |
1678 |
+++ linux-2.6.16-76.39vl4/net/unix/af_unix.c |
+++ linux-2.6.16-76.40vl4/net/unix/af_unix.c |
1679 |
@@ -117,6 +117,9 @@ |
@@ -117,6 +117,9 @@ |
1680 |
#include <linux/mount.h> |
#include <linux/mount.h> |
1681 |
#include <net/checksum.h> |
#include <net/checksum.h> |