net/sunrpc/auth_gss/gss_rpc_xdr.h
Source file repositories/reference/linux-study-clean/net/sunrpc/auth_gss/gss_rpc_xdr.h
File Facts
- System
- Linux kernel
- Corpus path
net/sunrpc/auth_gss/gss_rpc_xdr.h- Extension
.h- Size
- 6877 bytes
- Lines
- 253
- 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.
- Networking stack implementation surface: socket APIs, protocol dispatch, packet flow, routing, filtering, and network namespaces.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/sunrpc/xdr.hlinux/sunrpc/clnt.hlinux/sunrpc/xprtsock.h
Detected Declarations
struct gssx_optionstruct gssx_option_arraystruct gssx_statusstruct gssx_call_ctxstruct gssx_name_attrstruct gssx_name_attr_arraystruct gssx_namestruct gssx_cred_elementstruct gssx_cred_element_arraystruct gssx_credstruct gssx_ctxstruct gssx_cbstruct gssp_in_tokenstruct gssx_arg_accept_sec_contextstruct gssx_res_accept_sec_contextenum gssx_cred_usage
Annotated Snippet
struct gssx_option {
gssx_buffer option;
gssx_buffer value;
};
struct gssx_option_array {
u32 count;
struct gssx_option *data;
};
struct gssx_status {
u64 major_status;
gssx_OID mech;
u64 minor_status;
utf8string major_status_string;
utf8string minor_status_string;
gssx_buffer server_ctx;
struct gssx_option_array options;
};
struct gssx_call_ctx {
utf8string locale;
gssx_buffer server_ctx;
struct gssx_option_array options;
};
struct gssx_name_attr {
gssx_buffer attr;
gssx_buffer value;
struct gssx_option_array extensions;
};
struct gssx_name_attr_array {
u32 count;
struct gssx_name_attr *data;
};
struct gssx_name {
gssx_buffer display_name;
};
typedef struct gssx_name gssx_name;
struct gssx_cred_element {
gssx_name MN;
gssx_OID mech;
u32 cred_usage;
u64 initiator_time_rec;
u64 acceptor_time_rec;
struct gssx_option_array options;
};
struct gssx_cred_element_array {
u32 count;
struct gssx_cred_element *data;
};
struct gssx_cred {
gssx_name desired_name;
struct gssx_cred_element_array elements;
gssx_buffer cred_handle_reference;
u32 needs_release;
};
struct gssx_ctx {
gssx_buffer exported_context_token;
gssx_buffer state;
u32 need_release;
gssx_OID mech;
gssx_name src_name;
gssx_name targ_name;
u64 lifetime;
u64 ctx_flags;
u32 locally_initiated;
u32 open;
struct gssx_option_array options;
};
struct gssx_cb {
u64 initiator_addrtype;
gssx_buffer initiator_address;
u64 acceptor_addrtype;
gssx_buffer acceptor_address;
gssx_buffer application_data;
};
/* This structure is not defined in the protocol.
* It is used in the kernel to carry around a big buffer
* as a set of pages */
struct gssp_in_token {
Annotation
- Immediate include surface: `linux/sunrpc/xdr.h`, `linux/sunrpc/clnt.h`, `linux/sunrpc/xprtsock.h`.
- Detected declarations: `struct gssx_option`, `struct gssx_option_array`, `struct gssx_status`, `struct gssx_call_ctx`, `struct gssx_name_attr`, `struct gssx_name_attr_array`, `struct gssx_name`, `struct gssx_cred_element`, `struct gssx_cred_element_array`, `struct gssx_cred`.
- Atlas domain: Networking Core / Sockets, Protocols, Packet Path, And Network Policy.
- 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.