include/linux/rndis.h
Source file repositories/reference/linux-study-clean/include/linux/rndis.h
File Facts
- System
- Linux kernel
- Corpus path
include/linux/rndis.h- Extension
.h- Size
- 17269 bytes
- Lines
- 393
- Domain
- Core OS
- Bucket
- Core Kernel Interface
- Inferred role
- Core OS: implementation source
- Status
- source implementation candidate
Why This File Exists
Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
- Core operating-system implementation surface: boot, tasks, memory, VFS, syscall-facing interfaces, synchronization, credentials, and isolation.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
#define RNDIS_MAJOR_VERSION 0x00000001
#define RNDIS_MINOR_VERSION 0x00000000
/* Device Flags */
#define RNDIS_DF_CONNECTIONLESS 0x00000001U
#define RNDIS_DF_CONNECTION_ORIENTED 0x00000002U
#define RNDIS_DF_RAW_DATA 0x00000004U
/*
* Codes for "msg_type" field of rndis messages;
* only the data channel uses packet messages (maybe batched);
* everything else goes on the control channel.
*/
#define RNDIS_MSG_COMPLETION 0x80000000
#define RNDIS_MSG_PACKET 0x00000001 /* 1-N packets */
#define RNDIS_MSG_INIT 0x00000002
#define RNDIS_MSG_INIT_C (RNDIS_MSG_INIT|RNDIS_MSG_COMPLETION)
#define RNDIS_MSG_HALT 0x00000003
#define RNDIS_MSG_QUERY 0x00000004
#define RNDIS_MSG_QUERY_C (RNDIS_MSG_QUERY|RNDIS_MSG_COMPLETION)
#define RNDIS_MSG_SET 0x00000005
#define RNDIS_MSG_SET_C (RNDIS_MSG_SET|RNDIS_MSG_COMPLETION)
#define RNDIS_MSG_RESET 0x00000006
#define RNDIS_MSG_RESET_C (RNDIS_MSG_RESET|RNDIS_MSG_COMPLETION)
#define RNDIS_MSG_INDICATE 0x00000007
#define RNDIS_MSG_KEEPALIVE 0x00000008
#define RNDIS_MSG_KEEPALIVE_C (RNDIS_MSG_KEEPALIVE|RNDIS_MSG_COMPLETION)
/*
* Reserved message type for private communication between lower-layer host
* driver and remote device, if necessary.
*/
#define RNDIS_MSG_BUS 0xff000001
/* codes for "status" field of completion messages */
#define RNDIS_STATUS_SUCCESS 0x00000000
#define RNDIS_STATUS_PENDING 0x00000103
/* Status codes */
#define RNDIS_STATUS_NOT_RECOGNIZED 0x00010001
#define RNDIS_STATUS_NOT_COPIED 0x00010002
#define RNDIS_STATUS_NOT_ACCEPTED 0x00010003
#define RNDIS_STATUS_CALL_ACTIVE 0x00010007
#define RNDIS_STATUS_ONLINE 0x40010003
#define RNDIS_STATUS_RESET_START 0x40010004
#define RNDIS_STATUS_RESET_END 0x40010005
#define RNDIS_STATUS_RING_STATUS 0x40010006
#define RNDIS_STATUS_CLOSED 0x40010007
#define RNDIS_STATUS_WAN_LINE_UP 0x40010008
#define RNDIS_STATUS_WAN_LINE_DOWN 0x40010009
#define RNDIS_STATUS_WAN_FRAGMENT 0x4001000A
#define RNDIS_STATUS_MEDIA_CONNECT 0x4001000B
#define RNDIS_STATUS_MEDIA_DISCONNECT 0x4001000C
#define RNDIS_STATUS_HARDWARE_LINE_UP 0x4001000D
#define RNDIS_STATUS_HARDWARE_LINE_DOWN 0x4001000E
#define RNDIS_STATUS_INTERFACE_UP 0x4001000F
#define RNDIS_STATUS_INTERFACE_DOWN 0x40010010
#define RNDIS_STATUS_MEDIA_BUSY 0x40010011
#define RNDIS_STATUS_MEDIA_SPECIFIC_INDICATION 0x40010012
#define RNDIS_STATUS_WW_INDICATION RDIA_SPECIFIC_INDICATION
#define RNDIS_STATUS_LINK_SPEED_CHANGE 0x40010013L
#define RNDIS_STATUS_NETWORK_CHANGE 0x40010018
#define RNDIS_STATUS_NOT_RESETTABLE 0x80010001
#define RNDIS_STATUS_SOFT_ERRORS 0x80010003
#define RNDIS_STATUS_HARD_ERRORS 0x80010004
#define RNDIS_STATUS_BUFFER_OVERFLOW 0x80000005
#define RNDIS_STATUS_FAILURE 0xC0000001
#define RNDIS_STATUS_RESOURCES 0xC000009A
#define RNDIS_STATUS_NOT_SUPPORTED 0xc00000BB
#define RNDIS_STATUS_CLOSING 0xC0010002
#define RNDIS_STATUS_BAD_VERSION 0xC0010004
#define RNDIS_STATUS_BAD_CHARACTERISTICS 0xC0010005
#define RNDIS_STATUS_ADAPTER_NOT_FOUND 0xC0010006
#define RNDIS_STATUS_OPEN_FAILED 0xC0010007
#define RNDIS_STATUS_DEVICE_FAILED 0xC0010008
#define RNDIS_STATUS_MULTICAST_FULL 0xC0010009
#define RNDIS_STATUS_MULTICAST_EXISTS 0xC001000A
#define RNDIS_STATUS_MULTICAST_NOT_FOUND 0xC001000B
#define RNDIS_STATUS_REQUEST_ABORTED 0xC001000C
#define RNDIS_STATUS_RESET_IN_PROGRESS 0xC001000D
#define RNDIS_STATUS_CLOSING_INDICATING 0xC001000E
#define RNDIS_STATUS_INVALID_PACKET 0xC001000F
#define RNDIS_STATUS_OPEN_LIST_FULL 0xC0010010
#define RNDIS_STATUS_ADAPTER_NOT_READY 0xC0010011
#define RNDIS_STATUS_ADAPTER_NOT_OPEN 0xC0010012
#define RNDIS_STATUS_NOT_INDICATING 0xC0010013
#define RNDIS_STATUS_INVALID_LENGTH 0xC0010014
#define RNDIS_STATUS_INVALID_DATA 0xC0010015
Annotation
- Atlas domain: Core OS / Core Kernel Interface.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.