Lines Matching +full:max +full:- +full:by +full:- +full:define
1 /* SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause) */
5 * Copyright (c) 2003-2006, Ericsson AB
6 * Copyright (c) 2005-2007, 2010-2011, Wind River Systems
22 * GNU General Public License ("GPL") version 2 as published by the Free
25 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
39 #define _LINUX_TIPC_CONFIG_H_
51 * back. (In the future multi-message replies may be supported.)
60 * a variable number of TLVs. A failed request is denoted by the presence
67 * May be issued by any process.
68 * Accepted by own node, or by remote node only if remote management enabled.
71 #define TIPC_CMD_NOOP 0x0000 /* tx none, rx none */
72 #define TIPC_CMD_GET_NODES 0x0001 /* tx net_addr, rx node_info(s) */
73 #define TIPC_CMD_GET_MEDIA_NAMES 0x0002 /* tx none, rx media_name(s) */
74 #define TIPC_CMD_GET_BEARER_NAMES 0x0003 /* tx none, rx bearer_name(s) */
75 #define TIPC_CMD_GET_LINKS 0x0004 /* tx net_addr, rx link_info(s) */
76 #define TIPC_CMD_SHOW_NAME_TABLE 0x0005 /* tx name_tbl_query, rx ultra_string */
77 #define TIPC_CMD_SHOW_PORTS 0x0006 /* tx none, rx ultra_string */
78 #define TIPC_CMD_SHOW_LINK_STATS 0x000B /* tx link_name, rx ultra_string */
79 #define TIPC_CMD_SHOW_STATS 0x000F /* tx unsigned, rx ultra_string */
83 * May only be issued by "network administration capable" process.
84 * Accepted by own node, or by remote node only if remote management enabled
88 #define TIPC_CMD_GET_REMOTE_MNG 0x4003 /* tx none, rx unsigned */
89 #define TIPC_CMD_GET_MAX_PORTS 0x4004 /* tx none, rx unsigned */
90 #define TIPC_CMD_GET_MAX_PUBL 0x4005 /* obsoleted */
91 #define TIPC_CMD_GET_MAX_SUBSCR 0x4006 /* obsoleted */
92 #define TIPC_CMD_GET_MAX_ZONES 0x4007 /* obsoleted */
93 #define TIPC_CMD_GET_MAX_CLUSTERS 0x4008 /* obsoleted */
94 #define TIPC_CMD_GET_MAX_NODES 0x4009 /* obsoleted */
95 #define TIPC_CMD_GET_MAX_SLAVES 0x400A /* obsoleted */
96 #define TIPC_CMD_GET_NETID 0x400B /* tx none, rx unsigned */
98 #define TIPC_CMD_ENABLE_BEARER 0x4101 /* tx bearer_config, rx none */
99 #define TIPC_CMD_DISABLE_BEARER 0x4102 /* tx bearer_name, rx none */
100 #define TIPC_CMD_SET_LINK_TOL 0x4107 /* tx link_config, rx none */
101 #define TIPC_CMD_SET_LINK_PRI 0x4108 /* tx link_config, rx none */
102 #define TIPC_CMD_SET_LINK_WINDOW 0x4109 /* tx link_config, rx none */
103 #define TIPC_CMD_SET_LOG_SIZE 0x410A /* obsoleted */
104 #define TIPC_CMD_DUMP_LOG 0x410B /* obsoleted */
105 #define TIPC_CMD_RESET_LINK_STATS 0x410C /* tx link_name, rx none */
109 * May only be issued by "network administration capable" process.
110 * Accepted by own node only; cannot be used on a remote node.
113 #define TIPC_CMD_SET_NODE_ADDR 0x8001 /* tx net_addr, rx none */
114 #define TIPC_CMD_SET_REMOTE_MNG 0x8003 /* tx unsigned, rx none */
115 #define TIPC_CMD_SET_MAX_PORTS 0x8004 /* tx unsigned, rx none */
116 #define TIPC_CMD_SET_MAX_PUBL 0x8005 /* obsoleted */
117 #define TIPC_CMD_SET_MAX_SUBSCR 0x8006 /* obsoleted */
118 #define TIPC_CMD_SET_MAX_ZONES 0x8007 /* obsoleted */
119 #define TIPC_CMD_SET_MAX_CLUSTERS 0x8008 /* obsoleted */
120 #define TIPC_CMD_SET_MAX_NODES 0x8009 /* obsoleted */
121 #define TIPC_CMD_SET_MAX_SLAVES 0x800A /* obsoleted */
122 #define TIPC_CMD_SET_NETID 0x800B /* tx unsigned, rx none */
126 * May not be issued by any process.
127 * Used internally by TIPC.
130 #define TIPC_CMD_NOT_NET_ADMIN 0xC001 /* tx none, rx none */
136 #define TIPC_TLV_NONE 0 /* no TLV present */
137 #define TIPC_TLV_VOID 1 /* empty TLV (0 data bytes)*/
138 #define TIPC_TLV_UNSIGNED 2 /* 32-bit integer */
139 #define TIPC_TLV_STRING 3 /* char[128] (max) */
140 #define TIPC_TLV_LARGE_STRING 4 /* char[2048] (max) */
141 #define TIPC_TLV_ULTRA_STRING 5 /* char[32768] (max) */
143 #define TIPC_TLV_ERROR_STRING 16 /* char[128] containing "error code" */
144 #define TIPC_TLV_NET_ADDR 17 /* 32-bit integer denoting <Z.C.N> */
145 #define TIPC_TLV_MEDIA_NAME 18 /* char[TIPC_MAX_MEDIA_NAME] */
146 #define TIPC_TLV_BEARER_NAME 19 /* char[TIPC_MAX_BEARER_NAME] */
147 #define TIPC_TLV_LINK_NAME 20 /* char[TIPC_MAX_LINK_NAME] */
148 #define TIPC_TLV_NODE_INFO 21 /* struct tipc_node_info */
149 #define TIPC_TLV_LINK_INFO 22 /* struct tipc_link_info */
150 #define TIPC_TLV_BEARER_CONFIG 23 /* struct tipc_bearer_config */
151 #define TIPC_TLV_LINK_CONFIG 24 /* struct tipc_link_config */
152 #define TIPC_TLV_NAME_TBL_QUERY 25 /* struct tipc_name_table_query */
153 #define TIPC_TLV_PORT_REF 26 /* 32-bit port reference */
156 * Link priority limits (min, default, max, media default)
159 #define TIPC_MIN_LINK_PRI 0
160 #define TIPC_DEF_LINK_PRI 10
161 #define TIPC_MAX_LINK_PRI 31
162 #define TIPC_MEDIA_LINK_PRI (TIPC_MAX_LINK_PRI + 1)
165 * Link tolerance limits (min, default, max), in ms
168 #define TIPC_MIN_LINK_TOL 50
169 #define TIPC_DEF_LINK_TOL 1500
170 #define TIPC_MAX_LINK_TOL 30000
177 * Link window limits (min, default, max), in packets
180 #define TIPC_MIN_LINK_WIN 16
181 #define TIPC_DEF_LINK_WIN 50
182 #define TIPC_MAX_LINK_WIN 8191
188 #define TIPC_DEF_LINK_UDP_MTU 14000
212 #define TIPC_NTQ_ALLTYPES 0x80000000
222 * The error string TLV is a null-terminated string describing the cause
225 * (lying by the range 0x80 to 0xFF) which represents a pre-defined reason.
228 #define TIPC_CFG_TLV_ERROR "\x80" /* request contains incorrect TLV(s) */
229 #define TIPC_CFG_NOT_NET_ADMIN "\x81" /* must be network administrator */
230 #define TIPC_CFG_NOT_ZONE_MSTR "\x82" /* must be zone master */
231 #define TIPC_CFG_NO_REMOTE "\x83" /* remote management not enabled */
232 #define TIPC_CFG_NOT_SUPPORTED "\x84" /* request is not supported by TIPC */
233 #define TIPC_CFG_INVALID_VALUE "\x85" /* request has invalid argument value */
236 * A TLV consists of a descriptor, followed by the TLV value.
249 #define TLV_ALIGNTO 4
251 #define TLV_ALIGN(datalen) (((datalen)+(TLV_ALIGNTO-1)) & ~(TLV_ALIGNTO-1))
252 #define TLV_LENGTH(datalen) (sizeof(struct tlv_desc) + (datalen))
253 #define TLV_SPACE(datalen) (TLV_ALIGN(TLV_LENGTH(datalen)))
254 #define TLV_DATA(tlv) ((void *)((char *)(tlv) + TLV_LENGTH(0)))
261 * - Tried doing (!(tlv & (TLV_ALIGNTO-1))), but GCC compiler in TLV_OK()
263 * - Tried casting "tlv" to integer type, but causes warning about size in TLV_OK()
268 (__be16_to_cpu(((struct tlv_desc *)tlv)->tlv_len) <= space); in TLV_OK()
274 (__be16_to_cpu(((struct tlv_desc *)tlv)->tlv_type) == exp_type); in TLV_CHECK()
279 return __be16_to_cpu(tlv->tlv_len); in TLV_GET_LEN()
284 tlv->tlv_len = __cpu_to_be16(len); in TLV_SET_LEN()
289 return (__be16_to_cpu(tlv->tlv_type) == type); in TLV_CHECK_TYPE()
294 tlv->tlv_type = __cpu_to_be16(type); in TLV_SET_TYPE()
304 tlv_ptr->tlv_type = __cpu_to_be16(type); in TLV_SET()
305 tlv_ptr->tlv_len = __cpu_to_be16(tlv_len); in TLV_SET()
308 memset((char *)TLV_DATA(tlv_ptr) + len, 0, TLV_SPACE(len) - tlv_len); in TLV_SET()
326 list->tlv_ptr = (struct tlv_desc *)data; in TLV_LIST_INIT()
327 list->tlv_space = space; in TLV_LIST_INIT()
332 return (list->tlv_space == 0); in TLV_LIST_EMPTY()
337 return TLV_CHECK(list->tlv_ptr, list->tlv_space, exp_type); in TLV_LIST_CHECK()
342 return TLV_DATA(list->tlv_ptr); in TLV_LIST_DATA()
347 __u16 tlv_space = TLV_ALIGN(__be16_to_cpu(list->tlv_ptr->tlv_len)); in TLV_LIST_STEP()
349 list->tlv_ptr = (struct tlv_desc *)((char *)list->tlv_ptr + tlv_space); in TLV_LIST_STEP()
350 list->tlv_space -= tlv_space; in TLV_LIST_STEP()
357 #define TIPC_GENL_NAME "TIPC"
358 #define TIPC_GENL_VERSION 0x1
359 #define TIPC_GENL_CMD 0x1
370 #define TIPC_GENL_HDRLEN NLMSG_ALIGN(sizeof(struct tipc_genlmsghdr))
387 #define TCM_F_REQUEST 0x1 /* Flag: Request message */
388 #define TCM_F_MORE 0x2 /* Flag: Message to be continued */
390 #define TCM_ALIGN(datalen) (((datalen)+3) & ~3)
391 #define TCM_LENGTH(datalen) (sizeof(struct tipc_cfg_msg_hdr) + datalen)
392 #define TCM_SPACE(datalen) (TCM_ALIGN(TCM_LENGTH(datalen)))
393 #define TCM_DATA(tcm_hdr) ((void *)((char *)(tcm_hdr) + TCM_LENGTH(0)))
403 tcm_hdr->tcm_len = __cpu_to_be32(msg_len); in TCM_SET()
404 tcm_hdr->tcm_type = __cpu_to_be16(cmd); in TCM_SET()
405 tcm_hdr->tcm_flags = __cpu_to_be16(flags); in TCM_SET()
408 memset((char *)TCM_DATA(msg) + data_len, 0, TCM_SPACE(data_len) - msg_len); in TCM_SET()