Tor 0.4.9.3-alpha-dev
Loading...
Searching...
No Matches
mainloop Directory Reference

core/mainloop: Non-onion-routing mainloop functionality

More...

Files

 connection.c
 General high-level functions to handle reading and writing on connections.
 
 connection.h
 Header file for connection.c.
 
 cpuworker.c
 Uses the workqueue/threadpool code to farm CPU-intensive activities out to subprocesses.
 
 cpuworker.h
 Header file for cpuworker.c.
 
 mainloop.c
 Toplevel module. Handles signals, multiplexes between connections, implements main loop, and drives scheduled events.
 
 mainloop.h
 Header file for mainloop.c.
 
 mainloop_pubsub.c
 Connect the publish-subscribe code to the main-loop.
 
 mainloop_pubsub.h
 Header for mainloop_pubsub.c.
 
 mainloop_state.inc
 Declare configuration options for the crypto_ops module.
 
 mainloop_state_st.h
 Declare a state structure for mainloop-relevant fields.
 
 mainloop_sys.c
 Declare the "mainloop" subsystem.
 
 mainloop_sys.h
 Header for mainloop_sys.c.
 
 netstatus.c
 Track whether the network is disabled, dormant, etc.
 
 netstatus.h
 Header for netstatus.c.
 
 periodic.c
 Generic backend for handling periodic events.
 
 periodic.h
 Header for periodic.c.
 

Detailed Description

core/mainloop: Non-onion-routing mainloop functionality

This module uses the event-loop code of lib/evloop to implement an asynchronous connection-oriented protocol handler.

The layering here is imperfect: the code here was split from core/or without refactoring how the two modules call one another. Probably many functions should be moved and refactored.