aboutsummaryrefslogtreecommitdiff
path: root/src/or/extend_info_st.h
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2018-06-15 15:37:05 -0400
committerNick Mathewson <nickm@torproject.org>2018-06-15 15:37:05 -0400
commit3191ba389d12146b786ffd8af842a80e58c8c802 (patch)
tree2508677458946fe1fbffe216993b1201168a3678 /src/or/extend_info_st.h
parentfde868ffe3ace818d67374858c54418296a62e79 (diff)
downloadtor-3191ba389d12146b786ffd8af842a80e58c8c802.tar.gz
tor-3191ba389d12146b786ffd8af842a80e58c8c802.zip
Move extend_info_t into its own header.
Diffstat (limited to 'src/or/extend_info_st.h')
-rw-r--r--src/or/extend_info_st.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/or/extend_info_st.h b/src/or/extend_info_st.h
new file mode 100644
index 0000000000..42c638d6d5
--- /dev/null
+++ b/src/or/extend_info_st.h
@@ -0,0 +1,28 @@
+/* Copyright (c) 2001 Matej Pfajfar.
+ * Copyright (c) 2001-2004, Roger Dingledine.
+ * Copyright (c) 2004-2006, Roger Dingledine, Nick Mathewson.
+ * Copyright (c) 2007-2017, The Tor Project, Inc. */
+/* See LICENSE for licensing information */
+
+#ifndef EXTEND_INFO_ST_H
+#define EXTEND_INFO_ST_H
+
+/** Information on router used when extending a circuit. We don't need a
+ * full routerinfo_t to extend: we only need addr:port:keyid to build an OR
+ * connection, and onion_key to create the onionskin. Note that for onehop
+ * general-purpose tunnels, the onion_key is NULL. */
+struct extend_info_t {
+ char nickname[MAX_HEX_NICKNAME_LEN+1]; /**< This router's nickname for
+ * display. */
+ /** Hash of this router's RSA identity key. */
+ char identity_digest[DIGEST_LEN];
+ /** Ed25519 identity for this router, if any. */
+ ed25519_public_key_t ed_identity;
+ uint16_t port; /**< OR port. */
+ tor_addr_t addr; /**< IP address. */
+ crypto_pk_t *onion_key; /**< Current onionskin key. */
+ curve25519_public_key_t curve25519_onion_key;
+};
+
+#endif
+