summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGeorge Kadianakis <desnacked@riseup.net>2019-04-26 14:19:14 +0300
committerGeorge Kadianakis <desnacked@riseup.net>2019-05-03 18:15:26 +0300
commit55d35c0caa4142f92e2efd85bffe52568c173100 (patch)
tree1c46c6ed8d5540997681d63eb650d9afdd0c2001 /src
parent2ef0324639dd2e2c551be039c7f449eb6cab6703 (diff)
downloadtor-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.h23
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