オープンソース・ソフトウェアの開発とダウンロード

Subversion リポジトリの参照

Diff of /trunk/1.8.x/ccs-patch/patches/ccs-patch-2.6.25-suse-11.0.diff

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3914 by kumaneko, Mon Aug 23 02:10:05 2010 UTC revision 3916 by kumaneko, Mon Aug 23 08:15:53 2010 UTC
# Line 35  Source code for this patch is http://dow Line 35  Source code for this patch is http://dow
35   net/ipv6/raw.c                  |   12 +++++++++---   net/ipv6/raw.c                  |   12 +++++++++---
36   net/ipv6/udp.c                  |    9 ++++++++-   net/ipv6/udp.c                  |    9 ++++++++-
37   net/socket.c                    |   22 ++++++++++++++++++++++   net/socket.c                    |   22 ++++++++++++++++++++++
38   net/unix/af_unix.c              |    7 +++++++   net/unix/af_unix.c              |    9 +++++++++
39   security/Kconfig                |    2 ++   security/Kconfig                |    2 ++
40   security/Makefile               |    3 +++   security/Makefile               |    3 +++
41   36 files changed, 254 insertions(+), 11 deletions(-)   36 files changed, 256 insertions(+), 11 deletions(-)
42    
43  --- linux-2.6.25.20-0.7.orig/arch/ia64/ia32/sys_ia32.c  --- linux-2.6.25.20-0.7.orig/arch/ia64/ia32/sys_ia32.c
44  +++ linux-2.6.25.20-0.7/arch/ia64/ia32/sys_ia32.c  +++ linux-2.6.25.20-0.7/arch/ia64/ia32/sys_ia32.c
# Line 1141  Source code for this patch is http://dow Line 1141  Source code for this patch is http://dow
1141                  err = vfs_mknod(nd.path.dentry->d_inode, dentry, nd.path.mnt,                  err = vfs_mknod(nd.path.dentry->d_inode, dentry, nd.path.mnt,
1142                                  mode, 0);                                  mode, 0);
1143                  if (err)                  if (err)
1144  @@ -1654,6 +1658,9 @@ static int unix_dgram_recvmsg(struct kio  @@ -1641,6 +1645,7 @@ static int unix_dgram_recvmsg(struct kio
1145    
1146            mutex_lock(&u->readlock);
1147    
1148    +retry:
1149            skb = skb_recv_datagram(sk, flags, noblock, &err);
1150            if (!skb) {
1151                    unix_state_lock(sk);
1152    @@ -1654,6 +1659,10 @@ static int unix_dgram_recvmsg(struct kio
1153    
1154          wake_up_interruptible_sync(&u->peer_wait);          wake_up_interruptible_sync(&u->peer_wait);
1155    
1156  +       err = ccs_socket_post_recvmsg_permission(sk, skb);  +       if (ccs_socket_post_recvmsg_permission(sk, skb)) {
1157  +       if (err)  +               skb_kill_datagram(sk, skb, flags);
1158  +               goto out_free;  +               goto retry;
1159    +       }
1160          if (msg->msg_name)          if (msg->msg_name)
1161                  unix_copy_addr(msg, skb->sk);                  unix_copy_addr(msg, skb->sk);
1162    

Legend:
Removed from v.3914  
changed lines
  Added in v.3916

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26