include/linux/sunrpc/auth_gss.h
Source file repositories/reference/linux-study-clean/include/linux/sunrpc/auth_gss.h
File Facts
- System
- Linux kernel
- Corpus path
include/linux/sunrpc/auth_gss.h- Extension
.h- Size
- 2369 bytes
- Lines
- 94
- 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.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
linux/refcount.hlinux/sunrpc/auth.hlinux/sunrpc/svc.hlinux/sunrpc/gss_api.h
Detected Declarations
struct rpc_gss_wire_credstruct rpc_gss_wire_verfstruct rpc_gss_init_resstruct gss_cl_ctxstruct gss_upcall_msgstruct gss_credenum rpc_gss_procenum rpc_gss_svc
Annotated Snippet
struct rpc_gss_wire_cred {
u32 gc_v; /* version */
u32 gc_proc; /* control procedure */
u32 gc_seq; /* sequence number */
u32 gc_svc; /* service */
struct xdr_netobj gc_ctx; /* context handle */
};
/* on-the-wire gss verifier: */
struct rpc_gss_wire_verf {
u32 gv_flavor;
struct xdr_netobj gv_verf;
};
/* return from gss NULL PROC init sec context */
struct rpc_gss_init_res {
struct xdr_netobj gr_ctx; /* context handle */
u32 gr_major; /* major status */
u32 gr_minor; /* minor status */
u32 gr_win; /* sequence window */
struct xdr_netobj gr_token; /* token */
};
/* The gss_cl_ctx struct holds all the information the rpcsec_gss client
* code needs to know about a single security context. In particular,
* gc_gss_ctx is the context handle that is used to do gss-api calls, while
* gc_wire_ctx is the context handle that is used to identify the context on
* the wire when communicating with a server. */
struct gss_cl_ctx {
refcount_t count;
enum rpc_gss_proc gc_proc;
u32 gc_seq;
u32 gc_seq_xmit;
spinlock_t gc_seq_lock;
struct gss_ctx *gc_gss_ctx;
struct xdr_netobj gc_wire_ctx;
struct xdr_netobj gc_acceptor;
u32 gc_win;
unsigned long gc_expiry;
struct rcu_head gc_rcu;
};
struct gss_upcall_msg;
struct gss_cred {
struct rpc_cred gc_base;
enum rpc_gss_svc gc_service;
struct gss_cl_ctx __rcu *gc_ctx;
struct gss_upcall_msg *gc_upcall;
const char *gc_principal;
unsigned long gc_upcall_timestamp;
};
#endif /* _LINUX_SUNRPC_AUTH_GSS_H */
Annotation
- Immediate include surface: `linux/refcount.h`, `linux/sunrpc/auth.h`, `linux/sunrpc/svc.h`, `linux/sunrpc/gss_api.h`.
- Detected declarations: `struct rpc_gss_wire_cred`, `struct rpc_gss_wire_verf`, `struct rpc_gss_init_res`, `struct gss_cl_ctx`, `struct gss_upcall_msg`, `struct gss_cred`, `enum rpc_gss_proc`, `enum rpc_gss_svc`.
- 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.