1 // SPDX-License-Identifier: GPL-2.0-or-later
2 /* Null security operations.
4 * Copyright (C) 2016 Red Hat, Inc. All Rights Reserved.
5 * Written by David Howells (dhowells@redhat.com)
8 #include <net/af_rxrpc.h>
9 #include "ar-internal.h"
11 static int none_init_connection_security(struct rxrpc_connection
*conn
)
16 static int none_prime_packet_security(struct rxrpc_connection
*conn
)
21 static int none_secure_packet(struct rxrpc_call
*call
,
29 static int none_verify_packet(struct rxrpc_call
*call
, struct sk_buff
*skb
,
30 unsigned int offset
, unsigned int len
,
31 rxrpc_seq_t seq
, u16 expected_cksum
)
36 static void none_free_call_crypto(struct rxrpc_call
*call
)
40 static void none_locate_data(struct rxrpc_call
*call
, struct sk_buff
*skb
,
41 unsigned int *_offset
, unsigned int *_len
)
45 static int none_respond_to_challenge(struct rxrpc_connection
*conn
,
49 struct rxrpc_skb_priv
*sp
= rxrpc_skb(skb
);
51 trace_rxrpc_rx_eproto(NULL
, sp
->hdr
.serial
,
52 tracepoint_string("chall_none"));
56 static int none_verify_response(struct rxrpc_connection
*conn
,
60 struct rxrpc_skb_priv
*sp
= rxrpc_skb(skb
);
62 trace_rxrpc_rx_eproto(NULL
, sp
->hdr
.serial
,
63 tracepoint_string("resp_none"));
67 static void none_clear(struct rxrpc_connection
*conn
)
71 static int none_init(void)
76 static void none_exit(void)
81 * RxRPC Kerberos-based security
83 const struct rxrpc_security rxrpc_no_security
= {
85 .security_index
= RXRPC_SECURITY_NONE
,
88 .init_connection_security
= none_init_connection_security
,
89 .prime_packet_security
= none_prime_packet_security
,
90 .free_call_crypto
= none_free_call_crypto
,
91 .secure_packet
= none_secure_packet
,
92 .verify_packet
= none_verify_packet
,
93 .locate_data
= none_locate_data
,
94 .respond_to_challenge
= none_respond_to_challenge
,
95 .verify_response
= none_verify_response
,