summaryrefslogtreecommitdiff
path: root/src/feature/hs/hs_cell.c
diff options
context:
space:
mode:
authorteor <teor@torproject.org>2018-08-23 19:21:26 +1000
committerNick Mathewson <nickm@torproject.org>2019-03-12 11:09:53 -0400
commitbb98bc8562c59c0357e8911fa8952ed5ee20206d (patch)
tree9c89599717f4bdb3c4bfc7697763f36b8a9dcaad /src/feature/hs/hs_cell.c
parent6170d3fcf12f4345ec13561d0f444930f2f12e84 (diff)
downloadtor-bb98bc8562c59c0357e8911fa8952ed5ee20206d.tar.gz
tor-bb98bc8562c59c0357e8911fa8952ed5ee20206d.zip
hs: abolish hs_desc_link_specifier_t
The previous commits for 23576 confused hs_desc_link_specifier_t and link_specifier_t. Removing hs_desc_link_specifier_t fixes this confusion. Fixes bug 22781; bugfix on 0.3.2.1-alpha.
Diffstat (limited to 'src/feature/hs/hs_cell.c')
-rw-r--r--src/feature/hs/hs_cell.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/feature/hs/hs_cell.c b/src/feature/hs/hs_cell.c
index 597982b34e..e24520da47 100644
--- a/src/feature/hs/hs_cell.c
+++ b/src/feature/hs/hs_cell.c
@@ -756,7 +756,14 @@ hs_cell_parse_introduce2(hs_cell_introduce2_data_t *data,
idx < trn_cell_introduce_encrypted_get_nspec(enc_cell); idx++) {
link_specifier_t *lspec =
trn_cell_introduce_encrypted_get_nspecs(enc_cell, idx);
- smartlist_add(data->link_specifiers, hs_link_specifier_dup(lspec));
+ if (BUG(!lspec)) {
+ goto done;
+ }
+ link_specifier_t *lspec_dup = hs_link_specifier_dup(lspec);
+ if (BUG(!lspec_dup)) {
+ goto done;
+ }
+ smartlist_add(data->link_specifiers, lspec_dup);
}
/* Success. */