tor  master
common Directory Reference

Files

file  address.c
 Functions to use and manipulate the tor_addr_t structure.
 
file  address.h [code]
 Headers for address.h.
 
file  address_set.c
 Implementation for a set of addresses.
 
file  address_set.h [code]
 Types to handle sets of addresses.
 
file  aes.c
 Implements a counter-mode stream cipher on top of AES.
 
file  aes.h [code]
 Headers for aes.c.
 
file  backtrace.c
 Functions to produce backtraces on bugs, crashes, or assertion failures.
 
file  buffers.c
 Implements a generic buffer interface.
 
file  buffers.h [code]
 Header file for buffers.c.
 
file  compat.c
 Wrappers to make calls more portable. This code defines functions such as tor_snprintf, get/set various data types, renaming, setting socket options, switching user IDs. It is basically where the non-portable items are conditionally included depending on the platform.
 
file  compat_libevent.c
 Wrappers and utility functions for Libevent.
 
file  compat_openssl.h [code]
 compatibility definitions for working with different openssl forks
 
file  compat_pthreads.c
 Implementation for the pthreads-based multithreading backend functions.
 
file  compat_threads.c
 Cross-platform threading and inter-thread communication logic. (Platform-specific parts are written in the other compat_*threads modules.)
 
file  compat_time.c
 Portable wrappers for finding out the current time, running timers, etc.
 
file  compat_time.h [code]
 Functions and types for monotonic times.
 
file  compat_winthreads.c
 Implementation for the windows-based multithreading backend functions.
 
file  compress.c
 Common compression API.
 
file  compress.h [code]
 Headers for compress.c.
 
file  compress_lzma.c
 Compression backend for LZMA.
 
file  compress_lzma.h [code]
 Header for compress_lzma.c.
 
file  compress_none.c
 Compression backend for identity compression.
 
file  compress_none.h [code]
 Header for compress_none.c.
 
file  compress_zlib.c
 Compression backend for gzip and zlib.
 
file  compress_zlib.h [code]
 Header for compress_zlib.c.
 
file  compress_zstd.c
 Compression backend for Zstandard.
 
file  compress_zstd.h [code]
 Header for compress_zstd.c.
 
file  container.c
 Implements a smartlist (a resizable array) along with helper functions to use smartlists. Also includes hash table implementations of a string-to-void* map, and of a digest-to-void* map.
 
file  crypto.c
 Wrapper functions to present a consistent interface to public-key and symmetric cryptography operations from OpenSSL and other places.
 
file  crypto.h [code]
 Headers for crypto.c.
 
file  crypto_curve25519.c
 Wrapper code for a curve25519 implementation.
 
file  crypto_digest.c
 Block of functions related with digest and xof utilities and operations.
 
file  crypto_digest.h [code]
 Headers for crypto_digest.c.
 
file  crypto_ed25519.c
 Wrapper code for an ed25519 implementation.
 
file  crypto_format.c
 Formatting and parsing code for crypto-related data structures.
 
file  crypto_pwbox.c
 Code for encrypting secrets in a password-protected form and saving them to disk.
 
file  crypto_rand.c
 Functions for initialising and seeding (pseudo-)random number generators, and working with randomness.
 
file  crypto_rand.h [code]
 Common functions for using (pseudo-)random number generators.
 
file  crypto_rsa.c
 Block of functions related with RSA utilities and operations.
 
file  crypto_rsa.h [code]
 Headers for crypto_rsa.c.
 
file  crypto_s2k.c
 Functions for deriving keys from human-readable passphrases.
 
file  crypto_util.c
 Common cryptographic utilities.
 
file  crypto_util.h [code]
 Common functions for cryptographic routines.
 
file  di_ops.c
 Functions for data-independent operations.
 
file  di_ops.h [code]
 Headers for di_ops.c.
 
file  handles.h [code]
 Macros for C weak-handle implementation.
 
file  log.c
 Functions to send messages to log files or the console.
 
file  memarea.c
 Implementation for memarea_t, an allocator for allocating lots of small objects that will be freed all at once.
 
file  procmon.c
 Process-termination monitor functions.
 
file  procmon.h [code]
 Headers for procmon.c.
 
file  pubsub.c
 DOCDOC.
 
file  pubsub.h [code]
 Macros to implement publish/subscribe abstractions.
 
file  sandbox.c
 Code to enable sandboxing.
 
file  sandbox.h [code]
 Header file for sandbox.c.
 
file  timers.c
 Wrapper around William Ahern's fast hierarchical timer wheel implementation, to tie it in with a libevent backend.
 
file  token_bucket.c
 Functions to use and manipulate token buckets, used for rate-limiting on connections and globally.
 
file  torint.h [code]
 Header file to define uint32_t and friends.
 
file  torlog.h [code]
 Headers for log.c.
 
file  tortls.c
 Wrapper functions to present a consistent interface to TLS, SSL, and X.509 functions from OpenSSL.
 
file  tortls.h [code]
 Headers for tortls.c.
 
file  util.c
 Common functions for strings, IO, network, data structures, process control.
 
file  util.h [code]
 Headers for util.c.
 
file  util_bug.c
 
file  util_bug.h [code]
 Macros to manage assertions, fatal and non-fatal.
 
file  util_format.c
 Miscellaneous functions for encoding and decoding various things in base{16,32,64}.
 
file  util_process.c
 utility functions for launching processes and checking their status. These functions are kept separately from procmon so that they won't require linking against libevent.
 
file  util_process.h [code]
 Headers for util_process.c.
 
file  workqueue.c
 Implements worker threads, queues of work for them, and mechanisms for them to send answers back to the main thread.