Add a function to get human-readable names for the various wire protocol versions. Signed-off-by: Josh Steadmon <steadmon@xxxxxxxxxx> --- protocol.c | 14 ++++++++++++++ protocol.h | 6 ++++++ 2 files changed, 20 insertions(+) diff --git a/protocol.c b/protocol.c index 052d7edbb9..7ec7ce896e 100644 --- a/protocol.c +++ b/protocol.c @@ -14,6 +14,20 @@ static enum protocol_version parse_protocol_version(const char *value) return protocol_unknown_version; } +const char *format_protocol_version(enum protocol_version version) +{ + switch (version) { + case protocol_v0: + return "0"; + case protocol_v1: + return "1"; + case protocol_v2: + return "2"; + default: + return "UNKNOWN_VERSION"; + } +} + enum protocol_version get_protocol_version_config(void) { const char *value; diff --git a/protocol.h b/protocol.h index cef1a4a01c..22e7a70912 100644 --- a/protocol.h +++ b/protocol.h @@ -8,6 +8,12 @@ enum protocol_version { protocol_v2 = 2, }; +/* + * Return a string representation for a given protocol version. Mainly used to + * handle protocol_unknown_version nicely. + */ +const char *format_protocol_version(enum protocol_version); + /* * Used by a client to determine which protocol version to request be used when * communicating with a server, reflecting the configured value of the -- 2.32.0.554.ge1b32706d8-goog