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

[PATCH v6 0/4] config: add support for http.<url>.* settings

From
Kyle J. McKay <mackyle@gmail.com>
Date
Jul 19, 2013, 12:48 UTC
Message-ID
<9a5e7ef2eb19b10b28f154b3d5e03cd@f74d39fa044aa309eaea14b9f57fe79>
NOTE: This patch requires the following preparatory change:
 f1ff763 http.c: fix parsing of http.sslCertPasswordProtected variable
which is currently in pu.

This patch series adds support for http.<url>.* settings. The patch is organized as a series of improvements on the functionality:

1/4 - adds basic textual matching support 2/4 - adds URL normalization before matching 3/4 - adds a test for the URL normalization function 4/4 - adds any user matching

With-Feedback-From-jh: Junio C Hamano <gitster@pobox.com>
With-Feedback-From-jk: Jeff King <peff@peff.net>
With-Feedback-From-es: Eric Sunshine <sunshine@sunshineco.com>
Differences from v5:

Dropped the GIT_SSL_CERT_PASSWORD_PROTECTED patch. It's related to the http.sslCertPasswordProtected patch, but not required as it touches different sections of the http.c file.

1/4 - this is identical to v5's 3/5.  Updated from v4's 1/4:
* Added cover comments to log message (feedback-jh)
* Updated help text (feedback-jk)
* Uppercased enum values (feedback-jk)
* Moved #ifdef enum values to end (feedback-jh)
* Renamed check_matched_len to new_match_is_shorter (feedback-jh)
* Removed 1 unnecessary cast (feedback-jk,feedback-jh)
* Based on preparatory http.sslCertPasswordProtected fix (feedback-jh)
2/4 - Updated from v5's 4/5:
* Altered append_normalized_escapes descriptive comments (feedback-es)
* Improved normalization (keep empty user name, strip port leading 0s and
  resolve . and .. in path)
3/4 - Updated from v5's 5/5:
* Add more tests and adjust to improved normalization behavior
4/4 - New code
* Allow a http.<url>.* config item without a user name to match a url passed
  to git that has a user name
Applicable comments from v5 cover:

To better support matching URLs that are equivalent but spelled differently, a url_normalize function has been added. Currently this patch leaves it in http.c as http_options_url_normalize as I am unclear whether it should go into url.{h,c} at this time since only http.c uses it.

Since the url_normalize function's behavior is non-trivial, it is presented as a separate patch on top of the basic http.<url>.* settings support. A new test for it has also been included as a separate patch. I am unclear on the proper number for this test, but have gone ahead and put it with the other http tests since this patch series places the url_normalize function into http.c.

Kyle J. McKay (4):
  config: add support for http.<url>.* settings
  config: improve support for http.<url>.* settings
  tests: add new test for the url_normalize function
  config: allow http.<url>.* any user matching
 .gitignore               |   1 +
 Documentation/config.txt |  19 ++
 Makefile                 |   5 +
 http.c                   | 675 +++++++++++++++++++++++++++++++++++++++++++++--
 t/t5200-url-normalize.sh | 161 +++++++++++
 test-url-normalize.c     |  62 +++++
 6 files changed, 906 insertions(+), 17 deletions(-)
 create mode 100755 t/t5200-url-normalize.sh
 create mode 100644 test-url-normalize.c
-- 
1.8.3
Next: Kyle J. McKay
Message 1 of 10 in “config: add support for http.<url>.* settings”
  1. 0/4 config: add support for http.<url>.* settingsKyle J. McKay, Jul 19, 2013
  2. 1/4 config: add support for http.<url>.* settingsKyle J. McKay, Jul 19, 2013
  3. Junio C HamanoJul 19, 2013
  4. Kyle J. McKayJul 19, 2013
  5. 2/4 config: improve support for http.<url>.* settingsKyle J. McKay, Jul 19, 2013
  6. Junio C HamanoJul 19, 2013
  7. Kyle J. McKayJul 19, 2013
  8. Junio C HamanoJul 20, 2013
  9. 3/4 tests: add new test for the url_normalize functionKyle J. McKay, Jul 19, 2013
  10. 4/4 config: allow http.<url>.* any user matchingKyle J. McKay, Jul 19, 2013

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.