include/linux/netfilter/nf_conntrack_pptp.h
Source file repositories/reference/linux-study-clean/include/linux/netfilter/nf_conntrack_pptp.h
File Facts
- System
- Linux kernel
- Corpus path
include/linux/netfilter/nf_conntrack_pptp.h- Extension
.h- Size
- 7600 bytes
- Lines
- 322
- 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/netfilter.hlinux/skbuff.hlinux/types.hlinux/netfilter/nf_conntrack_common.hnet/netfilter/nf_conntrack_expect.huapi/linux/netfilter/nf_conntrack_tuple_common.h
Detected Declarations
struct nf_ct_pptp_masterstruct nf_nat_pptpstruct pptp_pkt_hdrstruct PptpControlHeaderstruct PptpStartSessionRequeststruct PptpStartSessionReplystruct PptpStopSessionRequeststruct PptpStopSessionReplystruct PptpEchoRequeststruct PptpEchoReplystruct PptpOutCallRequeststruct PptpOutCallReplystruct PptpInCallRequeststruct PptpInCallReplystruct PptpInCallConnectedstruct PptpClearCallRequeststruct PptpCallDisconnectNotifystruct PptpWanErrorNotifystruct PptpSetLinkInfostruct nf_nat_pptp_hookenum pptp_ctrlsess_stateenum pptp_ctrlcall_state
Annotated Snippet
struct nf_ct_pptp_master {
enum pptp_ctrlsess_state sstate; /* session state */
enum pptp_ctrlcall_state cstate; /* call state */
__be16 pac_call_id; /* call id of PAC */
__be16 pns_call_id; /* call id of PNS */
/* in pre-2.6.11 this used to be per-expect. Now it is per-conntrack
* and therefore imposes a fixed limit on the number of maps */
struct nf_ct_gre_keymap *keymap[IP_CT_DIR_MAX];
};
struct nf_nat_pptp {
__be16 pns_call_id; /* NAT'ed PNS call id */
__be16 pac_call_id; /* NAT'ed PAC call id */
};
#define PPTP_CONTROL_PORT 1723
#define PPTP_PACKET_CONTROL 1
#define PPTP_PACKET_MGMT 2
#define PPTP_MAGIC_COOKIE 0x1a2b3c4d
struct pptp_pkt_hdr {
__u16 packetLength;
__be16 packetType;
__be32 magicCookie;
};
/* PptpControlMessageType values */
#define PPTP_START_SESSION_REQUEST 1
#define PPTP_START_SESSION_REPLY 2
#define PPTP_STOP_SESSION_REQUEST 3
#define PPTP_STOP_SESSION_REPLY 4
#define PPTP_ECHO_REQUEST 5
#define PPTP_ECHO_REPLY 6
#define PPTP_OUT_CALL_REQUEST 7
#define PPTP_OUT_CALL_REPLY 8
#define PPTP_IN_CALL_REQUEST 9
#define PPTP_IN_CALL_REPLY 10
#define PPTP_IN_CALL_CONNECT 11
#define PPTP_CALL_CLEAR_REQUEST 12
#define PPTP_CALL_DISCONNECT_NOTIFY 13
#define PPTP_WAN_ERROR_NOTIFY 14
#define PPTP_SET_LINK_INFO 15
#define PPTP_MSG_MAX 15
/* PptpGeneralError values */
#define PPTP_ERROR_CODE_NONE 0
#define PPTP_NOT_CONNECTED 1
#define PPTP_BAD_FORMAT 2
#define PPTP_BAD_VALUE 3
#define PPTP_NO_RESOURCE 4
#define PPTP_BAD_CALLID 5
#define PPTP_REMOVE_DEVICE_ERROR 6
struct PptpControlHeader {
__be16 messageType;
__u16 reserved;
};
/* FramingCapability Bitmap Values */
#define PPTP_FRAME_CAP_ASYNC 0x1
#define PPTP_FRAME_CAP_SYNC 0x2
/* BearerCapability Bitmap Values */
#define PPTP_BEARER_CAP_ANALOG 0x1
#define PPTP_BEARER_CAP_DIGITAL 0x2
struct PptpStartSessionRequest {
__be16 protocolVersion;
__u16 reserved1;
__be32 framingCapability;
__be32 bearerCapability;
__be16 maxChannels;
__be16 firmwareRevision;
__u8 hostName[64];
__u8 vendorString[64];
};
/* PptpStartSessionResultCode Values */
#define PPTP_START_OK 1
#define PPTP_START_GENERAL_ERROR 2
#define PPTP_START_ALREADY_CONNECTED 3
#define PPTP_START_NOT_AUTHORIZED 4
#define PPTP_START_UNKNOWN_PROTOCOL 5
struct PptpStartSessionReply {
__be16 protocolVersion;
Annotation
- Immediate include surface: `linux/netfilter.h`, `linux/skbuff.h`, `linux/types.h`, `linux/netfilter/nf_conntrack_common.h`, `net/netfilter/nf_conntrack_expect.h`, `uapi/linux/netfilter/nf_conntrack_tuple_common.h`.
- Detected declarations: `struct nf_ct_pptp_master`, `struct nf_nat_pptp`, `struct pptp_pkt_hdr`, `struct PptpControlHeader`, `struct PptpStartSessionRequest`, `struct PptpStartSessionReply`, `struct PptpStopSessionRequest`, `struct PptpStopSessionReply`, `struct PptpEchoRequest`, `struct PptpEchoReply`.
- 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.