Loading net/core/sock.c +9 −11 Original line number Diff line number Diff line Loading @@ -1126,6 +1126,15 @@ int sk_setsockopt(struct sock *sk, int level, int optname, return 0; } return -EPERM; case SO_PASSSEC: assign_bit(SOCK_PASSSEC, &sock->flags, valbool); return 0; case SO_PASSCRED: assign_bit(SOCK_PASSCRED, &sock->flags, valbool); return 0; case SO_PASSPIDFD: assign_bit(SOCK_PASSPIDFD, &sock->flags, valbool); return 0; } sockopt_lock_sock(sk); Loading Loading @@ -1248,14 +1257,6 @@ int sk_setsockopt(struct sock *sk, int level, int optname, case SO_BSDCOMPAT: break; case SO_PASSCRED: assign_bit(SOCK_PASSCRED, &sock->flags, valbool); break; case SO_PASSPIDFD: assign_bit(SOCK_PASSPIDFD, &sock->flags, valbool); break; case SO_TIMESTAMP_OLD: case SO_TIMESTAMP_NEW: case SO_TIMESTAMPNS_OLD: Loading Loading @@ -1361,9 +1362,6 @@ int sk_setsockopt(struct sock *sk, int level, int optname, sock_valbool_flag(sk, SOCK_FILTER_LOCKED, valbool); break; case SO_PASSSEC: assign_bit(SOCK_PASSSEC, &sock->flags, valbool); break; case SO_MARK: if (!sockopt_ns_capable(sock_net(sk)->user_ns, CAP_NET_RAW) && !sockopt_ns_capable(sock_net(sk)->user_ns, CAP_NET_ADMIN)) { Loading Loading
net/core/sock.c +9 −11 Original line number Diff line number Diff line Loading @@ -1126,6 +1126,15 @@ int sk_setsockopt(struct sock *sk, int level, int optname, return 0; } return -EPERM; case SO_PASSSEC: assign_bit(SOCK_PASSSEC, &sock->flags, valbool); return 0; case SO_PASSCRED: assign_bit(SOCK_PASSCRED, &sock->flags, valbool); return 0; case SO_PASSPIDFD: assign_bit(SOCK_PASSPIDFD, &sock->flags, valbool); return 0; } sockopt_lock_sock(sk); Loading Loading @@ -1248,14 +1257,6 @@ int sk_setsockopt(struct sock *sk, int level, int optname, case SO_BSDCOMPAT: break; case SO_PASSCRED: assign_bit(SOCK_PASSCRED, &sock->flags, valbool); break; case SO_PASSPIDFD: assign_bit(SOCK_PASSPIDFD, &sock->flags, valbool); break; case SO_TIMESTAMP_OLD: case SO_TIMESTAMP_NEW: case SO_TIMESTAMPNS_OLD: Loading Loading @@ -1361,9 +1362,6 @@ int sk_setsockopt(struct sock *sk, int level, int optname, sock_valbool_flag(sk, SOCK_FILTER_LOCKED, valbool); break; case SO_PASSSEC: assign_bit(SOCK_PASSSEC, &sock->flags, valbool); break; case SO_MARK: if (!sockopt_ns_capable(sock_net(sk)->user_ns, CAP_NET_RAW) && !sockopt_ns_capable(sock_net(sk)->user_ns, CAP_NET_ADMIN)) { Loading