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

[PATCH 0/4] osxkeychain: bring in line with other credential helpers

From
Bo Anderson via GitGitGadget <gitgitgadget@gmail.com>
Date
Feb 17, 2024, 23:34 UTC
Message-ID
<pull.1667.git.1708212896.gitgitgadget@gmail.com>

git-credential-osxkeychain has largely fallen behind other external credential helpers in the features it supports, and hasn't received any functional changes since 2013. As it stood, osxkeychain failed seven tests in the external credential helper test suite:

not ok 8 - helper (osxkeychain) overwrites on store not ok 9 - helper (osxkeychain) can forget host not ok 11 - helper (osxkeychain) does not erase a password distinct from input not ok 15 - helper (osxkeychain) erases all matching credentials not ok 18 - helper (osxkeychain) gets password_expiry_utc not ok 19 - helper (osxkeychain) overwrites when password_expiry_utc changes not ok 21 - helper (osxkeychain) gets oauth_refresh_token

osxkeychain also made use of macOS APIs that had been deprecated since 2014. Replacement API was able to be used without regressing the minimum supported macOS established in 5747c8072b (contrib/credential: avoid fixed-size buffer in osxkeychain, 2023-05-01).

After this set of patches, osxkeychain passes all tests in the external credential helper test suite.

Bo Anderson (4):
  osxkeychain: replace deprecated SecKeychain API
  osxkeychain: erase all matching credentials
  osxkeychain: erase matching passwords only
  osxkeychain: store new attributes
 contrib/credential/osxkeychain/Makefile       |   3 +-
 .../osxkeychain/git-credential-osxkeychain.c  | 376 ++++++++++++++----
 2 files changed, 310 insertions(+), 69 deletions(-)
base-commit: 3e0d3cd5c7def4808247caf168e17f2bbf47892b
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-1667%2FBo98%2Fosxkeychain-update-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1667/Bo98/osxkeychain-update-v1
Pull-Request: https://github.com/gitgitgadget/git/pull/1667
-- 
gitgitgadget
Next: Bo Anderson via GitGitGadget
Message 1 of 19 in “osxkeychain: bring in line with other credential helpers”
  1. 0/4 osxkeychain: bring in line with other credential helpersBo Anderson via GitGitGadget, Feb 17, 2024
  2. 1/4 osxkeychain: replace deprecated SecKeychain APIBo Anderson via GitGitGadget, Feb 17, 2024
  3. Eric SunshineFeb 18, 2024
  4. Bo AndersonFeb 18, 2024
  5. Eric SunshineFeb 18, 2024
  6. 2/4 osxkeychain: erase all matching credentialsBo Anderson via GitGitGadget, Feb 17, 2024
  7. 3/4 osxkeychain: erase matching passwords onlyBo Anderson via GitGitGadget, Feb 17, 2024
  8. 4/4 osxkeychain: store new attributesBo Anderson via GitGitGadget, Feb 17, 2024
  9. Eric SunshineFeb 18, 2024
  10. Eric SunshineFeb 18, 2024
  11. M HickfordFeb 18, 2024
  12. Bo AndersonFeb 18, 2024
  13. M HickfordMar 4, 2024
  14. Jeff KingMar 7, 2024
  15. Robert CoupApr 2, 2024
  16. Bo AndersonApr 2, 2024
  17. Robert CoupApr 2, 2024
  18. M HickfordApr 1, 2024
  19. Junio C HamanoApr 1, 2024

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.