diff options
author | David Goulet <dgoulet@torproject.org> | 2017-04-04 08:35:31 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2017-04-04 09:41:14 -0400 |
commit | 751958434792122e9363b54e499a30b2d83b8536 (patch) | |
tree | eb82f148dbe4617eb106bf39aaa882b9e3ae6be2 /src | |
parent | 6ec322822051a53e61ce0b97a5c63c66ae11fae7 (diff) | |
download | tor-751958434792122e9363b54e499a30b2d83b8536.tar.gz tor-751958434792122e9363b54e499a30b2d83b8536.zip |
hs: Expose hs_service.c functions for unit tests
In order to avoid src/or/hs_service.o to contain no symbols and thus making
clang throw a warning, the functions are now exposed not just to unit tests.
Signed-off-by: David Goulet <dgoulet@torproject.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/or/hs_service.c | 12 | ||||
-rw-r--r-- | src/or/hs_service.h | 15 |
2 files changed, 8 insertions, 19 deletions
diff --git a/src/or/hs_service.c b/src/or/hs_service.c index 7b12b63065..8687403b86 100644 --- a/src/or/hs_service.c +++ b/src/or/hs_service.c @@ -6,8 +6,6 @@ * \brief Implement next generation hidden service functionality **/ -#define HS_SERVICE_PRIVATE - #include "or.h" #include "relay.h" #include "rendservice.h" @@ -22,14 +20,12 @@ /* XXX We don't currently use these functions, apart from generating unittest data. When we start implementing the service-side support for prop224 we - should revisit these functions and use them. For now we mark them as - unittest-only code: */ -#ifdef TOR_UNIT_TESTS + should revisit these functions and use them. */ /** Given an ESTABLISH_INTRO <b>cell</b>, encode it and place its payload in * <b>buf_out</b> which has size <b>buf_out_len</b>. Return the number of * bytes written, or a negative integer if there was an error. */ -STATIC ssize_t +ssize_t get_establish_intro_payload(uint8_t *buf_out, size_t buf_out_len, const hs_cell_establish_intro_t *cell) { @@ -59,7 +55,7 @@ set_cell_extensions(hs_cell_establish_intro_t *cell) * return an ESTABLISH_INTRO cell. Return NULL if something went wrong. The * returned cell is allocated on the heap and it's the responsibility of the * caller to free it. */ -STATIC hs_cell_establish_intro_t * +hs_cell_establish_intro_t * generate_establish_intro_cell(const uint8_t *circuit_key_material, size_t circuit_key_material_len) { @@ -174,5 +170,3 @@ generate_establish_intro_cell(const uint8_t *circuit_key_material, return NULL; } -#endif /* TOR_UNIT_TESTS */ - diff --git a/src/or/hs_service.h b/src/or/hs_service.h index 994521fc50..5d2d8dc4bb 100644 --- a/src/or/hs_service.h +++ b/src/or/hs_service.h @@ -12,21 +12,16 @@ #include "or.h" #include "hs/cell_establish_intro.h" -#ifdef HS_SERVICE_PRIVATE +/* These functions are only used by unit tests and we need to expose them else + * hs_service.o ends up with no symbols in libor.a which makes clang throw a + * warning at compile time. See #21825. */ -#ifdef TOR_UNIT_TESTS - -STATIC hs_cell_establish_intro_t * +hs_cell_establish_intro_t * generate_establish_intro_cell(const uint8_t *circuit_key_material, size_t circuit_key_material_len); - -STATIC ssize_t +ssize_t get_establish_intro_payload(uint8_t *buf, size_t buf_len, const hs_cell_establish_intro_t *cell); -#endif /* TOR_UNIT_TESTS */ - -#endif /* HS_SERVICE_PRIVATE */ - #endif /* TOR_HS_SERVICE_H */ |