summaryrefslogtreecommitdiff
path: root/src/or/torcert.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/or/torcert.h')
-rw-r--r--src/or/torcert.h110
1 files changed, 0 insertions, 110 deletions
diff --git a/src/or/torcert.h b/src/or/torcert.h
deleted file mode 100644
index 5fa97679df..0000000000
--- a/src/or/torcert.h
+++ /dev/null
@@ -1,110 +0,0 @@
-/* Copyright (c) 2014-2018, The Tor Project, Inc. */
-/* See LICENSE for licensing information */
-
-#ifndef TORCERT_H_INCLUDED
-#define TORCERT_H_INCLUDED
-
-#include "lib/crypt_ops/crypto_ed25519.h"
-
-#define SIGNED_KEY_TYPE_ED25519 0x01
-
-#define CERT_TYPE_ID_SIGNING 0x04
-#define CERT_TYPE_SIGNING_LINK 0x05
-#define CERT_TYPE_SIGNING_AUTH 0x06
-#define CERT_TYPE_SIGNING_HS_DESC 0x08
-#define CERT_TYPE_AUTH_HS_IP_KEY 0x09
-#define CERT_TYPE_ONION_ID 0x0A
-#define CERT_TYPE_CROSS_HS_IP_KEYS 0x0B
-
-#define CERT_FLAG_INCLUDE_SIGNING_KEY 0x1
-
-/** An ed25519-signed certificate as used throughout the Tor protocol.
- **/
-typedef struct tor_cert_st {
- /** The key authenticated by this certificate */
- ed25519_public_key_t signed_key;
- /** The key that signed this certificate. This value may be unset if the
- * certificate has never been checked, and didn't include its own key. */
- ed25519_public_key_t signing_key;
- /** A time after which this certificate will no longer be valid. */
- time_t valid_until;
-
- /** The encoded representation of this certificate */
- uint8_t *encoded;
- /** The length of <b>encoded</b> */
- size_t encoded_len;
-
- /** One of CERT_TYPE_... */
- uint8_t cert_type;
- /** True iff we received a signing key embedded in this certificate */
- unsigned signing_key_included : 1;
- /** True iff we checked the signature and found it bad */
- unsigned sig_bad : 1;
- /** True iff we checked the signature and found it correct */
- unsigned sig_ok : 1;
- /** True iff we checked the signature and first found that the cert
- * had expired */
- unsigned cert_expired : 1;
- /** True iff we checked the signature and found the whole cert valid */
- unsigned cert_valid : 1;
-} tor_cert_t;
-
-struct tor_tls_t;
-
-tor_cert_t *tor_cert_create(const ed25519_keypair_t *signing_key,
- uint8_t cert_type,
- const ed25519_public_key_t *signed_key,
- time_t now, time_t lifetime,
- uint32_t flags);
-
-tor_cert_t *tor_cert_parse(const uint8_t *cert, size_t certlen);
-
-void tor_cert_free_(tor_cert_t *cert);
-#define tor_cert_free(cert) FREE_AND_NULL(tor_cert_t, tor_cert_free_, (cert))
-
-int tor_cert_get_checkable_sig(ed25519_checkable_t *checkable_out,
- const tor_cert_t *out,
- const ed25519_public_key_t *pubkey,
- time_t *expiration_out);
-
-int tor_cert_checksig(tor_cert_t *cert,
- const ed25519_public_key_t *pubkey, time_t now);
-const char *tor_cert_describe_signature_status(const tor_cert_t *cert);
-
-tor_cert_t *tor_cert_dup(const tor_cert_t *cert);
-int tor_cert_eq(const tor_cert_t *cert1, const tor_cert_t *cert2);
-int tor_cert_opt_eq(const tor_cert_t *cert1, const tor_cert_t *cert2);
-
-ssize_t tor_make_rsa_ed25519_crosscert(const ed25519_public_key_t *ed_key,
- const crypto_pk_t *rsa_key,
- time_t expires,
- uint8_t **cert);
-MOCK_DECL(int,
-rsa_ed25519_crosscert_check, (const uint8_t *crosscert,
- const size_t crosscert_len,
- const crypto_pk_t *rsa_id_key,
- const ed25519_public_key_t *master_key,
- const time_t reject_if_expired_before));
-
-or_handshake_certs_t *or_handshake_certs_new(void);
-void or_handshake_certs_free_(or_handshake_certs_t *certs);
-#define or_handshake_certs_free(certs) \
- FREE_AND_NULL(or_handshake_certs_t, or_handshake_certs_free_, (certs))
-int or_handshake_certs_rsa_ok(int severity,
- or_handshake_certs_t *certs,
- struct tor_tls_t *tls,
- time_t now);
-int or_handshake_certs_ed25519_ok(int severity,
- or_handshake_certs_t *certs,
- struct tor_tls_t *tls,
- time_t now);
-void or_handshake_certs_check_both(int severity,
- or_handshake_certs_t *certs,
- struct tor_tls_t *tls,
- time_t now,
- const ed25519_public_key_t **ed_id_out,
- const common_digests_t **rsa_id_out);
-
-int tor_cert_encode_ed22519(const tor_cert_t *cert, char **cert_str_out);
-
-#endif /* !defined(TORCERT_H_INCLUDED) */