summaryrefslogtreecommitdiffstats
path: root/net/core
diff options
context:
space:
mode:
Diffstat (limited to 'net/core')
-rw-r--r--net/core/netfilter.c3
-rw-r--r--net/core/sock.c6
2 files changed, 3 insertions, 6 deletions
diff --git a/net/core/netfilter.c b/net/core/netfilter.c
index a6472a7de..91c46a9ef 100644
--- a/net/core/netfilter.c
+++ b/net/core/netfilter.c
@@ -310,9 +310,6 @@ static int nf_sockopt(struct sock *sk, int pf, int val,
struct list_head *i;
int ret;
- if (!capable(CAP_NET_ADMIN))
- return -EPERM;
-
if (down_interruptible(&nf_sockopt_mutex) != 0)
return -EINTR;
diff --git a/net/core/sock.c b/net/core/sock.c
index 2b0018ec9..15b0ec64f 100644
--- a/net/core/sock.c
+++ b/net/core/sock.c
@@ -1013,7 +1013,7 @@ void sock_def_error_report(struct sock *sk)
read_lock(&sk->callback_lock);
if (!sk->dead) {
wake_up_interruptible(sk->sleep);
- sock_wake_async(sk->socket,0);
+ sock_wake_async(sk->socket,0,POLL_ERR);
}
read_unlock(&sk->callback_lock);
}
@@ -1023,7 +1023,7 @@ void sock_def_readable(struct sock *sk, int len)
read_lock(&sk->callback_lock);
if(!sk->dead) {
wake_up_interruptible(sk->sleep);
- sock_wake_async(sk->socket,1);
+ sock_wake_async(sk->socket,1,POLL_IN);
}
read_unlock(&sk->callback_lock);
}
@@ -1041,7 +1041,7 @@ void sock_def_write_space(struct sock *sk)
/* Should agree with poll, otherwise some programs break */
if (sock_writeable(sk))
- sock_wake_async(sk->socket, 2);
+ sock_wake_async(sk->socket, 2, POLL_OUT);
}
read_unlock(&sk->callback_lock);
}