/linux/Documentation/userspace-api/netlink/ |
H A D | intro.rst | 4 Introduction to Netlink 7 Netlink is often described as an ioctl() replacement. 12 To achieve this Netlink uses a minimal fixed-format metadata header 18 netlink as it is used today and dives into more "historical" uses 24 Netlink communication happens over sockets, a socket needs to be 36 A very simplified flow of a Netlink "call" will therefore look 48 Netlink also provides natural support for "dumping", i.e. communicating 70 it is opening a Netlink socket, with all headers provided by the user 71 (hence NETLINK, RAW). The last argument is the protocol within Netlink. 75 Classic vs Generic Netlink [all …]
|
H A D | netlink-raw.rst | 4 Netlink specification support for raw Netlink families 7 This document describes the additional properties required by raw Netlink 8 families such as ``NETLINK_ROUTE`` which use the ``netlink-raw`` protocol 14 The netlink-raw schema extends the :doc:`genetlink-legacy <genetlink-legacy>` 16 multicast IDs used by raw netlink families. See :ref:`classic_netlink` for more 17 information. The raw netlink families also make use of type-specific 27 opening a netlink socket. 34 protocol: netlink-raw 64 Several raw netlink families such as 84 the wrapper attr has very similar characteristics to a netlink message. It may [all …]
|
H A D | specs.rst | 4 Netlink protocol specifications (in YAML) 7 Netlink protocol specifications are complete, machine readable descriptions of 8 Netlink protocols written in YAML. The goal of the specifications is to allow 9 separating Netlink parsing from user space logic and minimize the amount of 10 hand written Netlink code for each new family, command, attribute. 11 Netlink specs should be complete and not depend on any other spec 22 YAML specifications can be found under ``Documentation/netlink/specs/`` 34 There are four schema levels for Netlink specs, from the simplest used 45 - ``genetlink-legacy`` - Generic Netlink catch all schema supporting quirks of 47 - ``netlink-raw`` - catch all schema supporting pre-Generic Netlink protocols [all …]
|
H A D | index.rst | 4 Netlink Handbook 7 Netlink documentation for users. 17 netlink-raw 20 - :ref:`Documentation/core-api/netlink.rst <kernel_netlink>`
|
/linux/drivers/infiniband/core/ |
H A D | iwpm_util.h | 47 #include <net/netlink.h> 97 * iwpm_get_nlmsg_request - Allocate and initialize netlink message request 98 * @nlmsg_seq: Sequence number of the netlink message 99 * @nl_client: The index of the netlink client 102 * Returns the newly allocated netlink request object if successful, 109 * iwpm_free_nlmsg_request - Deallocate netlink message request 110 * @kref: Holds reference of netlink message request 115 * iwpm_find_nlmsg_request - Find netlink message request in the request list 116 * @echo_seq: Sequence number of the netlink request to find 118 * Returns the found netlink message request, [all …]
|
H A D | iwpm_msg.c | 52 * iwpm_register_pid - Send a netlink query to userspace 55 * @nl_client: The index of the netlink client 83 err_str = "Unable to allocate netlink request"; in iwpm_register_pid() 113 skb = NULL; /* skb is freed in the netlink send-op handling */ in iwpm_register_pid() 130 * iwpm_add_mapping - Send a netlink add mapping request to 133 * @nl_client: The index of the netlink client 166 err_str = "Unable to allocate netlink request"; in iwpm_add_mapping() 198 skb = NULL; /* skb is freed in the netlink send-op handling */ in iwpm_add_mapping() 218 * @nl_client: The index of the netlink client 251 err_str = "Unable to allocate netlink request"; in iwpm_add_and_query_mapping() [all …]
|
H A D | netlink.c | 37 #include <net/netlink.h> 47 /* Synchronizes between ongoing netlink commands and netlink client 71 * RDMA netlink protocol without updating the array above. in is_nl_msg_valid() 87 * Currently only NLDEV client is supporting netlink commands in in get_cb_table() 101 request_module("rdma-netlink-subsys-%u", type); in get_cb_table() 203 * It calls to the callback for the netlink messages without NLM_F_REQUEST 227 * runs backward netlink scheme. Kernel initiates messages in rdma_nl_rcv_skb() 305 "Netlink client %d wasn't released prior to unloading %s\n", in rdma_nl_exit()
|
/linux/include/rdma/ |
H A D | rdma_netlink.h | 6 #include <linux/netlink.h> 29 /* Define this module as providing netlink services for NETLINK_RDMA, with 39 MODULE_ALIAS("rdma-netlink-subsys-" __stringify(_val)) 42 * Register client in RDMA netlink. 50 * Remove a client from IB netlink. 57 * @skb: The netlink skb. 58 * @nlh: Pointer to put the header of the new netlink message. 61 * @client: Calling IB netlink client. 69 * @skb: The netlink skb. 70 * @nlh: Header of the netlink message to append the attribute to. [all …]
|
/linux/include/uapi/linux/netfilter/ |
H A D | nf_tables.h | 73 * enum nf_tables_msg_types - nf_tables netlink message types 149 * enum nft_list_attributes - nf_tables generic list netlink attributes 161 * enum nft_hook_attributes - nf_tables netfilter hook netlink attributes 195 * enum nft_table_attributes - nf_tables table netlink attributes 201 * @NFTA_TABLE_OWNER: owner of this table through netlink portID (NLA_U32) 226 * enum nft_chain_attributes - nf_tables chain netlink attributes 259 * enum nft_rule_attributes - nf_tables rule netlink attributes 378 * enum nft_set_attributes - nf_tables set netlink attributes 434 * enum nft_set_elem_attributes - nf_tables set element netlink attributes 465 * enum nft_set_elem_list_attributes - nf_tables set element list netlink attributes [all …]
|
/linux/Documentation/driver-api/ |
H A D | connector.rst | 7 Kernel connector - new netlink based userspace <-> kernel space easy 11 netlink based network. One must register a callback and an identifier. 12 When the driver receives a special netlink message with the appropriate 25 netlink based networking for inter-process communication in a significantly 63 netlink group to the user which is equal to its id.idx. 102 Netlink itself is not a reliable protocol. That means that messages can 111 2.6.14 has a new netlink socket implementation, which by default does not 112 allow people to send data to netlink groups other than 1. 113 So, if you wish to use a netlink socket (for example using connector) 138 2.6.14 netlink code only allows to select a group which is less or equal to [all …]
|
/linux/tools/lib/thermal/ |
H A D | thermal_nl.h | 6 #include <netlink/netlink.h> 7 #include <netlink/genl/genl.h> 8 #include <netlink/genl/mngt.h> 9 #include <netlink/genl/ctrl.h> 30 * Low level netlink
|
/linux/net/batman-adv/ |
H A D | bat_v.c | 21 #include <linux/netlink.h> 30 #include <net/netlink.h> 41 #include "netlink.h" 120 * @msg: Netlink message to dump into 121 * @portid: Port making netlink request 122 * @seq: Sequence number of netlink message 166 * @msg: Netlink message to dump into 167 * @portid: Port making netlink request 168 * @seq: Sequence number of netlink message 204 * @msg: Netlink message to dump into [all …]
|
H A D | bat_algo.c | 12 #include <linux/netlink.h> 18 #include <net/netlink.h> 22 #include "netlink.h" 152 * @msg: netlink message to be sent back 183 * @msg: netlink message to be sent back 184 * @cb: Parameters to the netlink request
|
/linux/fs/smb/client/ |
H A D | netlink.c | 3 * Netlink routines for CIFS 11 #include "netlink.h" 60 * cifs_genl_init - Register generic netlink family 70 cifs_dbg(VFS, "%s: failed to register netlink family\n", in cifs_genl_init() 79 * cifs_genl_exit - Unregister generic netlink family 87 cifs_dbg(VFS, "%s: failed to unregister netlink family\n", in cifs_genl_exit()
|
/linux/include/net/ |
H A D | rtnetlink.h | 7 #include <net/netlink.h> 79 * @peer_type: Peer device specific netlink attribute number (e.g. VETH_INFO_PEER) 80 * @maxtype: Highest device specific netlink attribute number 81 * @policy: Netlink policy for device specific attribute validation 82 * @validate: Optional validation function for netlink/changelink parameters 92 * specific netlink attributes 93 * @fill_info: Function to dump device specific netlink attributes 180 * specific netlink attributes. 182 * netlink attributes.
|
/linux/Documentation/filesystems/ |
H A D | quota.rst | 23 Quota netlink interface 29 Thus quota netlink interface has been designed to pass information about 33 The interface uses generic netlink framework (see 35 more details about this layer). The name of the quota generic netlink interface 37 the quota netlink protocol is not namespace aware, quota netlink messages are
|
/linux/net/netlabel/ |
H A D | netlabel_cipso_v4.c | 23 #include <net/netlink.h> 47 /* NetLabel Generic NETLINK CIPSOv4 family */ 49 /* NetLabel Netlink attribute policy */ 71 * @info: the Generic NETLINK info block 112 * @info: the Generic NETLINK info block 317 * @info: the Generic NETLINK info block 356 * @info: the Generic NETLINK info block 395 * @skb: the NETLINK buffer 396 * @info: the Generic NETLINK info block 433 * @skb: the NETLINK buffer [all …]
|
H A D | netlabel_calipso.c | 24 #include <net/netlink.h> 48 /* NetLabel Generic NETLINK CALIPSO family */ 51 /* NetLabel Netlink attribute policy */ 83 * @info: the Generic NETLINK info block 112 * @skb: the NETLINK buffer 113 * @info: the Generic NETLINK info block 147 * @skb: the NETLINK buffer 148 * @info: the Generic NETLINK info block 247 * @skb: the NETLINK buffer 248 * @cb: the NETLINK callback [all …]
|
/linux/samples/bpf/ |
H A D | xdp_router_ipv4_user.c | 5 #include <linux/netlink.h> 88 /* Function to parse the route entry returned by netlink 269 fprintf(stderr, "open netlink socket: %s\n", strerror(errno)); in get_route_table() 275 fprintf(stderr, "bind netlink socket: %s\n", strerror(errno)); in get_route_table() 295 fprintf(stderr, "send to netlink: %s\n", strerror(errno)); in get_route_table() 302 fprintf(stderr, "recv from netlink: %s\n", strerror(nll)); in get_route_table() 313 /* Function to parse the arp entry returned by netlink 405 fprintf(stderr, "open netlink socket: %s\n", strerror(errno)); in get_arp_table() 411 fprintf(stderr, "bind netlink socket: %s\n", strerror(errno)); in get_arp_table() 430 fprintf(stderr, "send to netlink: %s\n", strerror(errno)); in get_arp_table() [all …]
|
/linux/Documentation/accounting/ |
H A D | taskstats.rst | 6 Taskstats is a netlink-based interface for sending per-task and 30 To get statistics during a task's lifetime, userspace opens a unicast netlink 39 to be limited and assists in flow control over the netlink interface and is 67 The data exchanged between user and kernel space is a netlink message belonging 68 to the NETLINK_GENERIC family and using the netlink attributes interface. 146 2. Defining separate statistic structs and using the netlink attributes 147 interface to return them. Since userspace processes each netlink attribute 155 processing new netlink attributes. But if the new fields expand the existing 170 - increase the receive buffer sizes for the netlink sockets opened by
|
/linux/Documentation/networking/ |
H A D | statistics.rst | 47 Queue statistics are accessible via the netdev netlink family. 51 see `Documentation/userspace-api/netlink/intro-specs.rst`. 149 netlink section in uAPIs 159 netdev (netlink) argument 162 `netdev` generic netlink family allows accessing page pool and per queue 178 ethtool-netlink 181 Ethtool netlink is a replacement for the older IOCTL interface. 232 translated to netlink attributes when dumped. Drivers must not overwrite
|
H A D | l2tp.rst | 92 Netlink API 95 L2TP applications use netlink to manage L2TP tunnel and session 96 instances in the kernel. The L2TP netlink API is defined in 99 L2TP uses `Generic Netlink`_ (GENL). Several commands are defined: 102 netlink attribute types that can be used with each command. 108 attributes. If netlink is used to manage L2TPv2 tunnel and session 258 netlink command and attribute definitions. 262 - Open L2TP netlink socket:: 312 /* there are other session options which can be set using netlink 484 The ppp<ifunit> interface can then be configured as usual with netlink's [all …]
|
/linux/lib/ |
H A D | nlattr.c | 3 * NETLINK Netlink attributes 17 #include <net/netlink.h> 214 pr_warn_ratelimited("netlink: '%s': attribute type %d has an invalid length.\n", in nla_validate_range_unsigned() 414 pr_warn_ratelimited("netlink: '%s': attribute type %d has an invalid length.\n", in validate_nla() 647 pr_warn_ratelimited("netlink: %d bytes leftover after parsing attributes in process `%s'.\n", in __nla_validate_parse() 688 * to allocated Netlink buffers roughly the size of the actual 826 * nla_memcpy - Copy a netlink attribute into another memory area 828 * @src: netlink attribute to copy from 850 * @nla: netlink attribute 868 * @nla: netlink string attribute [all …]
|
/linux/tools/lib/bpf/ |
H A D | nlattr.h | 4 * NETLINK Netlink attributes 15 #include <linux/netlink.h> 19 /* avoid multiple definition of netlink features */ 82 * @nla: netlink attribute 116 * @nla: netlink attribute
|
/linux/net/ethtool/ |
H A D | netlink.h | 66 * @attr: netlink attribute with new value or null 69 * Copy the u32 value from NLA_U32 netlink attribute @attr into variable 92 * @attr: netlink attribute with new value or null 95 * Copy the u8 value from NLA_U8 netlink attribute @attr into variable 118 * @attr: netlink attribute with new value or null 121 * Use the u8 value from NLA_U8 netlink attribute @attr to set u32 variable 144 * @attr: netlink attribute with new value or null 147 * Use the bool value from NLA_U8 netlink attribute @attr to set bool variable 171 * @attr: netlink attribute with new value or null 174 * Use the u8 value from NLA_U8 netlink attribute @attr to rewrite data block [all …]
|