mirror of
https://git.proxmox.com/git/libgit2
synced 2025-05-10 07:16:37 +00:00
http: enforce the credential types
The user may decide to return any type of credential, including ones we did not say we support. Add a check to make sure the user returned an object of the right type and error out if not.
This commit is contained in:
parent
76f034180a
commit
e892b6a927
@ -350,6 +350,11 @@ static int on_headers_complete(http_parser *parser)
|
|||||||
} else {
|
} else {
|
||||||
assert(t->cred);
|
assert(t->cred);
|
||||||
|
|
||||||
|
if (!(t->cred->credtype & allowed_auth_types)) {
|
||||||
|
giterr_set(GITERR_NET, "credentials callback returned an invalid cred type");
|
||||||
|
return t->parse_error = PARSE_ERROR_GENERIC;
|
||||||
|
}
|
||||||
|
|
||||||
/* Successfully acquired a credential. */
|
/* Successfully acquired a credential. */
|
||||||
t->parse_error = PARSE_ERROR_REPLAY;
|
t->parse_error = PARSE_ERROR_REPLAY;
|
||||||
return 0;
|
return 0;
|
||||||
|
Loading…
Reference in New Issue
Block a user