net/netlabel/netlabel_mgmt.h

Source file repositories/reference/linux-study-clean/net/netlabel/netlabel_mgmt.h

File Facts

System
Linux kernel
Corpus path
net/netlabel/netlabel_mgmt.h
Extension
.h
Size
6098 bytes
Lines
226
Domain
Networking Core
Bucket
Sockets, Protocols, Packet Path, And Network Policy
Inferred role
Networking Core: implementation source
Status
source implementation candidate

Why This File Exists

Networking stack implementation surface: socket APIs, protocol dispatch, packet flow, routing, filtering, and network namespaces.

Dependency Surface

Detected Declarations

Annotated Snippet

#ifndef _NETLABEL_MGMT_H
#define _NETLABEL_MGMT_H

#include <net/netlabel.h>
#include <linux/atomic.h>

/*
 * The following NetLabel payloads are supported by the management interface.
 *
 * o ADD:
 *   Sent by an application to add a domain mapping to the NetLabel system.
 *
 *   Required attributes:
 *
 *     NLBL_MGMT_A_DOMAIN
 *     NLBL_MGMT_A_PROTOCOL
 *
 *   If IPv4 is specified the following attributes are required:
 *
 *     NLBL_MGMT_A_IPV4ADDR
 *     NLBL_MGMT_A_IPV4MASK
 *
 *   If IPv6 is specified the following attributes are required:
 *
 *     NLBL_MGMT_A_IPV6ADDR
 *     NLBL_MGMT_A_IPV6MASK
 *
 *   If using NETLBL_NLTYPE_CIPSOV4 the following attributes are required:
 *
 *     NLBL_MGMT_A_CV4DOI
 *
 *   If using NETLBL_NLTYPE_UNLABELED no other attributes are required,
 *   however the following attribute may optionally be sent:
 *
 *     NLBL_MGMT_A_FAMILY
 *
 * o REMOVE:
 *   Sent by an application to remove a domain mapping from the NetLabel
 *   system.
 *
 *   Required attributes:
 *
 *     NLBL_MGMT_A_DOMAIN
 *
 * o LISTALL:
 *   This message can be sent either from an application or by the kernel in
 *   response to an application generated LISTALL message.  When sent by an
 *   application there is no payload and the NLM_F_DUMP flag should be set.
 *   The kernel should respond with a series of the following messages.
 *
 *   Required attributes:
 *
 *     NLBL_MGMT_A_DOMAIN
 *     NLBL_MGMT_A_FAMILY
 *
 *   If the IP address selectors are not used the following attribute is
 *   required:
 *
 *     NLBL_MGMT_A_PROTOCOL
 *
 *   If the IP address selectors are used then the following attritbute is
 *   required:
 *
 *     NLBL_MGMT_A_SELECTORLIST
 *
 *   If the mapping is using the NETLBL_NLTYPE_CIPSOV4 type then the following
 *   attributes are required:
 *
 *     NLBL_MGMT_A_CV4DOI
 *
 *   If the mapping is using the NETLBL_NLTYPE_UNLABELED type no other
 *   attributes are required.
 *
 * o ADDDEF:
 *   Sent by an application to set the default domain mapping for the NetLabel
 *   system.
 *
 *   Required attributes:
 *
 *     NLBL_MGMT_A_PROTOCOL
 *
 *   If using NETLBL_NLTYPE_CIPSOV4 the following attributes are required:
 *
 *     NLBL_MGMT_A_CV4DOI
 *
 *   If using NETLBL_NLTYPE_UNLABELED no other attributes are required,
 *   however the following attribute may optionally be sent:
 *
 *     NLBL_MGMT_A_FAMILY
 *

Annotation

Implementation Notes