OPENPPP2
Status: Current
Type: Navigation
Last verified: 2026-07-22
Documentation index: Documentation by task · Chinese: 简体中文
English | 简体中文
OPENPPP2 is a C++ network runtime. The root CMake project builds the native ppp executable and the static openppp2_lib library. This page is a concise repository entry point; use the current task pages below for configuration, operation, and implementation detail.
Start by task
ppp startup chain
For a normal runtime invocation, the native process follows this path:
main.cpp
-> ppp::facade::RunApplication()
-> PppApplication::GetInstance().Run()
-> PreparedArgumentEnvironment()
-> Executors::Run()
-> RunPreparedApplication()
-> PppApplication::Main()
Argument preparation loads the configuration, resolves the application mode, and prepares the network-interface context. The normal path then enters Main(), which performs host preflight and starts the selected client, server, or proxy runtime. See Startup and lifecycle for the implementation-level sequence and shutdown behavior.
Core and companion surfaces
- Core native runtime:
main.cpp, ppp/, common/, and the Windows, Linux, or Darwin platform sources selected by the root CMake build.
- Tests: the root project includes
tests/ only when configured with -DENABLE_TESTS=ON; use the development documentation for supported test workflows.
- Separate, platform-specific surfaces:
go/ and go/guardian/ are Go modules; android/ contains the in-tree Flutter application and Android/NDK build files; ios/ contains a Swift package target; and desktop/client/ has separate Svelte/Vite and Tauri manifests. Root CMake does not build these surfaces. Read their local documentation and manifests before treating one as a production deployment path.
Current versus historical documentation
The linked task pages are the current navigation path. Material under docs/archive/, docs/adr/, and docs/design/ preserves historical rationale, decisions, and evidence; it is not a substitute for current configuration, CLI, or operations guidance. These navigation pages are an English/Chinese pair; use each current page’s status, language-peer, and parent-index metadata before relying on it.
评论