aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/afs/rxrpc.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/fs/afs/rxrpc.c b/fs/afs/rxrpc.c
index d0eee5d32c94..08735948f15d 100644
--- a/fs/afs/rxrpc.c
+++ b/fs/afs/rxrpc.c
@@ -41,6 +41,7 @@ int afs_open_socket(struct afs_net *net)
41{ 41{
42 struct sockaddr_rxrpc srx; 42 struct sockaddr_rxrpc srx;
43 struct socket *socket; 43 struct socket *socket;
44 unsigned int min_level;
44 int ret; 45 int ret;
45 46
46 _enter(""); 47 _enter("");
@@ -60,6 +61,12 @@ int afs_open_socket(struct afs_net *net)
60 srx.transport.sin6.sin6_family = AF_INET6; 61 srx.transport.sin6.sin6_family = AF_INET6;
61 srx.transport.sin6.sin6_port = htons(AFS_CM_PORT); 62 srx.transport.sin6.sin6_port = htons(AFS_CM_PORT);
62 63
64 min_level = RXRPC_SECURITY_ENCRYPT;
65 ret = kernel_setsockopt(socket, SOL_RXRPC, RXRPC_MIN_SECURITY_LEVEL,
66 (void *)&min_level, sizeof(min_level));
67 if (ret < 0)
68 goto error_2;
69
63 ret = kernel_bind(socket, (struct sockaddr *) &srx, sizeof(srx)); 70 ret = kernel_bind(socket, (struct sockaddr *) &srx, sizeof(srx));
64 if (ret == -EADDRINUSE) { 71 if (ret == -EADDRINUSE) {
65 srx.transport.sin6.sin6_port = 0; 72 srx.transport.sin6.sin6_port = 0;