summaryrefslogtreecommitdiff
path: root/credential.h
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2020-03-25 13:07:47 -0700
committerJunio C Hamano <gitster@pobox.com>2020-03-25 13:07:47 -0700
commitde49261b050d9cd8ec73842356077bc5b606640f (patch)
treeaff75b1af189d2c3d2dffe6d5d3ba6f2f812ce08 /credential.h
parent274b9cc25322d9ee79aa8e6d4e86f0ffe5ced925 (diff)
parent67b0a24910fbb23c8f5e7a2c61c339818bc68296 (diff)
downloadgit-de49261b050d9cd8ec73842356077bc5b606640f.tar.gz
Git 2.26.1v2.26.1
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'credential.h')
-rw-r--r--credential.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/credential.h b/credential.h
index fec7815dd0..d99ec42b2a 100644
--- a/credential.h
+++ b/credential.h
@@ -173,8 +173,21 @@ void credential_reject(struct credential *);
int credential_read(struct credential *, FILE *);
void credential_write(const struct credential *, FILE *);
-/* Parse a URL into broken-down credential fields. */
+/*
+ * Parse a url into a credential struct, replacing any existing contents.
+ *
+ * If the url can't be parsed (e.g., a missing "proto://" component), the
+ * resulting credential will be empty but we'll still return success from the
+ * "gently" form.
+ *
+ * If we encounter a component which cannot be represented as a credential
+ * value (e.g., because it contains a newline), the "gently" form will return
+ * an error but leave the broken state in the credential object for further
+ * examination. The non-gentle form will issue a warning to stderr and return
+ * an empty credential.
+ */
void credential_from_url(struct credential *, const char *url);
+int credential_from_url_gently(struct credential *, const char *url, int quiet);
int credential_match(const struct credential *have,
const struct credential *want);