diff options
author | Steve Grubb <sgrubb@redhat.com> | 2006-03-30 19:20:22 +0200 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2006-05-01 12:06:10 +0200 |
commit | d6fe3945b42d09a1eca7ad180a1646e585b8594f (patch) | |
tree | dac7b5df78bc1a47adb9f1ae392133e5a69c6b33 /net/socket.c | |
parent | [PATCH] deal with deadlocks in audit_free() (diff) | |
download | linux-d6fe3945b42d09a1eca7ad180a1646e585b8594f.tar.xz linux-d6fe3945b42d09a1eca7ad180a1646e585b8594f.zip |
[PATCH] sockaddr patch
On Thursday 23 March 2006 09:08, John D. Ramsdell wrote:
> I noticed that a socketcall(bind) and socketcall(connect) event contain a
> record of type=SOCKADDR, but I cannot see one for a system call event
> associated with socketcall(accept). Recording the sockaddr of an accepted
> socket is important for cross platform information flow analys
Thanks for pointing this out. The following patch should address this.
Signed-off-by: Steve Grubb <sgrubb@redhat.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'net/socket.c')
-rw-r--r-- | net/socket.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/socket.c b/net/socket.c index 0ce12dfc7a71..02948b622bd2 100644 --- a/net/socket.c +++ b/net/socket.c @@ -267,6 +267,8 @@ int move_addr_to_user(void *kaddr, int klen, void __user *uaddr, int __user *ule return -EINVAL; if(len) { + if (audit_sockaddr(klen, kaddr)) + return -ENOMEM; if(copy_to_user(uaddr,kaddr,len)) return -EFAULT; } |