root/net/rxrpc/insecure.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. none_init_connection_security
  2. none_prime_packet_security
  3. none_secure_packet
  4. none_verify_packet
  5. none_free_call_crypto
  6. none_locate_data
  7. none_respond_to_challenge
  8. none_verify_response
  9. none_clear
  10. none_init
  11. none_exit

   1 // SPDX-License-Identifier: GPL-2.0-or-later
   2 /* Null security operations.
   3  *
   4  * Copyright (C) 2016 Red Hat, Inc. All Rights Reserved.
   5  * Written by David Howells (dhowells@redhat.com)
   6  */
   7 
   8 #include <net/af_rxrpc.h>
   9 #include "ar-internal.h"
  10 
  11 static int none_init_connection_security(struct rxrpc_connection *conn)
  12 {
  13         return 0;
  14 }
  15 
  16 static int none_prime_packet_security(struct rxrpc_connection *conn)
  17 {
  18         return 0;
  19 }
  20 
  21 static int none_secure_packet(struct rxrpc_call *call,
  22                               struct sk_buff *skb,
  23                               size_t data_size,
  24                               void *sechdr)
  25 {
  26         return 0;
  27 }
  28 
  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)
  32 {
  33         return 0;
  34 }
  35 
  36 static void none_free_call_crypto(struct rxrpc_call *call)
  37 {
  38 }
  39 
  40 static void none_locate_data(struct rxrpc_call *call, struct sk_buff *skb,
  41                              unsigned int *_offset, unsigned int *_len)
  42 {
  43 }
  44 
  45 static int none_respond_to_challenge(struct rxrpc_connection *conn,
  46                                      struct sk_buff *skb,
  47                                      u32 *_abort_code)
  48 {
  49         struct rxrpc_skb_priv *sp = rxrpc_skb(skb);
  50 
  51         trace_rxrpc_rx_eproto(NULL, sp->hdr.serial,
  52                               tracepoint_string("chall_none"));
  53         return -EPROTO;
  54 }
  55 
  56 static int none_verify_response(struct rxrpc_connection *conn,
  57                                 struct sk_buff *skb,
  58                                 u32 *_abort_code)
  59 {
  60         struct rxrpc_skb_priv *sp = rxrpc_skb(skb);
  61 
  62         trace_rxrpc_rx_eproto(NULL, sp->hdr.serial,
  63                               tracepoint_string("resp_none"));
  64         return -EPROTO;
  65 }
  66 
  67 static void none_clear(struct rxrpc_connection *conn)
  68 {
  69 }
  70 
  71 static int none_init(void)
  72 {
  73         return 0;
  74 }
  75 
  76 static void none_exit(void)
  77 {
  78 }
  79 
  80 /*
  81  * RxRPC Kerberos-based security
  82  */
  83 const struct rxrpc_security rxrpc_no_security = {
  84         .name                           = "none",
  85         .security_index                 = RXRPC_SECURITY_NONE,
  86         .init                           = none_init,
  87         .exit                           = none_exit,
  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,
  96         .clear                          = none_clear,
  97 };

/* [<][>][^][v][top][bottom][index][help] */