git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 1/3] wincred: ignore unknown lines (do not die)

From
Matthew John Cheetham via GitGitGadget <gitgitgadget@gmail.com>
Date
Sep 22, 2022, 16:59 UTC
Message-ID
<6426f9c3954866b3fd9259d1a58d2c41dc42e17f.1663865974.git.gitgitgadget@gmail.com>
In-Reply-To
<pull.1363.git.1663865974.gitgitgadget@gmail.com>
From: Matthew John Cheetham <mjcheetham@outlook.com>

It is the expectation that credential helpers be liberal in what they accept and conservative in what they return, to allow for future growth and evolution of the protocol/interaction.

All of the other helpers (store, cache, osxkeychain, libsecret, gnome-keyring) except `netrc` currently ignore any credential lines that are not recognised, whereas the Windows helper (wincred) instead dies.

Fix the discrepancy and ignore unknown lines in the wincred helper.
Signed-off-by: Matthew John Cheetham <mjcheetham@outlook.com>
---
 contrib/credential/wincred/git-credential-wincred.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/contrib/credential/wincred/git-credential-wincred.c b/contrib/credential/wincred/git-credential-wincred.c
index 5091048f9c6..ead6e267c78 100644
--- a/contrib/credential/wincred/git-credential-wincred.c
+++ b/contrib/credential/wincred/git-credential-wincred.c
@@ -278,8 +278,11 @@ static void read_credential(void)
 			wusername = utf8_to_utf16_dup(v);
 		} else if (!strcmp(buf, "password"))
 			password = utf8_to_utf16_dup(v);
-		else
-			die("unrecognized input");
+		/*
+		 * Ignore other lines; we don't know what they mean, but
+		 * this future-proofs us when later versions of git do
+		 * learn new lines, and the helpers are updated to match.
+		 */
 	}
 }
 
-- 
gitgitgadget
Previous: Matthew John Cheetham via GitGitGadgetNext: Junio C Hamano
Message 2 of 8 in “Correct credential helper discrepancies handling input”
  1. 0/3 Correct credential helper discrepancies handling inputMatthew John Cheetham via GitGitGadget, Sep 22, 2022
  2. 1/3 wincred: ignore unknown lines (do not die)Matthew John Cheetham via GitGitGadget, Sep 22, 2022
  3. Junio C HamanoSep 22, 2022
  4. Jeff KingSep 22, 2022
  5. 2/3 netrc: ignore unknown lines (do not die)Matthew John Cheetham via GitGitGadget, Sep 22, 2022
  6. 3/3 osxkeychain: clarify that we ignore unknown linesMatthew John Cheetham via GitGitGadget, Sep 22, 2022
  7. Derrick StoleeSep 22, 2022
  8. Jeff KingSep 22, 2022

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.