42 lines · c
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */2/*3 * Kernel Connection Multiplexor4 *5 * Copyright (c) 2016 Tom Herbert <tom@herbertland.com>6 *7 * This program is free software; you can redistribute it and/or modify8 * it under the terms of the GNU General Public License version 29 * as published by the Free Software Foundation.10 *11 * User API to clone KCM sockets and attach transport socket to a KCM12 * multiplexor.13 */14 15#ifndef KCM_KERNEL_H16#define KCM_KERNEL_H17 18struct kcm_attach {19 int fd;20 int bpf_fd;21};22 23struct kcm_unattach {24 int fd;25};26 27struct kcm_clone {28 int fd;29};30 31#define SIOCKCMATTACH (SIOCPROTOPRIVATE + 0)32#define SIOCKCMUNATTACH (SIOCPROTOPRIVATE + 1)33#define SIOCKCMCLONE (SIOCPROTOPRIVATE + 2)34 35#define KCMPROTO_CONNECTED 036 37/* Socket options */38#define KCM_RECV_DISABLE 139 40#endif41 42