From b4f8518f8fdedc2711cbaad0abb5a4b85bf66fec Mon Sep 17 00:00:00 2001 From: Alexander Færøy Date: Fri, 21 Jul 2023 02:11:16 +0200 Subject: Add implementation and version metadata to bridge extra-info. This patch adds two new keys to bridges' extra-info document: "transport-version" and "transport-implementation". These two new values always appear together (if one is missing, the other one will be missing too) and is parsed from PT's STATUS TYPE=version messages. See: tpo/core/tor#11101. --- src/feature/client/transports.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/feature/client/transports.c b/src/feature/client/transports.c index 416e538efc..77cee25c54 100644 --- a/src/feature/client/transports.c +++ b/src/feature/client/transports.c @@ -1786,9 +1786,21 @@ pt_get_extra_info_descriptor_string(void) "transport %s %s%s", t->name, addrport, transport_args ? transport_args : ""); + tor_free(transport_args); } SMARTLIST_FOREACH_END(t); + if (mp->version != NULL) { + smartlist_add_asprintf(string_chunks, + "transport-version %s", + mp->version); + } + + if (mp->implementation != NULL) { + smartlist_add_asprintf(string_chunks, + "transport-implementation %s", + mp->implementation); + } } SMARTLIST_FOREACH_END(mp); if (smartlist_len(string_chunks) == 0) { -- cgit v1.2.3-54-g00ecf