How atmluck/autoszuweb works
AutoSZUWeb is a Windows background campus-network authenticator. Its workflow starts with first-run credential setup and DPAPI-backed configuration, then logs in and monitors connectivity in a persistent retry loop. Login prefers SZU SRun and falls back to dormitory ePortal; the README also documents autostart, local auth logs, and silent reconnects. Sampled sources substantiate the main calls, storage, probes, and protocol implementations; documented runtime capabilities without sampled implementations are represented at their supported enclosing source paths.
Main entry points: AutoSZUWeb.cpp Credential setup · web.cpp Login coordinator · sys.cpp DPAPI encryption · srun.cpp SRun protocol
Components 19
First-run setup
- Credential setup
src/AutoSZUWeb.cpp - Temporary credentials
Resident runtime
- Application entry
src/AutoSZUWeb.cpp - Reconnect loop
src/AutoSZUWeb.cpp - Connectivity probe
src/web.cpp - First-login feedback
src/web.cpp
Authentication
- Login coordinator
src/web.cpp - SRun protocol
src/srun.cpp - ePortal protocol
src/web.cpp
Local state
- Config paths
src/file_path.cpp - Encrypted settings
- DPAPI encryption
src/sys.cpp - Startup registration
src/sys.cpp - Authentication logs
src/sys.cpp
Other components
- Student
- Public DNS endpoints
- SZU SRun server
- Dorm ePortal
- Windows startup registry
Connections 21
- Student → Credential setup: provides credentials
- Credential setup → Temporary credentials: reads or creates
- Credential setup → Config paths: gets config path
- Credential setup → DPAPI encryption: encrypts credentials
- DPAPI encryption → Encrypted settings: writes ciphertext
- Credential setup → Startup registration: registers startup
- Startup registration → Windows startup registry: writes Run entry
- Application entry → Config paths: gets config path
- Application entry → Credential setup: starts setup
- Application entry → Reconnect loop: starts runtime
- Reconnect loop → Encrypted settings: reads settings
- Reconnect loop → DPAPI encryption: decrypts credentials
- Reconnect loop → Login coordinator: logs in
- Reconnect loop → Connectivity probe: checks online state
- Connectivity probe → Public DNS endpoints: probes TCP
- Login coordinator → SRun protocol: tries first
- Login coordinator → ePortal protocol: falls back
- SRun protocol → SZU SRun server: requests challenge and login
- ePortal protocol → Dorm ePortal: sends login request
- Login coordinator → Authentication logs: records result
- Login coordinator → First-login feedback: shows first-run result