summaryrefslogtreecommitdiff
path: root/net/core/sock.c
diff options
context:
space:
mode:
authorHerbert Pƶtzl <herbert@13thfloor.at>2005-03-09 04:43:08 -0800
committerDavid S. Miller <davem@northbeach.davemloft.net.davemloft.net>2005-03-09 04:43:08 -0800
commit1cc6b1043b153dbff4458f7ec6ef5f712ea353d2 (patch)
treed411ed982a0d18e41613f01d11a75baf45743e75 /net/core/sock.c
parent6fab4b4501dd8ca0165f6594b0df9ca4618eac10 (diff)
[NET]: Passcred cleanup in struct sock
struct socket uses a 'bool' (unsigned char) to 'flag' the pass-credential option for sockets (which can be easily replaced by a flag) Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core/sock.c')
-rw-r--r--net/core/sock.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/net/core/sock.c b/net/core/sock.c
index 2ebc778b8401..71d14bd01852 100644
--- a/net/core/sock.c
+++ b/net/core/sock.c
@@ -333,7 +333,10 @@ int sock_setsockopt(struct socket *sock, int level, int optname,
break;
case SO_PASSCRED:
- sock->passcred = valbool;
+ if (valbool)
+ set_bit(SOCK_PASSCRED, &sock->flags);
+ else
+ clear_bit(SOCK_PASSCRED, &sock->flags);
break;
case SO_TIMESTAMP:
@@ -557,7 +560,7 @@ int sock_getsockopt(struct socket *sock, int level, int optname,
break;
case SO_PASSCRED:
- v.val = sock->passcred;
+ v.val = test_bit(SOCK_PASSCRED, &sock->flags) ? 1 : 0;
break;
case SO_PEERCRED: