diff options
| author | David S. Miller <davem@davemloft.net> | 2018-10-22 00:11:46 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2018-10-22 00:11:46 -0400 |
| commit | a19c59cc10a5ebc6b5a542e56bfd9f427ce01d74 (patch) | |
| tree | cd04c1af4e800eef175cbc51ffb6e78040d7ee27 /tools/include/uapi/linux/tls.h | |
| parent | 92303c86b7e9b7d3895ccafb441a0354143e2a18 (diff) | |
| parent | fe8ecccc10b3adc071de05ca7af728ca1a4ac9aa (diff) | |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next
Daniel Borkmann says:
====================
pull-request: bpf-next 2018-10-21
The following pull-request contains BPF updates for your *net-next* tree.
The main changes are:
1) Implement two new kind of BPF maps, that is, queue and stack
map along with new peek, push and pop operations, from Mauricio.
2) Add support for MSG_PEEK flag when redirecting into an ingress
psock sk_msg queue, and add a new helper bpf_msg_push_data() for
insert data into the message, from John.
3) Allow for BPF programs of type BPF_PROG_TYPE_CGROUP_SKB to use
direct packet access for __skb_buff, from Song.
4) Use more lightweight barriers for walking perf ring buffer for
libbpf and perf tool as well. Also, various fixes and improvements
from verifier side, from Daniel.
5) Add per-symbol visibility for DSO in libbpf and hide by default
global symbols such as netlink related functions, from Andrey.
6) Two improvements to nfp's BPF offload to check vNIC capabilities
in case prog is shared with multiple vNICs and to protect against
mis-initializing atomic counters, from Jakub.
7) Fix for bpftool to use 4 context mode for the nfp disassembler,
also from Jakub.
8) Fix a return value comparison in test_libbpf.sh and add several
bpftool improvements in bash completion, documentation of bpf fs
restrictions and batch mode summary print, from Quentin.
9) Fix a file resource leak in BPF selftest's load_kallsyms()
helper, from Peng.
10) Fix an unused variable warning in map_lookup_and_delete_elem(),
from Alexei.
11) Fix bpf_skb_adjust_room() signature in BPF UAPI helper doc,
from Nicolas.
12) Add missing executables to .gitignore in BPF selftests, from Anders.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'tools/include/uapi/linux/tls.h')
| -rw-r--r-- | tools/include/uapi/linux/tls.h | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/tools/include/uapi/linux/tls.h b/tools/include/uapi/linux/tls.h new file mode 100644 index 000000000000..ff02287495ac --- /dev/null +++ b/tools/include/uapi/linux/tls.h | |||
| @@ -0,0 +1,78 @@ | |||
| 1 | /* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR Linux-OpenIB) */ | ||
| 2 | /* | ||
| 3 | * Copyright (c) 2016-2017, Mellanox Technologies. All rights reserved. | ||
| 4 | * | ||
| 5 | * This software is available to you under a choice of one of two | ||
| 6 | * licenses. You may choose to be licensed under the terms of the GNU | ||
| 7 | * General Public License (GPL) Version 2, available from the file | ||
| 8 | * COPYING in the main directory of this source tree, or the | ||
| 9 | * OpenIB.org BSD license below: | ||
| 10 | * | ||
| 11 | * Redistribution and use in source and binary forms, with or | ||
| 12 | * without modification, are permitted provided that the following | ||
| 13 | * conditions are met: | ||
| 14 | * | ||
| 15 | * - Redistributions of source code must retain the above | ||
| 16 | * copyright notice, this list of conditions and the following | ||
| 17 | * disclaimer. | ||
| 18 | * | ||
| 19 | * - Redistributions in binary form must reproduce the above | ||
| 20 | * copyright notice, this list of conditions and the following | ||
| 21 | * disclaimer in the documentation and/or other materials | ||
| 22 | * provided with the distribution. | ||
| 23 | * | ||
| 24 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
| 25 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF | ||
| 26 | * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
| 27 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS | ||
| 28 | * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN | ||
| 29 | * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN | ||
| 30 | * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
| 31 | * SOFTWARE. | ||
| 32 | */ | ||
| 33 | |||
| 34 | #ifndef _UAPI_LINUX_TLS_H | ||
| 35 | #define _UAPI_LINUX_TLS_H | ||
| 36 | |||
| 37 | #include <linux/types.h> | ||
| 38 | |||
| 39 | /* TLS socket options */ | ||
| 40 | #define TLS_TX 1 /* Set transmit parameters */ | ||
| 41 | #define TLS_RX 2 /* Set receive parameters */ | ||
| 42 | |||
| 43 | /* Supported versions */ | ||
| 44 | #define TLS_VERSION_MINOR(ver) ((ver) & 0xFF) | ||
| 45 | #define TLS_VERSION_MAJOR(ver) (((ver) >> 8) & 0xFF) | ||
| 46 | |||
| 47 | #define TLS_VERSION_NUMBER(id) ((((id##_VERSION_MAJOR) & 0xFF) << 8) | \ | ||
| 48 | ((id##_VERSION_MINOR) & 0xFF)) | ||
| 49 | |||
| 50 | #define TLS_1_2_VERSION_MAJOR 0x3 | ||
| 51 | #define TLS_1_2_VERSION_MINOR 0x3 | ||
| 52 | #define TLS_1_2_VERSION TLS_VERSION_NUMBER(TLS_1_2) | ||
| 53 | |||
| 54 | /* Supported ciphers */ | ||
| 55 | #define TLS_CIPHER_AES_GCM_128 51 | ||
| 56 | #define TLS_CIPHER_AES_GCM_128_IV_SIZE 8 | ||
| 57 | #define TLS_CIPHER_AES_GCM_128_KEY_SIZE 16 | ||
| 58 | #define TLS_CIPHER_AES_GCM_128_SALT_SIZE 4 | ||
| 59 | #define TLS_CIPHER_AES_GCM_128_TAG_SIZE 16 | ||
| 60 | #define TLS_CIPHER_AES_GCM_128_REC_SEQ_SIZE 8 | ||
| 61 | |||
| 62 | #define TLS_SET_RECORD_TYPE 1 | ||
| 63 | #define TLS_GET_RECORD_TYPE 2 | ||
| 64 | |||
| 65 | struct tls_crypto_info { | ||
| 66 | __u16 version; | ||
| 67 | __u16 cipher_type; | ||
| 68 | }; | ||
| 69 | |||
| 70 | struct tls12_crypto_info_aes_gcm_128 { | ||
| 71 | struct tls_crypto_info info; | ||
| 72 | unsigned char iv[TLS_CIPHER_AES_GCM_128_IV_SIZE]; | ||
| 73 | unsigned char key[TLS_CIPHER_AES_GCM_128_KEY_SIZE]; | ||
| 74 | unsigned char salt[TLS_CIPHER_AES_GCM_128_SALT_SIZE]; | ||
| 75 | unsigned char rec_seq[TLS_CIPHER_AES_GCM_128_REC_SEQ_SIZE]; | ||
| 76 | }; | ||
| 77 | |||
| 78 | #endif /* _UAPI_LINUX_TLS_H */ | ||
