diff --git a/src/common/crypto_ed25519.c b/src/common/crypto_ed25519.c
index 1d0cfd01ceb90b4ed1b92ecdb4f90bd064e9c6da..ea2d8e3892bf3b19f9ff8e6731867b41f83ae9eb 100644
--- a/src/common/crypto_ed25519.c
+++ b/src/common/crypto_ed25519.c
@@ -414,7 +414,7 @@ ed25519_seckey_write_to_file(const ed25519_secret_key_t *seckey,
 
 /**
  * Read seckey unencrypted from <b>filename</b>, storing it into
- * <b>seckey_out</b>.  Set *<b>tag_out</> to the tag it was marked with.
+ * <b>seckey_out</b>.  Set *<b>tag_out</b> to the tag it was marked with.
  * Return 0 on success, -1 on failure.
  */
 int
diff --git a/src/or/dircollate.c b/src/or/dircollate.c
index 3648664d44c5e6e4bb690e8c49cf6b99c0616d0c..ed52f0abb0f48ad191d488cdadb590c8cc2710ec 100644
--- a/src/or/dircollate.c
+++ b/src/or/dircollate.c
@@ -225,12 +225,12 @@ dircollator_collate_by_rsa(dircollator_t *dc)
  * entry in <b>dc</b> by ed25519 key and by RSA key.
  *
  * The rule is, approximately:
- *    If a <ed,rsa> identity is listed by more than half of authorities,
- *    include it.  And include all <rsa>-only votes about that node as
+ *    If a (ed,rsa) identity is listed by more than half of authorities,
+ *    include it.  And include all (rsa)-only votes about that node as
  *    matching.
  *
- *    Otherwise, if an <*,rsa> or <rsa> identity is listed by more than
- *    half of the authorities, and no <ed,rsa> pair for the same RSA key
+ *    Otherwise, if an (*,rsa) or (rsa) identity is listed by more than
+ *    half of the authorities, and no (ed,rsa) pair for the same RSA key
  *    has been already been included based on the rule above, include
  *    that RSA identity.
  */
diff --git a/src/or/main.c b/src/or/main.c
index 0bd35272f56a60a510a130ca9fafed4dd134814a..26e52d241d5bc19b8fa85b97bfa2d7cdeaa72f5c 100644
--- a/src/or/main.c
+++ b/src/or/main.c
@@ -544,7 +544,7 @@ connection_is_reading(connection_t *conn)
 }
 
 /** Check whether <b>conn</b> is correct in having (or not having) a
- * read/write event (passed in <b>ev</b). On success, return 0. On failure,
+ * read/write event (passed in <b>ev</b>). On success, return 0. On failure,
  * log a warning and return -1. */
 static int
 connection_check_event(connection_t *conn, struct event *ev)
diff --git a/src/or/microdesc.c b/src/or/microdesc.c
index 9c9e09140cadf479b757c3d4cab8dd3c89fc0f03..299042995b30a068fa96269b8c4763b632ecadd7 100644
--- a/src/or/microdesc.c
+++ b/src/or/microdesc.c
@@ -60,7 +60,8 @@ microdesc_hash_(microdesc_t *md)
   return (unsigned) siphash24g(md->digest, sizeof(md->digest));
 }
 
-/** Helper: compares <b>a</b> and </b> for equality for hash-table purposes. */
+/** Helper: compares <b>a</b> and <b>b</b> for equality for hash-table
+ * purposes. */
 static inline int
 microdesc_eq_(microdesc_t *a, microdesc_t *b)
 {
diff --git a/src/or/torcert.c b/src/or/torcert.c
index de7d28d7406f6abbd91a2bb896c7dbebb1225ddd..a6a33c675a32f505f71f64388789626bcaff0649 100644
--- a/src/or/torcert.c
+++ b/src/or/torcert.c
@@ -107,7 +107,7 @@ tor_cert_create(const ed25519_keypair_t *signing_key,
                             now, lifetime, flags);
 }
 
-/** Release all storage held for <b>cert</>. */
+/** Release all storage held for <b>cert</b>. */
 void
 tor_cert_free(tor_cert_t *cert)
 {