xref: /aosp_15_r20/bionic/libc/kernel/uapi/linux/tipc.h (revision 8d67ca893c1523eb926b9080dbe4e2ffd2a27ba1)
1*8d67ca89SAndroid Build Coastguard Worker /*
2*8d67ca89SAndroid Build Coastguard Worker  * This file is auto-generated. Modifications will be lost.
3*8d67ca89SAndroid Build Coastguard Worker  *
4*8d67ca89SAndroid Build Coastguard Worker  * See https://android.googlesource.com/platform/bionic/+/master/libc/kernel/
5*8d67ca89SAndroid Build Coastguard Worker  * for more information.
6*8d67ca89SAndroid Build Coastguard Worker  */
7*8d67ca89SAndroid Build Coastguard Worker #ifndef _LINUX_TIPC_H_
8*8d67ca89SAndroid Build Coastguard Worker #define _LINUX_TIPC_H_
9*8d67ca89SAndroid Build Coastguard Worker #include <linux/types.h>
10*8d67ca89SAndroid Build Coastguard Worker #include <linux/sockios.h>
11*8d67ca89SAndroid Build Coastguard Worker struct tipc_socket_addr {
12*8d67ca89SAndroid Build Coastguard Worker   __u32 ref;
13*8d67ca89SAndroid Build Coastguard Worker   __u32 node;
14*8d67ca89SAndroid Build Coastguard Worker };
15*8d67ca89SAndroid Build Coastguard Worker struct tipc_service_addr {
16*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
17*8d67ca89SAndroid Build Coastguard Worker   __u32 instance;
18*8d67ca89SAndroid Build Coastguard Worker };
19*8d67ca89SAndroid Build Coastguard Worker struct tipc_service_range {
20*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
21*8d67ca89SAndroid Build Coastguard Worker   __u32 lower;
22*8d67ca89SAndroid Build Coastguard Worker   __u32 upper;
23*8d67ca89SAndroid Build Coastguard Worker };
24*8d67ca89SAndroid Build Coastguard Worker #define TIPC_NODE_STATE 0
25*8d67ca89SAndroid Build Coastguard Worker #define TIPC_TOP_SRV 1
26*8d67ca89SAndroid Build Coastguard Worker #define TIPC_LINK_STATE 2
27*8d67ca89SAndroid Build Coastguard Worker #define TIPC_RESERVED_TYPES 64
28*8d67ca89SAndroid Build Coastguard Worker enum tipc_scope {
29*8d67ca89SAndroid Build Coastguard Worker   TIPC_CLUSTER_SCOPE = 2,
30*8d67ca89SAndroid Build Coastguard Worker   TIPC_NODE_SCOPE = 3
31*8d67ca89SAndroid Build Coastguard Worker };
32*8d67ca89SAndroid Build Coastguard Worker #define TIPC_MAX_USER_MSG_SIZE 66000U
33*8d67ca89SAndroid Build Coastguard Worker #define TIPC_LOW_IMPORTANCE 0
34*8d67ca89SAndroid Build Coastguard Worker #define TIPC_MEDIUM_IMPORTANCE 1
35*8d67ca89SAndroid Build Coastguard Worker #define TIPC_HIGH_IMPORTANCE 2
36*8d67ca89SAndroid Build Coastguard Worker #define TIPC_CRITICAL_IMPORTANCE 3
37*8d67ca89SAndroid Build Coastguard Worker #define TIPC_OK 0
38*8d67ca89SAndroid Build Coastguard Worker #define TIPC_ERR_NO_NAME 1
39*8d67ca89SAndroid Build Coastguard Worker #define TIPC_ERR_NO_PORT 2
40*8d67ca89SAndroid Build Coastguard Worker #define TIPC_ERR_NO_NODE 3
41*8d67ca89SAndroid Build Coastguard Worker #define TIPC_ERR_OVERLOAD 4
42*8d67ca89SAndroid Build Coastguard Worker #define TIPC_CONN_SHUTDOWN 5
43*8d67ca89SAndroid Build Coastguard Worker #define TIPC_SUB_PORTS 0x01
44*8d67ca89SAndroid Build Coastguard Worker #define TIPC_SUB_SERVICE 0x02
45*8d67ca89SAndroid Build Coastguard Worker #define TIPC_SUB_CANCEL 0x04
46*8d67ca89SAndroid Build Coastguard Worker #define TIPC_WAIT_FOREVER (~0)
47*8d67ca89SAndroid Build Coastguard Worker struct tipc_subscr {
48*8d67ca89SAndroid Build Coastguard Worker   struct tipc_service_range seq;
49*8d67ca89SAndroid Build Coastguard Worker   __u32 timeout;
50*8d67ca89SAndroid Build Coastguard Worker   __u32 filter;
51*8d67ca89SAndroid Build Coastguard Worker   char usr_handle[8];
52*8d67ca89SAndroid Build Coastguard Worker };
53*8d67ca89SAndroid Build Coastguard Worker #define TIPC_PUBLISHED 1
54*8d67ca89SAndroid Build Coastguard Worker #define TIPC_WITHDRAWN 2
55*8d67ca89SAndroid Build Coastguard Worker #define TIPC_SUBSCR_TIMEOUT 3
56*8d67ca89SAndroid Build Coastguard Worker struct tipc_event {
57*8d67ca89SAndroid Build Coastguard Worker   __u32 event;
58*8d67ca89SAndroid Build Coastguard Worker   __u32 found_lower;
59*8d67ca89SAndroid Build Coastguard Worker   __u32 found_upper;
60*8d67ca89SAndroid Build Coastguard Worker   struct tipc_socket_addr port;
61*8d67ca89SAndroid Build Coastguard Worker   struct tipc_subscr s;
62*8d67ca89SAndroid Build Coastguard Worker };
63*8d67ca89SAndroid Build Coastguard Worker #ifndef AF_TIPC
64*8d67ca89SAndroid Build Coastguard Worker #define AF_TIPC 30
65*8d67ca89SAndroid Build Coastguard Worker #endif
66*8d67ca89SAndroid Build Coastguard Worker #ifndef PF_TIPC
67*8d67ca89SAndroid Build Coastguard Worker #define PF_TIPC AF_TIPC
68*8d67ca89SAndroid Build Coastguard Worker #endif
69*8d67ca89SAndroid Build Coastguard Worker #ifndef SOL_TIPC
70*8d67ca89SAndroid Build Coastguard Worker #define SOL_TIPC 271
71*8d67ca89SAndroid Build Coastguard Worker #endif
72*8d67ca89SAndroid Build Coastguard Worker #define TIPC_ADDR_MCAST 1
73*8d67ca89SAndroid Build Coastguard Worker #define TIPC_SERVICE_RANGE 1
74*8d67ca89SAndroid Build Coastguard Worker #define TIPC_SERVICE_ADDR 2
75*8d67ca89SAndroid Build Coastguard Worker #define TIPC_SOCKET_ADDR 3
76*8d67ca89SAndroid Build Coastguard Worker struct sockaddr_tipc {
77*8d67ca89SAndroid Build Coastguard Worker   unsigned short family;
78*8d67ca89SAndroid Build Coastguard Worker   unsigned char addrtype;
79*8d67ca89SAndroid Build Coastguard Worker   signed char scope;
80*8d67ca89SAndroid Build Coastguard Worker   union {
81*8d67ca89SAndroid Build Coastguard Worker     struct tipc_socket_addr id;
82*8d67ca89SAndroid Build Coastguard Worker     struct tipc_service_range nameseq;
83*8d67ca89SAndroid Build Coastguard Worker     struct {
84*8d67ca89SAndroid Build Coastguard Worker       struct tipc_service_addr name;
85*8d67ca89SAndroid Build Coastguard Worker       __u32 domain;
86*8d67ca89SAndroid Build Coastguard Worker     } name;
87*8d67ca89SAndroid Build Coastguard Worker   } addr;
88*8d67ca89SAndroid Build Coastguard Worker };
89*8d67ca89SAndroid Build Coastguard Worker #define TIPC_ERRINFO 1
90*8d67ca89SAndroid Build Coastguard Worker #define TIPC_RETDATA 2
91*8d67ca89SAndroid Build Coastguard Worker #define TIPC_DESTNAME 3
92*8d67ca89SAndroid Build Coastguard Worker #define TIPC_IMPORTANCE 127
93*8d67ca89SAndroid Build Coastguard Worker #define TIPC_SRC_DROPPABLE 128
94*8d67ca89SAndroid Build Coastguard Worker #define TIPC_DEST_DROPPABLE 129
95*8d67ca89SAndroid Build Coastguard Worker #define TIPC_CONN_TIMEOUT 130
96*8d67ca89SAndroid Build Coastguard Worker #define TIPC_NODE_RECVQ_DEPTH 131
97*8d67ca89SAndroid Build Coastguard Worker #define TIPC_SOCK_RECVQ_DEPTH 132
98*8d67ca89SAndroid Build Coastguard Worker #define TIPC_MCAST_BROADCAST 133
99*8d67ca89SAndroid Build Coastguard Worker #define TIPC_MCAST_REPLICAST 134
100*8d67ca89SAndroid Build Coastguard Worker #define TIPC_GROUP_JOIN 135
101*8d67ca89SAndroid Build Coastguard Worker #define TIPC_GROUP_LEAVE 136
102*8d67ca89SAndroid Build Coastguard Worker #define TIPC_SOCK_RECVQ_USED 137
103*8d67ca89SAndroid Build Coastguard Worker #define TIPC_NODELAY 138
104*8d67ca89SAndroid Build Coastguard Worker #define TIPC_GROUP_LOOPBACK 0x1
105*8d67ca89SAndroid Build Coastguard Worker #define TIPC_GROUP_MEMBER_EVTS 0x2
106*8d67ca89SAndroid Build Coastguard Worker struct tipc_group_req {
107*8d67ca89SAndroid Build Coastguard Worker   __u32 type;
108*8d67ca89SAndroid Build Coastguard Worker   __u32 instance;
109*8d67ca89SAndroid Build Coastguard Worker   __u32 scope;
110*8d67ca89SAndroid Build Coastguard Worker   __u32 flags;
111*8d67ca89SAndroid Build Coastguard Worker };
112*8d67ca89SAndroid Build Coastguard Worker #define TIPC_NODEID_LEN 16
113*8d67ca89SAndroid Build Coastguard Worker #define TIPC_MAX_MEDIA_NAME 16
114*8d67ca89SAndroid Build Coastguard Worker #define TIPC_MAX_IF_NAME 16
115*8d67ca89SAndroid Build Coastguard Worker #define TIPC_MAX_BEARER_NAME 32
116*8d67ca89SAndroid Build Coastguard Worker #define TIPC_MAX_LINK_NAME 68
117*8d67ca89SAndroid Build Coastguard Worker #define SIOCGETLINKNAME SIOCPROTOPRIVATE
118*8d67ca89SAndroid Build Coastguard Worker #define SIOCGETNODEID (SIOCPROTOPRIVATE + 1)
119*8d67ca89SAndroid Build Coastguard Worker struct tipc_sioc_ln_req {
120*8d67ca89SAndroid Build Coastguard Worker   __u32 peer;
121*8d67ca89SAndroid Build Coastguard Worker   __u32 bearer_id;
122*8d67ca89SAndroid Build Coastguard Worker   char linkname[TIPC_MAX_LINK_NAME];
123*8d67ca89SAndroid Build Coastguard Worker };
124*8d67ca89SAndroid Build Coastguard Worker struct tipc_sioc_nodeid_req {
125*8d67ca89SAndroid Build Coastguard Worker   __u32 peer;
126*8d67ca89SAndroid Build Coastguard Worker   char node_id[TIPC_NODEID_LEN];
127*8d67ca89SAndroid Build Coastguard Worker };
128*8d67ca89SAndroid Build Coastguard Worker #define TIPC_AEAD_ALG_NAME (32)
129*8d67ca89SAndroid Build Coastguard Worker struct tipc_aead_key {
130*8d67ca89SAndroid Build Coastguard Worker   char alg_name[TIPC_AEAD_ALG_NAME];
131*8d67ca89SAndroid Build Coastguard Worker   unsigned int keylen;
132*8d67ca89SAndroid Build Coastguard Worker   char key[];
133*8d67ca89SAndroid Build Coastguard Worker };
134*8d67ca89SAndroid Build Coastguard Worker #define TIPC_AEAD_KEYLEN_MIN (16 + 4)
135*8d67ca89SAndroid Build Coastguard Worker #define TIPC_AEAD_KEYLEN_MAX (32 + 4)
136*8d67ca89SAndroid Build Coastguard Worker #define TIPC_AEAD_KEY_SIZE_MAX (sizeof(struct tipc_aead_key) + TIPC_AEAD_KEYLEN_MAX)
137*8d67ca89SAndroid Build Coastguard Worker #define TIPC_REKEYING_NOW (~0U)
138*8d67ca89SAndroid Build Coastguard Worker #define TIPC_CFG_SRV 0
139*8d67ca89SAndroid Build Coastguard Worker #define TIPC_ZONE_SCOPE 1
140*8d67ca89SAndroid Build Coastguard Worker #define TIPC_ADDR_NAMESEQ 1
141*8d67ca89SAndroid Build Coastguard Worker #define TIPC_ADDR_NAME 2
142*8d67ca89SAndroid Build Coastguard Worker #define TIPC_ADDR_ID 3
143*8d67ca89SAndroid Build Coastguard Worker #define TIPC_NODE_BITS 12
144*8d67ca89SAndroid Build Coastguard Worker #define TIPC_CLUSTER_BITS 12
145*8d67ca89SAndroid Build Coastguard Worker #define TIPC_ZONE_BITS 8
146*8d67ca89SAndroid Build Coastguard Worker #define TIPC_NODE_OFFSET 0
147*8d67ca89SAndroid Build Coastguard Worker #define TIPC_CLUSTER_OFFSET TIPC_NODE_BITS
148*8d67ca89SAndroid Build Coastguard Worker #define TIPC_ZONE_OFFSET (TIPC_CLUSTER_OFFSET + TIPC_CLUSTER_BITS)
149*8d67ca89SAndroid Build Coastguard Worker #define TIPC_NODE_SIZE ((1UL << TIPC_NODE_BITS) - 1)
150*8d67ca89SAndroid Build Coastguard Worker #define TIPC_CLUSTER_SIZE ((1UL << TIPC_CLUSTER_BITS) - 1)
151*8d67ca89SAndroid Build Coastguard Worker #define TIPC_ZONE_SIZE ((1UL << TIPC_ZONE_BITS) - 1)
152*8d67ca89SAndroid Build Coastguard Worker #define TIPC_NODE_MASK (TIPC_NODE_SIZE << TIPC_NODE_OFFSET)
153*8d67ca89SAndroid Build Coastguard Worker #define TIPC_CLUSTER_MASK (TIPC_CLUSTER_SIZE << TIPC_CLUSTER_OFFSET)
154*8d67ca89SAndroid Build Coastguard Worker #define TIPC_ZONE_MASK (TIPC_ZONE_SIZE << TIPC_ZONE_OFFSET)
155*8d67ca89SAndroid Build Coastguard Worker #define TIPC_ZONE_CLUSTER_MASK (TIPC_ZONE_MASK | TIPC_CLUSTER_MASK)
156*8d67ca89SAndroid Build Coastguard Worker #define tipc_portid tipc_socket_addr
157*8d67ca89SAndroid Build Coastguard Worker #define tipc_name tipc_service_addr
158*8d67ca89SAndroid Build Coastguard Worker #define tipc_name_seq tipc_service_range
159*8d67ca89SAndroid Build Coastguard Worker #endif
160