diff options
author | Johannes Schindelin <johannes.schindelin@gmx.de> | 2020-04-25 00:35:49 +0200 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2020-04-25 00:53:46 +0200 |
commit | 12294990c90e043862be9eb7eb22c3784b526340 (patch) | |
tree | e258d311efe37e9a942b4927323270a806bf3e86 /urlmatch.h | |
parent | credential: optionally allow partial URLs in credential_from_url_gently() (diff) | |
download | git-12294990c90e043862be9eb7eb22c3784b526340.tar.xz git-12294990c90e043862be9eb7eb22c3784b526340.zip |
credential: handle `credential.<partial-URL>.<key>` again
In the patches for CVE-2020-11008, the ability to specify credential
settings in the config for partial URLs got lost. For example, it used
to be possible to specify a credential helper for a specific protocol:
[credential "https://"]
helper = my-https-helper
Likewise, it used to be possible to configure settings for a specific
host, e.g.:
[credential "dev.azure.com"]
useHTTPPath = true
Let's reinstate this behavior.
While at it, increase the test coverage to document and verify the
behavior with a couple other categories of partial URLs.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'urlmatch.h')
-rw-r--r-- | urlmatch.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/urlmatch.h b/urlmatch.h index 2407520731..6ff42f81b0 100644 --- a/urlmatch.h +++ b/urlmatch.h @@ -59,6 +59,11 @@ struct urlmatch_config { * specificity rules) than existing. */ int (*select_fn)(const struct urlmatch_item *found, const struct urlmatch_item *existing); + /* + * An optional callback to allow e.g. for partial URLs; it shall + * return 1 or 0 depending whether `url` matches or not. + */ + int (*fallback_match_fn)(const char *url, void *cb); }; int urlmatch_config_entry(const char *var, const char *value, void *cb); |