Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • Trac Trac
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Issues 246
    • Issues 246
    • List
    • Boards
    • Service Desk
    • Milestones
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
  • Wiki
    • Wiki
  • Activity
  • Create a new issue
  • Issue Boards
Collapse sidebar
  • Legacy
  • TracTrac
  • Issues
  • #32447
Closed (moved) (moved)
Open
Issue created Nov 10, 2019 by Nick Mathewson@nickm🤹

Refactor our initialization sequence into a logical order

There are several things I'd like out of a logical initialization sequence.

  1. I'd like nt_service_parse_options() to happen at immediately before our first call to config_parse_commandline().

  2. I'd like us to divide our initialization stages into separate function calls, divided based on how much of the commandline or config we have parsed up until then. The main "inflection points" in this process are calls to nt_service_parse_options(), config_parse_commandline(), and options_init_from_torrc().

  3. I'd like us to turn as much of our initialization into subsystems as possible.

Unfortunately, we do not have good unit tests for our NT services code, which makes reordering that troublesome.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking