diff --git a/src/or/conscache.c b/src/or/conscache.c
index 5ffa129bbe..fd46cbe65e 100644
--- a/src/or/conscache.c
+++ b/src/or/conscache.c
@@ -374,6 +374,65 @@ consensus_cache_entry_get_body(const consensus_cache_entry_t *ent,
return 0;
}
+/** Read the lifetime of cached object ent into lifetime. */
+int consensus_cache_entry_get_lifetime(const consensus_cache_entry_t *ent,
+ long *lifetime)
+{
+ if (BUG(ent->magic != CCE_MAGIC))
+ return -1; // LCOV_EXCL_LINE
+
+ tor_assert(lifetime);
+
+ // FIXME(ahf): Fill out.
+ *lifetime = 0;
+
+ return 0;
+}
+
+/** Return non-zero if the cache object found in ent is
+ * reasonably live, otherwise return 0. Use now to pass the
+ * timestamp used for comparison. */
+int consensus_cache_entry_is_reasonably_live(const consensus_cache_entry_t *ent,
+ time_t now)
+{
+ if (BUG(ent->magic != CCE_MAGIC))
+ return -1; // LCOV_EXCL_LINE
+
+ // FIXME(ahf): Fill out.
+ (void)now;
+
+ return 1;
+}
+
+/** Read the set of voters from the cached object ent into out. */
+int consensus_cache_entry_get_voters(const consensus_cache_entry_t *ent,
+ smartlist_t *out)
+{
+ if (BUG(ent->magic != CCE_MAGIC))
+ return -1; // LCOV_EXCL_LINE
+
+ // FIXME(ahf): Fill out.
+ (void)out;
+
+ return 0;
+}
+
+/** Read the valid until timestamp from the cached object ent
+ * into out. */
+int consensus_cache_entry_valid_until(const consensus_cache_entry_t *ent,
+ time_t *out)
+{
+ if (BUG(ent->magic != CCE_MAGIC))
+ return -1; // LCOV_EXCL_LINE
+
+ tor_assert(out);
+
+ // FIXME(ahf): Fill out.
+ *out = time(NULL);
+
+ return 0;
+}
+
/**
* Unmap every mmap'd element of cache that has been unused
* since cutoff.
diff --git a/src/or/conscache.h b/src/or/conscache.h
index aef54201f0..fcc3f3e330 100644
--- a/src/or/conscache.h
+++ b/src/or/conscache.h
@@ -52,6 +52,14 @@ void consensus_cache_entry_mark_for_aggressive_release(
int consensus_cache_entry_get_body(const consensus_cache_entry_t *ent,
const uint8_t **body_out,
size_t *sz_out);
+int consensus_cache_entry_get_lifetime(const consensus_cache_entry_t *ent,
+ long *lifetime);
+int consensus_cache_entry_is_reasonably_live(const consensus_cache_entry_t *ent,
+ time_t now);
+int consensus_cache_entry_get_voters(const consensus_cache_entry_t *ent,
+ smartlist_t *out);
+int consensus_cache_entry_valid_until(const consensus_cache_entry_t *ent,
+ time_t *out);
#ifdef TOR_UNIT_TESTS
int consensus_cache_entry_is_mapped(consensus_cache_entry_t *ent);