credential.c: store "wwwauth[]" values in `credential_read()`

Teach git-credential to read "wwwauth[]" value(s) when parsing the output of a credential helper. These extra headers are not needed for Git's own HTTP support to use the feature internally, but the feature would not be available for a scripted caller (say, git-remote-mediawiki providing the header in the same way). As a bonus, this also makes it easier to use wwwauth[] in synthetic credential inputs in our test suite. Co-authored-by: Jeff King <peff@peff.net> Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Taylor Blau <me@ttaylorr.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Taylor Blau committed May 1, 2023 at 11:53 UTC 16b305cd2ba1747bcc6d160665eccdbbf7f2ea10
1 file changed +2
credential.c
+2
@@ -238,6 +238,8 @@ int credential_read(struct credential *c, FILE *fp)
238 } else if (!strcmp(key, "path")) {
239 free(c->path);
240 c->path = xstrdup(value);
241 + } else if (!strcmp(key, "wwwauth[]")) {
242 + strvec_push(&c->wwwauth_headers, value);
243 } else if (!strcmp(key, "password_expiry_utc")) {
244 errno = 0;
245 c->password_expiry_utc = parse_timestamp(value, NULL, 10);