diff options
author | Sebastian Hahn <sebastian@torproject.org> | 2010-07-23 20:38:25 +0200 |
---|---|---|
committer | Sebastian Hahn <sebastian@torproject.org> | 2010-07-27 10:00:45 +0200 |
commit | f6852fe031e066f46337ea936a40e3e2720bc5ad (patch) | |
tree | dcec8d00f05d4360087fec8786de410110143b8a /src/or | |
parent | af0c954bc5201e49b406332bea26ca4a71b32a94 (diff) | |
download | tor-f6852fe031e066f46337ea936a40e3e2720bc5ad.tar.gz tor-f6852fe031e066f46337ea936a40e3e2720bc5ad.zip |
Create onion.h
Diffstat (limited to 'src/or')
-rw-r--r-- | src/or/circuitbuild.c | 1 | ||||
-rw-r--r-- | src/or/circuitlist.c | 1 | ||||
-rw-r--r-- | src/or/command.c | 1 | ||||
-rw-r--r-- | src/or/cpuworker.c | 1 | ||||
-rw-r--r-- | src/or/main.c | 1 | ||||
-rw-r--r-- | src/or/onion.c | 1 | ||||
-rw-r--r-- | src/or/onion.h | 48 | ||||
-rw-r--r-- | src/or/or.h | 34 |
8 files changed, 54 insertions, 34 deletions
diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c index 5b360807d5..00c9026faa 100644 --- a/src/or/circuitbuild.c +++ b/src/or/circuitbuild.c @@ -23,6 +23,7 @@ #include "directory.h" #include "main.h" #include "networkstatus.h" +#include "onion.h" #include "router.h" #include "routerlist.h" #include "crypto.h" diff --git a/src/or/circuitlist.c b/src/or/circuitlist.c index b8c2737663..044cdb9c34 100644 --- a/src/or/circuitlist.c +++ b/src/or/circuitlist.c @@ -19,6 +19,7 @@ #include "connection_or.h" #include "control.h" #include "networkstatus.h" +#include "onion.h" #include "rendclient.h" #include "rendcommon.h" #include "routerlist.h" diff --git a/src/or/command.c b/src/or/command.c index 796f75cde4..b3b7c2d374 100644 --- a/src/or/command.c +++ b/src/or/command.c @@ -25,6 +25,7 @@ #include "control.h" #include "cpuworker.h" #include "hibernate.h" +#include "onion.h" #include "router.h" #include "routerlist.h" diff --git a/src/or/cpuworker.c b/src/or/cpuworker.c index 4ab6d4164f..2760d96665 100644 --- a/src/or/cpuworker.c +++ b/src/or/cpuworker.c @@ -20,6 +20,7 @@ #include "connection.h" #include "cpuworker.h" #include "main.h" +#include "onion.h" #include "router.h" /** The maximum number of cpuworker processes we will keep around. */ diff --git a/src/or/main.c b/src/or/main.c index 67688bd6df..b30a77eddd 100644 --- a/src/or/main.c +++ b/src/or/main.c @@ -34,6 +34,7 @@ #include "microdesc.h" #include "networkstatus.h" #include "ntmain.h" +#include "onion.h" #include "rendclient.h" #include "rendcommon.h" #include "rendservice.h" diff --git a/src/or/onion.c b/src/or/onion.c index 5b4f3a07c7..1612d389de 100644 --- a/src/or/onion.c +++ b/src/or/onion.c @@ -13,6 +13,7 @@ #include "or.h" #include "circuitlist.h" #include "config.h" +#include "onion.h" /** Type for a linked list of circuits that are waiting for a free CPU worker * to process a waiting onion handshake. */ diff --git a/src/or/onion.h b/src/or/onion.h new file mode 100644 index 0000000000..e84dbb47be --- /dev/null +++ b/src/or/onion.h @@ -0,0 +1,48 @@ +/* Copyright (c) 2001 Matej Pfajfar. + * Copyright (c) 2001-2004, Roger Dingledine. + * Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson. + * Copyright (c) 2007-2010, The Tor Project, Inc. */ +/* See LICENSE for licensing information */ + +/** + * \file onion.h + * \brief Header file for onion.c. + **/ + +#ifndef _TOR_ONION_H +#define _TOR_ONION_H + +int onion_pending_add(or_circuit_t *circ, char *onionskin); +or_circuit_t *onion_next_task(char **onionskin_out); +void onion_pending_remove(or_circuit_t *circ); + +int onion_skin_create(crypto_pk_env_t *router_key, + crypto_dh_env_t **handshake_state_out, + char *onion_skin_out); + +int onion_skin_server_handshake(const char *onion_skin, + crypto_pk_env_t *private_key, + crypto_pk_env_t *prev_private_key, + char *handshake_reply_out, + char *key_out, + size_t key_out_len); + +int onion_skin_client_handshake(crypto_dh_env_t *handshake_state, + const char *handshake_reply, + char *key_out, + size_t key_out_len); + +int fast_server_handshake(const char *key_in, + char *handshake_reply_out, + char *key_out, + size_t key_out_len); + +int fast_client_handshake(const char *handshake_state, + const char *handshake_reply_out, + char *key_out, + size_t key_out_len); + +void clear_pending_onions(void); + +#endif + diff --git a/src/or/or.h b/src/or/or.h index 2afbac6f38..8322cf3d47 100644 --- a/src/or/or.h +++ b/src/or/or.h @@ -3293,40 +3293,6 @@ typedef enum version_status_t { VS_UNKNOWN, /**< We have no idea. */ } version_status_t; -/********************************* onion.c ***************************/ - -int onion_pending_add(or_circuit_t *circ, char *onionskin); -or_circuit_t *onion_next_task(char **onionskin_out); -void onion_pending_remove(or_circuit_t *circ); - -int onion_skin_create(crypto_pk_env_t *router_key, - crypto_dh_env_t **handshake_state_out, - char *onion_skin_out); - -int onion_skin_server_handshake(const char *onion_skin, - crypto_pk_env_t *private_key, - crypto_pk_env_t *prev_private_key, - char *handshake_reply_out, - char *key_out, - size_t key_out_len); - -int onion_skin_client_handshake(crypto_dh_env_t *handshake_state, - const char *handshake_reply, - char *key_out, - size_t key_out_len); - -int fast_server_handshake(const char *key_in, - char *handshake_reply_out, - char *key_out, - size_t key_out_len); - -int fast_client_handshake(const char *handshake_state, - const char *handshake_reply_out, - char *key_out, - size_t key_out_len); - -void clear_pending_onions(void); - /********************************* policies.c ************************/ /* (length of "accept 255.255.255.255/255.255.255.255:65535-65535\n" plus a |