commit 63b4ea22af8e8314dd718f02046de5f4b91edf9d Author: Nick Mathewson nickm@torproject.org Date: Thu Jul 5 16:31:38 2018 -0400
Move literally everything out of src/or
This commit won't build yet -- it just puts everything in a slightly more logical place.
The reasoning here is that "src/core" will hold the stuff that every (or nearly every) tor instance will need in order to do onion routing. Other features (including some necessary ones) will live in "src/feature". The "src/app" directory will hold the stuff needed to have Tor be an application you can actually run.
This commit DOES NOT refactor the former contents of src/or into a logical set of acyclic libraries, or change any code at all. That will have to come in the future.
We will continue to move things around and split them in the future, but I hope this lays a reasonable groundwork for doing so. --- src/{or => app/config}/auth_dirs.inc | 0 src/{or => app/config}/config.c | 0 src/{or => app/config}/config.h | 0 src/{or => app/config}/confparse.c | 0 src/{or => app/config}/confparse.h | 0 src/{or => app/config}/fallback_dirs.inc | 0 src/{or => app/config}/or_options_st.h | 0 src/{or => app/config}/or_state_st.h | 0 src/{or => app/config}/statefile.c | 0 src/{or => app/config}/statefile.h | 0 src/app/include.am | 6 +- src/app/{ => main}/ntmain.c | 0 src/app/{ => main}/ntmain.h | 0 src/app/{ => main}/tor_main.c | 0 src/{or => core/crypto}/hs_ntor.c | 0 src/{or => core/crypto}/hs_ntor.h | 0 src/{or => core/crypto}/onion.c | 0 src/{or => core/crypto}/onion.h | 0 src/{or => core/crypto}/onion_fast.c | 0 src/{or => core/crypto}/onion_fast.h | 0 src/{or => core/crypto}/onion_ntor.c | 0 src/{or => core/crypto}/onion_ntor.h | 0 src/{or => core/crypto}/onion_tap.c | 0 src/{or => core/crypto}/onion_tap.h | 0 src/{or => core/crypto}/relay_crypto.c | 0 src/{or => core/crypto}/relay_crypto.h | 0 src/{or => core/mainloop}/connection.c | 0 src/{or => core/mainloop}/connection.h | 0 src/{or => core/mainloop}/cpuworker.c | 0 src/{or => core/mainloop}/cpuworker.h | 0 src/{or => core/mainloop}/main.c | 0 src/{or => core/mainloop}/main.h | 0 src/{or => core/mainloop}/periodic.c | 0 src/{or => core/mainloop}/periodic.h | 0 src/{ => core}/or/addr_policy_st.h | 0 src/{ => core}/or/address_set.c | 0 src/{ => core}/or/address_set.h | 0 src/{ => core}/or/cell_queue_st.h | 0 src/{ => core}/or/cell_st.h | 0 src/{ => core}/or/channel.c | 0 src/{ => core}/or/channel.h | 0 src/{ => core}/or/channelpadding.c | 0 src/{ => core}/or/channelpadding.h | 0 src/{ => core}/or/channeltls.c | 0 src/{ => core}/or/channeltls.h | 0 src/{ => core}/or/circuit_st.h | 0 src/{ => core}/or/circuitbuild.c | 0 src/{ => core}/or/circuitbuild.h | 0 src/{ => core}/or/circuitlist.c | 0 src/{ => core}/or/circuitlist.h | 0 src/{ => core}/or/circuitmux.c | 0 src/{ => core}/or/circuitmux.h | 0 src/{ => core}/or/circuitmux_ewma.c | 0 src/{ => core}/or/circuitmux_ewma.h | 0 src/{ => core}/or/circuitstats.c | 0 src/{ => core}/or/circuitstats.h | 0 src/{ => core}/or/circuituse.c | 0 src/{ => core}/or/circuituse.h | 0 src/{ => core}/or/command.c | 0 src/{ => core}/or/command.h | 0 src/{ => core}/or/connection_edge.c | 0 src/{ => core}/or/connection_edge.h | 0 src/{ => core}/or/connection_or.c | 0 src/{ => core}/or/connection_or.h | 0 src/{ => core}/or/connection_st.h | 0 src/{ => core}/or/cpath_build_state_st.h | 0 src/{ => core}/or/crypt_path_reference_st.h | 0 src/{ => core}/or/crypt_path_st.h | 0 src/{ => core}/or/destroy_cell_queue_st.h | 0 src/{ => core}/or/dos.c | 0 src/{ => core}/or/dos.h | 0 src/{ => core}/or/edge_connection_st.h | 0 src/{ => core}/or/entry_connection_st.h | 0 src/{ => core}/or/entry_port_cfg_st.h | 0 src/{ => core}/or/extend_info_st.h | 0 src/{ => core}/or/git_revision.c | 0 src/{ => core}/or/git_revision.h | 0 src/{ => core}/or/listener_connection_st.h | 0 src/{ => core}/or/or.h | 0 src/{ => core}/or/or_circuit_st.h | 0 src/{ => core}/or/or_connection_st.h | 0 src/{ => core}/or/or_handshake_certs_st.h | 0 src/{ => core}/or/or_handshake_state_st.h | 0 src/{ => core}/or/origin_circuit_st.h | 0 src/{ => core}/or/policies.c | 0 src/{ => core}/or/policies.h | 0 src/{ => core}/or/port_cfg_st.h | 0 src/{ => core}/or/reasons.c | 0 src/{ => core}/or/reasons.h | 0 src/{ => core}/or/relay.c | 0 src/{ => core}/or/relay.h | 0 src/{ => core}/or/relay_crypto_st.h | 0 src/{ => core}/or/scheduler.c | 0 src/{ => core}/or/scheduler.h | 0 src/{ => core}/or/scheduler_kist.c | 0 src/{ => core}/or/scheduler_vanilla.c | 0 src/{ => core}/or/server_port_cfg_st.h | 0 src/{ => core}/or/socks_request_st.h | 0 src/{ => core}/or/status.c | 0 src/{ => core}/or/status.h | 0 src/{ => core}/or/tor_version_st.h | 0 src/{ => core}/or/var_cell_st.h | 0 src/{or => core/proto}/proto_cell.c | 0 src/{or => core/proto}/proto_cell.h | 0 src/{or => core/proto}/proto_control0.c | 0 src/{or => core/proto}/proto_control0.h | 0 src/{or => core/proto}/proto_ext_or.c | 0 src/{or => core/proto}/proto_ext_or.h | 0 src/{or => core/proto}/proto_http.c | 0 src/{or => core/proto}/proto_http.h | 0 src/{or => core/proto}/proto_socks.c | 0 src/{or => core/proto}/proto_socks.h | 0 src/{or => core/proto}/protover.c | 0 src/{or => core/proto}/protover.h | 0 src/{or => core/proto}/protover_rust.c | 0 src/{or => feature/api}/tor_api.c | 0 src/{or => feature/api}/tor_api.h | 0 src/{or => feature/api}/tor_api_internal.h | 0 src/{or => feature/client}/addressmap.c | 0 src/{or => feature/client}/addressmap.h | 0 src/{or => feature/client}/bridges.c | 0 src/{or => feature/client}/bridges.h | 0 src/{or => feature/client}/circpathbias.c | 0 src/{or => feature/client}/circpathbias.h | 0 src/{or => feature/client}/dnsserv.c | 0 src/{or => feature/client}/dnsserv.h | 0 src/{or => feature/client}/entrynodes.c | 0 src/{or => feature/client}/entrynodes.h | 0 src/{or => feature/client}/transports.c | 0 src/{or => feature/client}/transports.h | 0 src/{or => feature/control}/control.c | 0 src/{or => feature/control}/control.h | 0 .../control}/control_connection_st.h | 0 src/{or => feature}/dirauth/dircollate.c | 0 src/{or => feature}/dirauth/dircollate.h | 0 src/{or => feature}/dirauth/dirvote.c | 0 src/{or => feature}/dirauth/dirvote.h | 0 src/{or => feature/dirauth}/keypin.c | 0 src/{or => feature/dirauth}/keypin.h | 0 src/{or => feature}/dirauth/mode.h | 0 .../dirauth}/ns_detached_signatures_st.h | 0 src/{or => feature}/dirauth/shared_random.c | 0 src/{or => feature}/dirauth/shared_random.h | 0 src/{or => feature}/dirauth/shared_random_state.c | 0 src/{or => feature}/dirauth/shared_random_state.h | 0 .../dirauth}/vote_microdesc_hash_st.h | 0 src/{or => feature/dircache}/cached_dir_st.h | 0 src/{or => feature/dircache}/conscache.c | 0 src/{or => feature/dircache}/conscache.h | 0 src/{or => feature/dircache}/consdiffmgr.c | 0 src/{or => feature/dircache}/consdiffmgr.h | 0 src/{or => feature/dircache}/directory.c | 0 src/{or => feature/dircache}/directory.h | 0 src/{or => feature/dircache}/dirserv.c | 0 src/{or => feature/dircache}/dirserv.h | 0 src/{or => feature/dirclient}/dir_server_st.h | 0 src/{or => feature/dirclient}/download_status_st.h | 0 src/{or => feature/dircommon}/consdiff.c | 0 src/{or => feature/dircommon}/consdiff.h | 0 src/{or => feature/dircommon}/dir_connection_st.h | 0 src/{or => feature/dircommon}/fp_pair.c | 0 src/{or => feature/dircommon}/fp_pair.h | 0 src/{or => feature/dircommon}/vote_timing_st.h | 0 src/{or => feature/dircommon}/voting_schedule.c | 0 src/{or => feature/dircommon}/voting_schedule.h | 0 src/{or => feature/hibernate}/hibernate.c | 0 src/{or => feature/hibernate}/hibernate.h | 0 src/{or => feature/hs}/hs_cache.c | 0 src/{or => feature/hs}/hs_cache.h | 0 src/{or => feature/hs}/hs_cell.c | 0 src/{or => feature/hs}/hs_cell.h | 0 src/{or => feature/hs}/hs_circuit.c | 0 src/{or => feature/hs}/hs_circuit.h | 0 src/{or => feature/hs}/hs_circuitmap.c | 0 src/{or => feature/hs}/hs_circuitmap.h | 0 src/{or => feature/hs}/hs_client.c | 0 src/{or => feature/hs}/hs_client.h | 0 src/{or => feature/hs}/hs_common.c | 0 src/{or => feature/hs}/hs_common.h | 0 src/{or => feature/hs}/hs_config.c | 0 src/{or => feature/hs}/hs_config.h | 0 src/{or => feature/hs}/hs_control.c | 0 src/{or => feature/hs}/hs_control.h | 0 src/{or => feature/hs}/hs_descriptor.c | 0 src/{or => feature/hs}/hs_descriptor.h | 0 src/{or => feature/hs}/hs_ident.c | 0 src/{or => feature/hs}/hs_ident.h | 0 src/{or => feature/hs}/hs_intropoint.c | 0 src/{or => feature/hs}/hs_intropoint.h | 0 src/{or => feature/hs}/hs_service.c | 0 src/{or => feature/hs}/hs_service.h | 0 src/{or => feature/hs}/hs_stats.c | 0 src/{or => feature/hs}/hs_stats.h | 0 src/{or => feature/hs}/hsdir_index_st.h | 0 src/{or => feature/hs_common}/replaycache.c | 0 src/{or => feature/hs_common}/replaycache.h | 0 .../hs_common}/shared_random_client.c | 0 .../hs_common}/shared_random_client.h | 0 src/{or => feature/nodelist}/authority_cert_st.h | 0 src/{or => feature/nodelist}/desc_store_st.h | 0 .../nodelist}/document_signature_st.h | 0 src/{or => feature/nodelist}/extrainfo_st.h | 0 src/{or => feature/nodelist}/microdesc.c | 0 src/{or => feature/nodelist}/microdesc.h | 0 src/{or => feature/nodelist}/microdesc_st.h | 0 src/{or => feature/nodelist}/networkstatus.c | 0 src/{or => feature/nodelist}/networkstatus.h | 0 .../nodelist}/networkstatus_sr_info_st.h | 0 src/{or => feature/nodelist}/networkstatus_st.h | 0 .../nodelist}/networkstatus_voter_info_st.h | 0 src/{or => feature/nodelist}/node_st.h | 0 src/{or => feature/nodelist}/nodelist.c | 0 src/{or => feature/nodelist}/nodelist.h | 0 src/{or => feature/nodelist}/parsecommon.c | 0 src/{or => feature/nodelist}/parsecommon.h | 0 src/{or => feature/nodelist}/routerinfo_st.h | 0 src/{or => feature/nodelist}/routerlist.c | 0 src/{or => feature/nodelist}/routerlist.h | 0 src/{or => feature/nodelist}/routerlist_st.h | 0 src/{or => feature/nodelist}/routerparse.c | 0 src/{or => feature/nodelist}/routerparse.h | 0 src/{or => feature/nodelist}/routerset.c | 0 src/{or => feature/nodelist}/routerset.h | 0 src/{or => feature/nodelist}/routerstatus_st.h | 0 .../nodelist}/signed_descriptor_st.h | 0 src/{or => feature/nodelist}/torcert.c | 0 src/{or => feature/nodelist}/torcert.h | 0 .../nodelist}/vote_routerstatus_st.h | 0 src/{or => feature/relay}/dns.c | 0 src/{or => feature/relay}/dns.h | 0 src/{or => feature/relay}/dns_structs.h | 0 src/{or => feature/relay}/ext_orport.c | 0 src/{or => feature/relay}/ext_orport.h | 0 src/{or => feature/relay}/router.c | 0 src/{or => feature/relay}/router.h | 0 src/{or => feature/relay}/routerkeys.c | 0 src/{or => feature/relay}/routerkeys.h | 0 .../rend}/rend_authorized_client_st.h | 0 .../rend}/rend_encoded_v2_service_descriptor_st.h | 0 src/{or => feature/rend}/rend_intro_point_st.h | 0 .../rend}/rend_service_descriptor_st.h | 0 src/{or => feature/rend}/rendcache.c | 0 src/{or => feature/rend}/rendcache.h | 0 src/{or => feature/rend}/rendclient.c | 0 src/{or => feature/rend}/rendclient.h | 0 src/{or => feature/rend}/rendcommon.c | 0 src/{or => feature/rend}/rendcommon.h | 0 src/{or => feature/rend}/rendmid.c | 0 src/{or => feature/rend}/rendmid.h | 0 src/{or => feature/rend}/rendservice.c | 0 src/{or => feature/rend}/rendservice.h | 0 src/{or => feature/stats}/geoip.c | 0 src/{or => feature/stats}/geoip.h | 0 src/{or => feature/stats}/rephist.c | 0 src/{or => feature/stats}/rephist.h | 0 src/or/Makefile.nmake | 79 ---------------------- 256 files changed, 3 insertions(+), 82 deletions(-)
diff --git a/src/or/auth_dirs.inc b/src/app/config/auth_dirs.inc similarity index 100% rename from src/or/auth_dirs.inc rename to src/app/config/auth_dirs.inc diff --git a/src/or/config.c b/src/app/config/config.c similarity index 100% rename from src/or/config.c rename to src/app/config/config.c diff --git a/src/or/config.h b/src/app/config/config.h similarity index 100% rename from src/or/config.h rename to src/app/config/config.h diff --git a/src/or/confparse.c b/src/app/config/confparse.c similarity index 100% rename from src/or/confparse.c rename to src/app/config/confparse.c diff --git a/src/or/confparse.h b/src/app/config/confparse.h similarity index 100% rename from src/or/confparse.h rename to src/app/config/confparse.h diff --git a/src/or/fallback_dirs.inc b/src/app/config/fallback_dirs.inc similarity index 100% rename from src/or/fallback_dirs.inc rename to src/app/config/fallback_dirs.inc diff --git a/src/or/or_options_st.h b/src/app/config/or_options_st.h similarity index 100% rename from src/or/or_options_st.h rename to src/app/config/or_options_st.h diff --git a/src/or/or_state_st.h b/src/app/config/or_state_st.h similarity index 100% rename from src/or/or_state_st.h rename to src/app/config/or_state_st.h diff --git a/src/or/statefile.c b/src/app/config/statefile.c similarity index 100% rename from src/or/statefile.c rename to src/app/config/statefile.c diff --git a/src/or/statefile.h b/src/app/config/statefile.h similarity index 100% rename from src/or/statefile.h rename to src/app/config/statefile.h diff --git a/src/app/include.am b/src/app/include.am index bbbffb3e5..8e86bbeeb 100644 --- a/src/app/include.am +++ b/src/app/include.am @@ -6,11 +6,11 @@ noinst_PROGRAMS+= src/app/tor-cov endif
noinst_HEADERS += \ - src/app/ntmain.h + src/app/main/ntmain.h
-src_app_tor_SOURCES = src/app/tor_main.c +src_app_tor_SOURCES = src/app/main/tor_main.c if BUILD_NT_SERVICES -src_app_tor_SOURCES += src/app/ntmain.c +src_app_tor_SOURCES += src/app/main/ntmain.c endif
# -L flags need to go in LDFLAGS. -l flags need to go in LDADD. diff --git a/src/app/ntmain.c b/src/app/main/ntmain.c similarity index 100% rename from src/app/ntmain.c rename to src/app/main/ntmain.c diff --git a/src/app/ntmain.h b/src/app/main/ntmain.h similarity index 100% rename from src/app/ntmain.h rename to src/app/main/ntmain.h diff --git a/src/app/tor_main.c b/src/app/main/tor_main.c similarity index 100% rename from src/app/tor_main.c rename to src/app/main/tor_main.c diff --git a/src/or/hs_ntor.c b/src/core/crypto/hs_ntor.c similarity index 100% rename from src/or/hs_ntor.c rename to src/core/crypto/hs_ntor.c diff --git a/src/or/hs_ntor.h b/src/core/crypto/hs_ntor.h similarity index 100% rename from src/or/hs_ntor.h rename to src/core/crypto/hs_ntor.h diff --git a/src/or/onion.c b/src/core/crypto/onion.c similarity index 100% rename from src/or/onion.c rename to src/core/crypto/onion.c diff --git a/src/or/onion.h b/src/core/crypto/onion.h similarity index 100% rename from src/or/onion.h rename to src/core/crypto/onion.h diff --git a/src/or/onion_fast.c b/src/core/crypto/onion_fast.c similarity index 100% rename from src/or/onion_fast.c rename to src/core/crypto/onion_fast.c diff --git a/src/or/onion_fast.h b/src/core/crypto/onion_fast.h similarity index 100% rename from src/or/onion_fast.h rename to src/core/crypto/onion_fast.h diff --git a/src/or/onion_ntor.c b/src/core/crypto/onion_ntor.c similarity index 100% rename from src/or/onion_ntor.c rename to src/core/crypto/onion_ntor.c diff --git a/src/or/onion_ntor.h b/src/core/crypto/onion_ntor.h similarity index 100% rename from src/or/onion_ntor.h rename to src/core/crypto/onion_ntor.h diff --git a/src/or/onion_tap.c b/src/core/crypto/onion_tap.c similarity index 100% rename from src/or/onion_tap.c rename to src/core/crypto/onion_tap.c diff --git a/src/or/onion_tap.h b/src/core/crypto/onion_tap.h similarity index 100% rename from src/or/onion_tap.h rename to src/core/crypto/onion_tap.h diff --git a/src/or/relay_crypto.c b/src/core/crypto/relay_crypto.c similarity index 100% rename from src/or/relay_crypto.c rename to src/core/crypto/relay_crypto.c diff --git a/src/or/relay_crypto.h b/src/core/crypto/relay_crypto.h similarity index 100% rename from src/or/relay_crypto.h rename to src/core/crypto/relay_crypto.h diff --git a/src/or/connection.c b/src/core/mainloop/connection.c similarity index 100% rename from src/or/connection.c rename to src/core/mainloop/connection.c diff --git a/src/or/connection.h b/src/core/mainloop/connection.h similarity index 100% rename from src/or/connection.h rename to src/core/mainloop/connection.h diff --git a/src/or/cpuworker.c b/src/core/mainloop/cpuworker.c similarity index 100% rename from src/or/cpuworker.c rename to src/core/mainloop/cpuworker.c diff --git a/src/or/cpuworker.h b/src/core/mainloop/cpuworker.h similarity index 100% rename from src/or/cpuworker.h rename to src/core/mainloop/cpuworker.h diff --git a/src/or/main.c b/src/core/mainloop/main.c similarity index 100% rename from src/or/main.c rename to src/core/mainloop/main.c diff --git a/src/or/main.h b/src/core/mainloop/main.h similarity index 100% rename from src/or/main.h rename to src/core/mainloop/main.h diff --git a/src/or/periodic.c b/src/core/mainloop/periodic.c similarity index 100% rename from src/or/periodic.c rename to src/core/mainloop/periodic.c diff --git a/src/or/periodic.h b/src/core/mainloop/periodic.h similarity index 100% rename from src/or/periodic.h rename to src/core/mainloop/periodic.h diff --git a/src/or/addr_policy_st.h b/src/core/or/addr_policy_st.h similarity index 100% rename from src/or/addr_policy_st.h rename to src/core/or/addr_policy_st.h diff --git a/src/or/address_set.c b/src/core/or/address_set.c similarity index 100% rename from src/or/address_set.c rename to src/core/or/address_set.c diff --git a/src/or/address_set.h b/src/core/or/address_set.h similarity index 100% rename from src/or/address_set.h rename to src/core/or/address_set.h diff --git a/src/or/cell_queue_st.h b/src/core/or/cell_queue_st.h similarity index 100% rename from src/or/cell_queue_st.h rename to src/core/or/cell_queue_st.h diff --git a/src/or/cell_st.h b/src/core/or/cell_st.h similarity index 100% rename from src/or/cell_st.h rename to src/core/or/cell_st.h diff --git a/src/or/channel.c b/src/core/or/channel.c similarity index 100% rename from src/or/channel.c rename to src/core/or/channel.c diff --git a/src/or/channel.h b/src/core/or/channel.h similarity index 100% rename from src/or/channel.h rename to src/core/or/channel.h diff --git a/src/or/channelpadding.c b/src/core/or/channelpadding.c similarity index 100% rename from src/or/channelpadding.c rename to src/core/or/channelpadding.c diff --git a/src/or/channelpadding.h b/src/core/or/channelpadding.h similarity index 100% rename from src/or/channelpadding.h rename to src/core/or/channelpadding.h diff --git a/src/or/channeltls.c b/src/core/or/channeltls.c similarity index 100% rename from src/or/channeltls.c rename to src/core/or/channeltls.c diff --git a/src/or/channeltls.h b/src/core/or/channeltls.h similarity index 100% rename from src/or/channeltls.h rename to src/core/or/channeltls.h diff --git a/src/or/circuit_st.h b/src/core/or/circuit_st.h similarity index 100% rename from src/or/circuit_st.h rename to src/core/or/circuit_st.h diff --git a/src/or/circuitbuild.c b/src/core/or/circuitbuild.c similarity index 100% rename from src/or/circuitbuild.c rename to src/core/or/circuitbuild.c diff --git a/src/or/circuitbuild.h b/src/core/or/circuitbuild.h similarity index 100% rename from src/or/circuitbuild.h rename to src/core/or/circuitbuild.h diff --git a/src/or/circuitlist.c b/src/core/or/circuitlist.c similarity index 100% rename from src/or/circuitlist.c rename to src/core/or/circuitlist.c diff --git a/src/or/circuitlist.h b/src/core/or/circuitlist.h similarity index 100% rename from src/or/circuitlist.h rename to src/core/or/circuitlist.h diff --git a/src/or/circuitmux.c b/src/core/or/circuitmux.c similarity index 100% rename from src/or/circuitmux.c rename to src/core/or/circuitmux.c diff --git a/src/or/circuitmux.h b/src/core/or/circuitmux.h similarity index 100% rename from src/or/circuitmux.h rename to src/core/or/circuitmux.h diff --git a/src/or/circuitmux_ewma.c b/src/core/or/circuitmux_ewma.c similarity index 100% rename from src/or/circuitmux_ewma.c rename to src/core/or/circuitmux_ewma.c diff --git a/src/or/circuitmux_ewma.h b/src/core/or/circuitmux_ewma.h similarity index 100% rename from src/or/circuitmux_ewma.h rename to src/core/or/circuitmux_ewma.h diff --git a/src/or/circuitstats.c b/src/core/or/circuitstats.c similarity index 100% rename from src/or/circuitstats.c rename to src/core/or/circuitstats.c diff --git a/src/or/circuitstats.h b/src/core/or/circuitstats.h similarity index 100% rename from src/or/circuitstats.h rename to src/core/or/circuitstats.h diff --git a/src/or/circuituse.c b/src/core/or/circuituse.c similarity index 100% rename from src/or/circuituse.c rename to src/core/or/circuituse.c diff --git a/src/or/circuituse.h b/src/core/or/circuituse.h similarity index 100% rename from src/or/circuituse.h rename to src/core/or/circuituse.h diff --git a/src/or/command.c b/src/core/or/command.c similarity index 100% rename from src/or/command.c rename to src/core/or/command.c diff --git a/src/or/command.h b/src/core/or/command.h similarity index 100% rename from src/or/command.h rename to src/core/or/command.h diff --git a/src/or/connection_edge.c b/src/core/or/connection_edge.c similarity index 100% rename from src/or/connection_edge.c rename to src/core/or/connection_edge.c diff --git a/src/or/connection_edge.h b/src/core/or/connection_edge.h similarity index 100% rename from src/or/connection_edge.h rename to src/core/or/connection_edge.h diff --git a/src/or/connection_or.c b/src/core/or/connection_or.c similarity index 100% rename from src/or/connection_or.c rename to src/core/or/connection_or.c diff --git a/src/or/connection_or.h b/src/core/or/connection_or.h similarity index 100% rename from src/or/connection_or.h rename to src/core/or/connection_or.h diff --git a/src/or/connection_st.h b/src/core/or/connection_st.h similarity index 100% rename from src/or/connection_st.h rename to src/core/or/connection_st.h diff --git a/src/or/cpath_build_state_st.h b/src/core/or/cpath_build_state_st.h similarity index 100% rename from src/or/cpath_build_state_st.h rename to src/core/or/cpath_build_state_st.h diff --git a/src/or/crypt_path_reference_st.h b/src/core/or/crypt_path_reference_st.h similarity index 100% rename from src/or/crypt_path_reference_st.h rename to src/core/or/crypt_path_reference_st.h diff --git a/src/or/crypt_path_st.h b/src/core/or/crypt_path_st.h similarity index 100% rename from src/or/crypt_path_st.h rename to src/core/or/crypt_path_st.h diff --git a/src/or/destroy_cell_queue_st.h b/src/core/or/destroy_cell_queue_st.h similarity index 100% rename from src/or/destroy_cell_queue_st.h rename to src/core/or/destroy_cell_queue_st.h diff --git a/src/or/dos.c b/src/core/or/dos.c similarity index 100% rename from src/or/dos.c rename to src/core/or/dos.c diff --git a/src/or/dos.h b/src/core/or/dos.h similarity index 100% rename from src/or/dos.h rename to src/core/or/dos.h diff --git a/src/or/edge_connection_st.h b/src/core/or/edge_connection_st.h similarity index 100% rename from src/or/edge_connection_st.h rename to src/core/or/edge_connection_st.h diff --git a/src/or/entry_connection_st.h b/src/core/or/entry_connection_st.h similarity index 100% rename from src/or/entry_connection_st.h rename to src/core/or/entry_connection_st.h diff --git a/src/or/entry_port_cfg_st.h b/src/core/or/entry_port_cfg_st.h similarity index 100% rename from src/or/entry_port_cfg_st.h rename to src/core/or/entry_port_cfg_st.h diff --git a/src/or/extend_info_st.h b/src/core/or/extend_info_st.h similarity index 100% rename from src/or/extend_info_st.h rename to src/core/or/extend_info_st.h diff --git a/src/or/git_revision.c b/src/core/or/git_revision.c similarity index 100% rename from src/or/git_revision.c rename to src/core/or/git_revision.c diff --git a/src/or/git_revision.h b/src/core/or/git_revision.h similarity index 100% rename from src/or/git_revision.h rename to src/core/or/git_revision.h diff --git a/src/or/listener_connection_st.h b/src/core/or/listener_connection_st.h similarity index 100% rename from src/or/listener_connection_st.h rename to src/core/or/listener_connection_st.h diff --git a/src/or/or.h b/src/core/or/or.h similarity index 100% rename from src/or/or.h rename to src/core/or/or.h diff --git a/src/or/or_circuit_st.h b/src/core/or/or_circuit_st.h similarity index 100% rename from src/or/or_circuit_st.h rename to src/core/or/or_circuit_st.h diff --git a/src/or/or_connection_st.h b/src/core/or/or_connection_st.h similarity index 100% rename from src/or/or_connection_st.h rename to src/core/or/or_connection_st.h diff --git a/src/or/or_handshake_certs_st.h b/src/core/or/or_handshake_certs_st.h similarity index 100% rename from src/or/or_handshake_certs_st.h rename to src/core/or/or_handshake_certs_st.h diff --git a/src/or/or_handshake_state_st.h b/src/core/or/or_handshake_state_st.h similarity index 100% rename from src/or/or_handshake_state_st.h rename to src/core/or/or_handshake_state_st.h diff --git a/src/or/origin_circuit_st.h b/src/core/or/origin_circuit_st.h similarity index 100% rename from src/or/origin_circuit_st.h rename to src/core/or/origin_circuit_st.h diff --git a/src/or/policies.c b/src/core/or/policies.c similarity index 100% rename from src/or/policies.c rename to src/core/or/policies.c diff --git a/src/or/policies.h b/src/core/or/policies.h similarity index 100% rename from src/or/policies.h rename to src/core/or/policies.h diff --git a/src/or/port_cfg_st.h b/src/core/or/port_cfg_st.h similarity index 100% rename from src/or/port_cfg_st.h rename to src/core/or/port_cfg_st.h diff --git a/src/or/reasons.c b/src/core/or/reasons.c similarity index 100% rename from src/or/reasons.c rename to src/core/or/reasons.c diff --git a/src/or/reasons.h b/src/core/or/reasons.h similarity index 100% rename from src/or/reasons.h rename to src/core/or/reasons.h diff --git a/src/or/relay.c b/src/core/or/relay.c similarity index 100% rename from src/or/relay.c rename to src/core/or/relay.c diff --git a/src/or/relay.h b/src/core/or/relay.h similarity index 100% rename from src/or/relay.h rename to src/core/or/relay.h diff --git a/src/or/relay_crypto_st.h b/src/core/or/relay_crypto_st.h similarity index 100% rename from src/or/relay_crypto_st.h rename to src/core/or/relay_crypto_st.h diff --git a/src/or/scheduler.c b/src/core/or/scheduler.c similarity index 100% rename from src/or/scheduler.c rename to src/core/or/scheduler.c diff --git a/src/or/scheduler.h b/src/core/or/scheduler.h similarity index 100% rename from src/or/scheduler.h rename to src/core/or/scheduler.h diff --git a/src/or/scheduler_kist.c b/src/core/or/scheduler_kist.c similarity index 100% rename from src/or/scheduler_kist.c rename to src/core/or/scheduler_kist.c diff --git a/src/or/scheduler_vanilla.c b/src/core/or/scheduler_vanilla.c similarity index 100% rename from src/or/scheduler_vanilla.c rename to src/core/or/scheduler_vanilla.c diff --git a/src/or/server_port_cfg_st.h b/src/core/or/server_port_cfg_st.h similarity index 100% rename from src/or/server_port_cfg_st.h rename to src/core/or/server_port_cfg_st.h diff --git a/src/or/socks_request_st.h b/src/core/or/socks_request_st.h similarity index 100% rename from src/or/socks_request_st.h rename to src/core/or/socks_request_st.h diff --git a/src/or/status.c b/src/core/or/status.c similarity index 100% rename from src/or/status.c rename to src/core/or/status.c diff --git a/src/or/status.h b/src/core/or/status.h similarity index 100% rename from src/or/status.h rename to src/core/or/status.h diff --git a/src/or/tor_version_st.h b/src/core/or/tor_version_st.h similarity index 100% rename from src/or/tor_version_st.h rename to src/core/or/tor_version_st.h diff --git a/src/or/var_cell_st.h b/src/core/or/var_cell_st.h similarity index 100% rename from src/or/var_cell_st.h rename to src/core/or/var_cell_st.h diff --git a/src/or/proto_cell.c b/src/core/proto/proto_cell.c similarity index 100% rename from src/or/proto_cell.c rename to src/core/proto/proto_cell.c diff --git a/src/or/proto_cell.h b/src/core/proto/proto_cell.h similarity index 100% rename from src/or/proto_cell.h rename to src/core/proto/proto_cell.h diff --git a/src/or/proto_control0.c b/src/core/proto/proto_control0.c similarity index 100% rename from src/or/proto_control0.c rename to src/core/proto/proto_control0.c diff --git a/src/or/proto_control0.h b/src/core/proto/proto_control0.h similarity index 100% rename from src/or/proto_control0.h rename to src/core/proto/proto_control0.h diff --git a/src/or/proto_ext_or.c b/src/core/proto/proto_ext_or.c similarity index 100% rename from src/or/proto_ext_or.c rename to src/core/proto/proto_ext_or.c diff --git a/src/or/proto_ext_or.h b/src/core/proto/proto_ext_or.h similarity index 100% rename from src/or/proto_ext_or.h rename to src/core/proto/proto_ext_or.h diff --git a/src/or/proto_http.c b/src/core/proto/proto_http.c similarity index 100% rename from src/or/proto_http.c rename to src/core/proto/proto_http.c diff --git a/src/or/proto_http.h b/src/core/proto/proto_http.h similarity index 100% rename from src/or/proto_http.h rename to src/core/proto/proto_http.h diff --git a/src/or/proto_socks.c b/src/core/proto/proto_socks.c similarity index 100% rename from src/or/proto_socks.c rename to src/core/proto/proto_socks.c diff --git a/src/or/proto_socks.h b/src/core/proto/proto_socks.h similarity index 100% rename from src/or/proto_socks.h rename to src/core/proto/proto_socks.h diff --git a/src/or/protover.c b/src/core/proto/protover.c similarity index 100% rename from src/or/protover.c rename to src/core/proto/protover.c diff --git a/src/or/protover.h b/src/core/proto/protover.h similarity index 100% rename from src/or/protover.h rename to src/core/proto/protover.h diff --git a/src/or/protover_rust.c b/src/core/proto/protover_rust.c similarity index 100% rename from src/or/protover_rust.c rename to src/core/proto/protover_rust.c diff --git a/src/or/tor_api.c b/src/feature/api/tor_api.c similarity index 100% rename from src/or/tor_api.c rename to src/feature/api/tor_api.c diff --git a/src/or/tor_api.h b/src/feature/api/tor_api.h similarity index 100% rename from src/or/tor_api.h rename to src/feature/api/tor_api.h diff --git a/src/or/tor_api_internal.h b/src/feature/api/tor_api_internal.h similarity index 100% rename from src/or/tor_api_internal.h rename to src/feature/api/tor_api_internal.h diff --git a/src/or/addressmap.c b/src/feature/client/addressmap.c similarity index 100% rename from src/or/addressmap.c rename to src/feature/client/addressmap.c diff --git a/src/or/addressmap.h b/src/feature/client/addressmap.h similarity index 100% rename from src/or/addressmap.h rename to src/feature/client/addressmap.h diff --git a/src/or/bridges.c b/src/feature/client/bridges.c similarity index 100% rename from src/or/bridges.c rename to src/feature/client/bridges.c diff --git a/src/or/bridges.h b/src/feature/client/bridges.h similarity index 100% rename from src/or/bridges.h rename to src/feature/client/bridges.h diff --git a/src/or/circpathbias.c b/src/feature/client/circpathbias.c similarity index 100% rename from src/or/circpathbias.c rename to src/feature/client/circpathbias.c diff --git a/src/or/circpathbias.h b/src/feature/client/circpathbias.h similarity index 100% rename from src/or/circpathbias.h rename to src/feature/client/circpathbias.h diff --git a/src/or/dnsserv.c b/src/feature/client/dnsserv.c similarity index 100% rename from src/or/dnsserv.c rename to src/feature/client/dnsserv.c diff --git a/src/or/dnsserv.h b/src/feature/client/dnsserv.h similarity index 100% rename from src/or/dnsserv.h rename to src/feature/client/dnsserv.h diff --git a/src/or/entrynodes.c b/src/feature/client/entrynodes.c similarity index 100% rename from src/or/entrynodes.c rename to src/feature/client/entrynodes.c diff --git a/src/or/entrynodes.h b/src/feature/client/entrynodes.h similarity index 100% rename from src/or/entrynodes.h rename to src/feature/client/entrynodes.h diff --git a/src/or/transports.c b/src/feature/client/transports.c similarity index 100% rename from src/or/transports.c rename to src/feature/client/transports.c diff --git a/src/or/transports.h b/src/feature/client/transports.h similarity index 100% rename from src/or/transports.h rename to src/feature/client/transports.h diff --git a/src/or/control.c b/src/feature/control/control.c similarity index 100% rename from src/or/control.c rename to src/feature/control/control.c diff --git a/src/or/control.h b/src/feature/control/control.h similarity index 100% rename from src/or/control.h rename to src/feature/control/control.h diff --git a/src/or/control_connection_st.h b/src/feature/control/control_connection_st.h similarity index 100% rename from src/or/control_connection_st.h rename to src/feature/control/control_connection_st.h diff --git a/src/or/dirauth/dircollate.c b/src/feature/dirauth/dircollate.c similarity index 100% rename from src/or/dirauth/dircollate.c rename to src/feature/dirauth/dircollate.c diff --git a/src/or/dirauth/dircollate.h b/src/feature/dirauth/dircollate.h similarity index 100% rename from src/or/dirauth/dircollate.h rename to src/feature/dirauth/dircollate.h diff --git a/src/or/dirauth/dirvote.c b/src/feature/dirauth/dirvote.c similarity index 100% rename from src/or/dirauth/dirvote.c rename to src/feature/dirauth/dirvote.c diff --git a/src/or/dirauth/dirvote.h b/src/feature/dirauth/dirvote.h similarity index 100% rename from src/or/dirauth/dirvote.h rename to src/feature/dirauth/dirvote.h diff --git a/src/or/keypin.c b/src/feature/dirauth/keypin.c similarity index 100% rename from src/or/keypin.c rename to src/feature/dirauth/keypin.c diff --git a/src/or/keypin.h b/src/feature/dirauth/keypin.h similarity index 100% rename from src/or/keypin.h rename to src/feature/dirauth/keypin.h diff --git a/src/or/dirauth/mode.h b/src/feature/dirauth/mode.h similarity index 100% rename from src/or/dirauth/mode.h rename to src/feature/dirauth/mode.h diff --git a/src/or/ns_detached_signatures_st.h b/src/feature/dirauth/ns_detached_signatures_st.h similarity index 100% rename from src/or/ns_detached_signatures_st.h rename to src/feature/dirauth/ns_detached_signatures_st.h diff --git a/src/or/dirauth/shared_random.c b/src/feature/dirauth/shared_random.c similarity index 100% rename from src/or/dirauth/shared_random.c rename to src/feature/dirauth/shared_random.c diff --git a/src/or/dirauth/shared_random.h b/src/feature/dirauth/shared_random.h similarity index 100% rename from src/or/dirauth/shared_random.h rename to src/feature/dirauth/shared_random.h diff --git a/src/or/dirauth/shared_random_state.c b/src/feature/dirauth/shared_random_state.c similarity index 100% rename from src/or/dirauth/shared_random_state.c rename to src/feature/dirauth/shared_random_state.c diff --git a/src/or/dirauth/shared_random_state.h b/src/feature/dirauth/shared_random_state.h similarity index 100% rename from src/or/dirauth/shared_random_state.h rename to src/feature/dirauth/shared_random_state.h diff --git a/src/or/vote_microdesc_hash_st.h b/src/feature/dirauth/vote_microdesc_hash_st.h similarity index 100% rename from src/or/vote_microdesc_hash_st.h rename to src/feature/dirauth/vote_microdesc_hash_st.h diff --git a/src/or/cached_dir_st.h b/src/feature/dircache/cached_dir_st.h similarity index 100% rename from src/or/cached_dir_st.h rename to src/feature/dircache/cached_dir_st.h diff --git a/src/or/conscache.c b/src/feature/dircache/conscache.c similarity index 100% rename from src/or/conscache.c rename to src/feature/dircache/conscache.c diff --git a/src/or/conscache.h b/src/feature/dircache/conscache.h similarity index 100% rename from src/or/conscache.h rename to src/feature/dircache/conscache.h diff --git a/src/or/consdiffmgr.c b/src/feature/dircache/consdiffmgr.c similarity index 100% rename from src/or/consdiffmgr.c rename to src/feature/dircache/consdiffmgr.c diff --git a/src/or/consdiffmgr.h b/src/feature/dircache/consdiffmgr.h similarity index 100% rename from src/or/consdiffmgr.h rename to src/feature/dircache/consdiffmgr.h diff --git a/src/or/directory.c b/src/feature/dircache/directory.c similarity index 100% rename from src/or/directory.c rename to src/feature/dircache/directory.c diff --git a/src/or/directory.h b/src/feature/dircache/directory.h similarity index 100% rename from src/or/directory.h rename to src/feature/dircache/directory.h diff --git a/src/or/dirserv.c b/src/feature/dircache/dirserv.c similarity index 100% rename from src/or/dirserv.c rename to src/feature/dircache/dirserv.c diff --git a/src/or/dirserv.h b/src/feature/dircache/dirserv.h similarity index 100% rename from src/or/dirserv.h rename to src/feature/dircache/dirserv.h diff --git a/src/or/dir_server_st.h b/src/feature/dirclient/dir_server_st.h similarity index 100% rename from src/or/dir_server_st.h rename to src/feature/dirclient/dir_server_st.h diff --git a/src/or/download_status_st.h b/src/feature/dirclient/download_status_st.h similarity index 100% rename from src/or/download_status_st.h rename to src/feature/dirclient/download_status_st.h diff --git a/src/or/consdiff.c b/src/feature/dircommon/consdiff.c similarity index 100% rename from src/or/consdiff.c rename to src/feature/dircommon/consdiff.c diff --git a/src/or/consdiff.h b/src/feature/dircommon/consdiff.h similarity index 100% rename from src/or/consdiff.h rename to src/feature/dircommon/consdiff.h diff --git a/src/or/dir_connection_st.h b/src/feature/dircommon/dir_connection_st.h similarity index 100% rename from src/or/dir_connection_st.h rename to src/feature/dircommon/dir_connection_st.h diff --git a/src/or/fp_pair.c b/src/feature/dircommon/fp_pair.c similarity index 100% rename from src/or/fp_pair.c rename to src/feature/dircommon/fp_pair.c diff --git a/src/or/fp_pair.h b/src/feature/dircommon/fp_pair.h similarity index 100% rename from src/or/fp_pair.h rename to src/feature/dircommon/fp_pair.h diff --git a/src/or/vote_timing_st.h b/src/feature/dircommon/vote_timing_st.h similarity index 100% rename from src/or/vote_timing_st.h rename to src/feature/dircommon/vote_timing_st.h diff --git a/src/or/voting_schedule.c b/src/feature/dircommon/voting_schedule.c similarity index 100% rename from src/or/voting_schedule.c rename to src/feature/dircommon/voting_schedule.c diff --git a/src/or/voting_schedule.h b/src/feature/dircommon/voting_schedule.h similarity index 100% rename from src/or/voting_schedule.h rename to src/feature/dircommon/voting_schedule.h diff --git a/src/or/hibernate.c b/src/feature/hibernate/hibernate.c similarity index 100% rename from src/or/hibernate.c rename to src/feature/hibernate/hibernate.c diff --git a/src/or/hibernate.h b/src/feature/hibernate/hibernate.h similarity index 100% rename from src/or/hibernate.h rename to src/feature/hibernate/hibernate.h diff --git a/src/or/hs_cache.c b/src/feature/hs/hs_cache.c similarity index 100% rename from src/or/hs_cache.c rename to src/feature/hs/hs_cache.c diff --git a/src/or/hs_cache.h b/src/feature/hs/hs_cache.h similarity index 100% rename from src/or/hs_cache.h rename to src/feature/hs/hs_cache.h diff --git a/src/or/hs_cell.c b/src/feature/hs/hs_cell.c similarity index 100% rename from src/or/hs_cell.c rename to src/feature/hs/hs_cell.c diff --git a/src/or/hs_cell.h b/src/feature/hs/hs_cell.h similarity index 100% rename from src/or/hs_cell.h rename to src/feature/hs/hs_cell.h diff --git a/src/or/hs_circuit.c b/src/feature/hs/hs_circuit.c similarity index 100% rename from src/or/hs_circuit.c rename to src/feature/hs/hs_circuit.c diff --git a/src/or/hs_circuit.h b/src/feature/hs/hs_circuit.h similarity index 100% rename from src/or/hs_circuit.h rename to src/feature/hs/hs_circuit.h diff --git a/src/or/hs_circuitmap.c b/src/feature/hs/hs_circuitmap.c similarity index 100% rename from src/or/hs_circuitmap.c rename to src/feature/hs/hs_circuitmap.c diff --git a/src/or/hs_circuitmap.h b/src/feature/hs/hs_circuitmap.h similarity index 100% rename from src/or/hs_circuitmap.h rename to src/feature/hs/hs_circuitmap.h diff --git a/src/or/hs_client.c b/src/feature/hs/hs_client.c similarity index 100% rename from src/or/hs_client.c rename to src/feature/hs/hs_client.c diff --git a/src/or/hs_client.h b/src/feature/hs/hs_client.h similarity index 100% rename from src/or/hs_client.h rename to src/feature/hs/hs_client.h diff --git a/src/or/hs_common.c b/src/feature/hs/hs_common.c similarity index 100% rename from src/or/hs_common.c rename to src/feature/hs/hs_common.c diff --git a/src/or/hs_common.h b/src/feature/hs/hs_common.h similarity index 100% rename from src/or/hs_common.h rename to src/feature/hs/hs_common.h diff --git a/src/or/hs_config.c b/src/feature/hs/hs_config.c similarity index 100% rename from src/or/hs_config.c rename to src/feature/hs/hs_config.c diff --git a/src/or/hs_config.h b/src/feature/hs/hs_config.h similarity index 100% rename from src/or/hs_config.h rename to src/feature/hs/hs_config.h diff --git a/src/or/hs_control.c b/src/feature/hs/hs_control.c similarity index 100% rename from src/or/hs_control.c rename to src/feature/hs/hs_control.c diff --git a/src/or/hs_control.h b/src/feature/hs/hs_control.h similarity index 100% rename from src/or/hs_control.h rename to src/feature/hs/hs_control.h diff --git a/src/or/hs_descriptor.c b/src/feature/hs/hs_descriptor.c similarity index 100% rename from src/or/hs_descriptor.c rename to src/feature/hs/hs_descriptor.c diff --git a/src/or/hs_descriptor.h b/src/feature/hs/hs_descriptor.h similarity index 100% rename from src/or/hs_descriptor.h rename to src/feature/hs/hs_descriptor.h diff --git a/src/or/hs_ident.c b/src/feature/hs/hs_ident.c similarity index 100% rename from src/or/hs_ident.c rename to src/feature/hs/hs_ident.c diff --git a/src/or/hs_ident.h b/src/feature/hs/hs_ident.h similarity index 100% rename from src/or/hs_ident.h rename to src/feature/hs/hs_ident.h diff --git a/src/or/hs_intropoint.c b/src/feature/hs/hs_intropoint.c similarity index 100% rename from src/or/hs_intropoint.c rename to src/feature/hs/hs_intropoint.c diff --git a/src/or/hs_intropoint.h b/src/feature/hs/hs_intropoint.h similarity index 100% rename from src/or/hs_intropoint.h rename to src/feature/hs/hs_intropoint.h diff --git a/src/or/hs_service.c b/src/feature/hs/hs_service.c similarity index 100% rename from src/or/hs_service.c rename to src/feature/hs/hs_service.c diff --git a/src/or/hs_service.h b/src/feature/hs/hs_service.h similarity index 100% rename from src/or/hs_service.h rename to src/feature/hs/hs_service.h diff --git a/src/or/hs_stats.c b/src/feature/hs/hs_stats.c similarity index 100% rename from src/or/hs_stats.c rename to src/feature/hs/hs_stats.c diff --git a/src/or/hs_stats.h b/src/feature/hs/hs_stats.h similarity index 100% rename from src/or/hs_stats.h rename to src/feature/hs/hs_stats.h diff --git a/src/or/hsdir_index_st.h b/src/feature/hs/hsdir_index_st.h similarity index 100% rename from src/or/hsdir_index_st.h rename to src/feature/hs/hsdir_index_st.h diff --git a/src/or/replaycache.c b/src/feature/hs_common/replaycache.c similarity index 100% rename from src/or/replaycache.c rename to src/feature/hs_common/replaycache.c diff --git a/src/or/replaycache.h b/src/feature/hs_common/replaycache.h similarity index 100% rename from src/or/replaycache.h rename to src/feature/hs_common/replaycache.h diff --git a/src/or/shared_random_client.c b/src/feature/hs_common/shared_random_client.c similarity index 100% rename from src/or/shared_random_client.c rename to src/feature/hs_common/shared_random_client.c diff --git a/src/or/shared_random_client.h b/src/feature/hs_common/shared_random_client.h similarity index 100% rename from src/or/shared_random_client.h rename to src/feature/hs_common/shared_random_client.h diff --git a/src/or/authority_cert_st.h b/src/feature/nodelist/authority_cert_st.h similarity index 100% rename from src/or/authority_cert_st.h rename to src/feature/nodelist/authority_cert_st.h diff --git a/src/or/desc_store_st.h b/src/feature/nodelist/desc_store_st.h similarity index 100% rename from src/or/desc_store_st.h rename to src/feature/nodelist/desc_store_st.h diff --git a/src/or/document_signature_st.h b/src/feature/nodelist/document_signature_st.h similarity index 100% rename from src/or/document_signature_st.h rename to src/feature/nodelist/document_signature_st.h diff --git a/src/or/extrainfo_st.h b/src/feature/nodelist/extrainfo_st.h similarity index 100% rename from src/or/extrainfo_st.h rename to src/feature/nodelist/extrainfo_st.h diff --git a/src/or/microdesc.c b/src/feature/nodelist/microdesc.c similarity index 100% rename from src/or/microdesc.c rename to src/feature/nodelist/microdesc.c diff --git a/src/or/microdesc.h b/src/feature/nodelist/microdesc.h similarity index 100% rename from src/or/microdesc.h rename to src/feature/nodelist/microdesc.h diff --git a/src/or/microdesc_st.h b/src/feature/nodelist/microdesc_st.h similarity index 100% rename from src/or/microdesc_st.h rename to src/feature/nodelist/microdesc_st.h diff --git a/src/or/networkstatus.c b/src/feature/nodelist/networkstatus.c similarity index 100% rename from src/or/networkstatus.c rename to src/feature/nodelist/networkstatus.c diff --git a/src/or/networkstatus.h b/src/feature/nodelist/networkstatus.h similarity index 100% rename from src/or/networkstatus.h rename to src/feature/nodelist/networkstatus.h diff --git a/src/or/networkstatus_sr_info_st.h b/src/feature/nodelist/networkstatus_sr_info_st.h similarity index 100% rename from src/or/networkstatus_sr_info_st.h rename to src/feature/nodelist/networkstatus_sr_info_st.h diff --git a/src/or/networkstatus_st.h b/src/feature/nodelist/networkstatus_st.h similarity index 100% rename from src/or/networkstatus_st.h rename to src/feature/nodelist/networkstatus_st.h diff --git a/src/or/networkstatus_voter_info_st.h b/src/feature/nodelist/networkstatus_voter_info_st.h similarity index 100% rename from src/or/networkstatus_voter_info_st.h rename to src/feature/nodelist/networkstatus_voter_info_st.h diff --git a/src/or/node_st.h b/src/feature/nodelist/node_st.h similarity index 100% rename from src/or/node_st.h rename to src/feature/nodelist/node_st.h diff --git a/src/or/nodelist.c b/src/feature/nodelist/nodelist.c similarity index 100% rename from src/or/nodelist.c rename to src/feature/nodelist/nodelist.c diff --git a/src/or/nodelist.h b/src/feature/nodelist/nodelist.h similarity index 100% rename from src/or/nodelist.h rename to src/feature/nodelist/nodelist.h diff --git a/src/or/parsecommon.c b/src/feature/nodelist/parsecommon.c similarity index 100% rename from src/or/parsecommon.c rename to src/feature/nodelist/parsecommon.c diff --git a/src/or/parsecommon.h b/src/feature/nodelist/parsecommon.h similarity index 100% rename from src/or/parsecommon.h rename to src/feature/nodelist/parsecommon.h diff --git a/src/or/routerinfo_st.h b/src/feature/nodelist/routerinfo_st.h similarity index 100% rename from src/or/routerinfo_st.h rename to src/feature/nodelist/routerinfo_st.h diff --git a/src/or/routerlist.c b/src/feature/nodelist/routerlist.c similarity index 100% rename from src/or/routerlist.c rename to src/feature/nodelist/routerlist.c diff --git a/src/or/routerlist.h b/src/feature/nodelist/routerlist.h similarity index 100% rename from src/or/routerlist.h rename to src/feature/nodelist/routerlist.h diff --git a/src/or/routerlist_st.h b/src/feature/nodelist/routerlist_st.h similarity index 100% rename from src/or/routerlist_st.h rename to src/feature/nodelist/routerlist_st.h diff --git a/src/or/routerparse.c b/src/feature/nodelist/routerparse.c similarity index 100% rename from src/or/routerparse.c rename to src/feature/nodelist/routerparse.c diff --git a/src/or/routerparse.h b/src/feature/nodelist/routerparse.h similarity index 100% rename from src/or/routerparse.h rename to src/feature/nodelist/routerparse.h diff --git a/src/or/routerset.c b/src/feature/nodelist/routerset.c similarity index 100% rename from src/or/routerset.c rename to src/feature/nodelist/routerset.c diff --git a/src/or/routerset.h b/src/feature/nodelist/routerset.h similarity index 100% rename from src/or/routerset.h rename to src/feature/nodelist/routerset.h diff --git a/src/or/routerstatus_st.h b/src/feature/nodelist/routerstatus_st.h similarity index 100% rename from src/or/routerstatus_st.h rename to src/feature/nodelist/routerstatus_st.h diff --git a/src/or/signed_descriptor_st.h b/src/feature/nodelist/signed_descriptor_st.h similarity index 100% rename from src/or/signed_descriptor_st.h rename to src/feature/nodelist/signed_descriptor_st.h diff --git a/src/or/torcert.c b/src/feature/nodelist/torcert.c similarity index 100% rename from src/or/torcert.c rename to src/feature/nodelist/torcert.c diff --git a/src/or/torcert.h b/src/feature/nodelist/torcert.h similarity index 100% rename from src/or/torcert.h rename to src/feature/nodelist/torcert.h diff --git a/src/or/vote_routerstatus_st.h b/src/feature/nodelist/vote_routerstatus_st.h similarity index 100% rename from src/or/vote_routerstatus_st.h rename to src/feature/nodelist/vote_routerstatus_st.h diff --git a/src/or/dns.c b/src/feature/relay/dns.c similarity index 100% rename from src/or/dns.c rename to src/feature/relay/dns.c diff --git a/src/or/dns.h b/src/feature/relay/dns.h similarity index 100% rename from src/or/dns.h rename to src/feature/relay/dns.h diff --git a/src/or/dns_structs.h b/src/feature/relay/dns_structs.h similarity index 100% rename from src/or/dns_structs.h rename to src/feature/relay/dns_structs.h diff --git a/src/or/ext_orport.c b/src/feature/relay/ext_orport.c similarity index 100% rename from src/or/ext_orport.c rename to src/feature/relay/ext_orport.c diff --git a/src/or/ext_orport.h b/src/feature/relay/ext_orport.h similarity index 100% rename from src/or/ext_orport.h rename to src/feature/relay/ext_orport.h diff --git a/src/or/router.c b/src/feature/relay/router.c similarity index 100% rename from src/or/router.c rename to src/feature/relay/router.c diff --git a/src/or/router.h b/src/feature/relay/router.h similarity index 100% rename from src/or/router.h rename to src/feature/relay/router.h diff --git a/src/or/routerkeys.c b/src/feature/relay/routerkeys.c similarity index 100% rename from src/or/routerkeys.c rename to src/feature/relay/routerkeys.c diff --git a/src/or/routerkeys.h b/src/feature/relay/routerkeys.h similarity index 100% rename from src/or/routerkeys.h rename to src/feature/relay/routerkeys.h diff --git a/src/or/rend_authorized_client_st.h b/src/feature/rend/rend_authorized_client_st.h similarity index 100% rename from src/or/rend_authorized_client_st.h rename to src/feature/rend/rend_authorized_client_st.h diff --git a/src/or/rend_encoded_v2_service_descriptor_st.h b/src/feature/rend/rend_encoded_v2_service_descriptor_st.h similarity index 100% rename from src/or/rend_encoded_v2_service_descriptor_st.h rename to src/feature/rend/rend_encoded_v2_service_descriptor_st.h diff --git a/src/or/rend_intro_point_st.h b/src/feature/rend/rend_intro_point_st.h similarity index 100% rename from src/or/rend_intro_point_st.h rename to src/feature/rend/rend_intro_point_st.h diff --git a/src/or/rend_service_descriptor_st.h b/src/feature/rend/rend_service_descriptor_st.h similarity index 100% rename from src/or/rend_service_descriptor_st.h rename to src/feature/rend/rend_service_descriptor_st.h diff --git a/src/or/rendcache.c b/src/feature/rend/rendcache.c similarity index 100% rename from src/or/rendcache.c rename to src/feature/rend/rendcache.c diff --git a/src/or/rendcache.h b/src/feature/rend/rendcache.h similarity index 100% rename from src/or/rendcache.h rename to src/feature/rend/rendcache.h diff --git a/src/or/rendclient.c b/src/feature/rend/rendclient.c similarity index 100% rename from src/or/rendclient.c rename to src/feature/rend/rendclient.c diff --git a/src/or/rendclient.h b/src/feature/rend/rendclient.h similarity index 100% rename from src/or/rendclient.h rename to src/feature/rend/rendclient.h diff --git a/src/or/rendcommon.c b/src/feature/rend/rendcommon.c similarity index 100% rename from src/or/rendcommon.c rename to src/feature/rend/rendcommon.c diff --git a/src/or/rendcommon.h b/src/feature/rend/rendcommon.h similarity index 100% rename from src/or/rendcommon.h rename to src/feature/rend/rendcommon.h diff --git a/src/or/rendmid.c b/src/feature/rend/rendmid.c similarity index 100% rename from src/or/rendmid.c rename to src/feature/rend/rendmid.c diff --git a/src/or/rendmid.h b/src/feature/rend/rendmid.h similarity index 100% rename from src/or/rendmid.h rename to src/feature/rend/rendmid.h diff --git a/src/or/rendservice.c b/src/feature/rend/rendservice.c similarity index 100% rename from src/or/rendservice.c rename to src/feature/rend/rendservice.c diff --git a/src/or/rendservice.h b/src/feature/rend/rendservice.h similarity index 100% rename from src/or/rendservice.h rename to src/feature/rend/rendservice.h diff --git a/src/or/geoip.c b/src/feature/stats/geoip.c similarity index 100% rename from src/or/geoip.c rename to src/feature/stats/geoip.c diff --git a/src/or/geoip.h b/src/feature/stats/geoip.h similarity index 100% rename from src/or/geoip.h rename to src/feature/stats/geoip.h diff --git a/src/or/rephist.c b/src/feature/stats/rephist.c similarity index 100% rename from src/or/rephist.c rename to src/feature/stats/rephist.c diff --git a/src/or/rephist.h b/src/feature/stats/rephist.h similarity index 100% rename from src/or/rephist.h rename to src/feature/stats/rephist.h diff --git a/src/or/Makefile.nmake b/src/or/Makefile.nmake deleted file mode 100644 index 429ae6785..000000000 --- a/src/or/Makefile.nmake +++ /dev/null @@ -1,79 +0,0 @@ -all: tor.exe - -CFLAGS = /O2 /MT /I ..\win32 /I ......\build-alpha\include /I ..\common \ - /I ..\ext - -LIBS = ......\build-alpha\lib\libevent.lib \ - ......\build-alpha\lib\libcrypto.lib \ - ......\build-alpha\lib\libssl.lib \ - ......\build-alpha\lib\libz.lib \ - ws2_32.lib advapi32.lib shell32.lib \ - crypt32.lib gdi32.lib user32.lib - -LIBTOR_OBJECTS = \ - addressmap.obj \ - buffers.obj \ - channel.obj \ - channelpadding.obj \ - channeltls.obj \ - circpathbias.obj \ - circuitbuild.obj \ - circuitlist.obj \ - circuitmux.obj \ - circuitmux_ewma.obj \ - circuitstats.obj \ - circuituse.obj \ - command.obj \ - config.obj \ - config_codedigest.obj \ - confparse.obj \ - connection.obj \ - connection_edge.obj \ - connection_or.obj \ - control.obj \ - cpuworker.obj \ - directory.obj \ - dirserv.obj \ - dirvote.obj \ - dns.obj \ - dnsserv.obj \ - ext_orport.obj \ - fp_pair.obj \ - entrynodes.obj \ - geoip.obj \ - hibernate.obj \ - main.obj \ - microdesc.obj \ - networkstatus.obj \ - nodelist.obj \ - ntmain.obj \ - onion.obj \ - onion_fast.obj \ - onion_ntor.obj \ - onion_tap.obj \ - policies.obj \ - reasons.obj \ - relay.obj \ - rendclient.obj \ - rendcommon.obj \ - rendmid.obj \ - rendservice.obj \ - rephist.obj \ - replaycache.obj \ - router.obj \ - routerlist.obj \ - routerparse.obj \ - routerset.obj \ - scheduler.obj \ - statefile.obj \ - status.obj \ - transports.obj - -libtor.lib: $(LIBTOR_OBJECTS) - lib $(LIBTOR_OBJECTS) /out:$@ - -tor.exe: libtor.lib tor_main.obj - $(CC) $(CFLAGS) $(LIBS) libtor.lib ..\common*.lib ..\ext*.lib tor_main.obj /Fe$@ - -clean: - del $(LIBTOR_OBJECTS) tor_main.obj *.lib tor.exe
tor-commits@lists.torproject.org