diff --git a/ChangeLog b/ChangeLog index 942502cb50..4cfa3dad35 100644 --- a/ChangeLog +++ b/ChangeLog @@ -22,6 +22,8 @@ Changes in version 0.2.0.9-alpha - 2007-10-?? - Make the "next period" votes into "current period" votes immediately after publishing the consensus; avoid a heisenbug that made them stick around indefinitely. + - Correctly check for bad options to the "PublishServerDescriptor" + config option. Bugfix on 0.2.0.1-alpha; reported by Matt Edman. o Minor bugfixes (memory leaks): - Stop leaking memory on failing case of base32_decode. Bugfix on diff --git a/src/or/config.c b/src/or/config.c index 0bf88b2e44..f5a521e094 100644 --- a/src/or/config.c +++ b/src/or/config.c @@ -2391,9 +2391,8 @@ ensure_bandwidth_cap(uint64_t *value, const char *desc, char **msg) /** Parse an authority type from list and write it to *auth. If * compatible is non-zero, treat "1" as "v1,v2" and treat "0" as "". - * Return 0 on success or -(idx of first bad member) if not a recognized - * authority type. - */ + * Return 0 on success or -1 if not a recognized authority type (in which + * case the value of *auth is undefined). */ static int parse_authority_type_from_list(smartlist_t *list, authority_type_t *auth, int compatible) @@ -2418,7 +2417,7 @@ parse_authority_type_from_list(smartlist_t *list, authority_type_t *auth, else if (!strcasecmp(string, "") || (compatible && !strcmp(string, "0"))) /* no authority */; else - return - string_sl_idx; + return -1; }); return 0; }