diff options
author | George Kadianakis <desnacked@riseup.net> | 2019-04-26 14:19:14 +0300 |
---|---|---|
committer | George Kadianakis <desnacked@riseup.net> | 2019-05-03 18:15:26 +0300 |
commit | 55d35c0caa4142f92e2efd85bffe52568c173100 (patch) | |
tree | 1c46c6ed8d5540997681d63eb650d9afdd0c2001 /src | |
parent | 2ef0324639dd2e2c551be039c7f449eb6cab6703 (diff) | |
download | tor-55d35c0caa4142f92e2efd85bffe52568c173100.tar.gz tor-55d35c0caa4142f92e2efd85bffe52568c173100.zip |
Hiding crypt_path_t: Hiding 'crypto' using a macro.
Diffstat (limited to 'src')
-rw-r--r-- | src/core/or/crypt_path_st.h | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/src/core/or/crypt_path_st.h b/src/core/or/crypt_path_st.h index 833cfefad1..d18d23e939 100644 --- a/src/core/or/crypt_path_st.h +++ b/src/core/or/crypt_path_st.h @@ -24,15 +24,16 @@ struct onion_handshake_state_t { } u; }; +/** Macro to encapsulate private members of a struct. + * + * Renames 'x' to 'x_crypt_path_private_field'. + */ +#define CRYPT_PATH_PRIV_FIELD(x) x ## _crypt_path_private_field + #ifdef CRYPT_PATH_PRIVATE -/* The private parts of crypt path that don't need to be exposed to all the - * modules. */ -struct crypt_path_private_t { - /** Cryptographic state used for encrypting and authenticating relay - * cells to and from this hop. */ - relay_crypto_t crypto; -}; +/* Helper macro to access private members of a struct. */ +#define pvt_crypto CRYPT_PATH_PRIV_FIELD(crypto) #endif @@ -74,9 +75,11 @@ struct crypt_path_t { int deliver_window; /**< How many cells are we willing to deliver originating * at this step? */ - /* Private parts of the crypt_path. Eventually everything should be - * private. */ - struct crypt_path_private_t *private; + /*********************** Private members ****************************/ + + /** Private member: Cryptographic state used for encrypting and + * authenticating relay cells to and from this hop. */ + relay_crypto_t CRYPT_PATH_PRIV_FIELD(crypto); }; #endif |