- 01 Aug, 2023 2 commits
-
-
Introduce a url parser that defaults to treating poorly specified URLs as http URLs. For example: `localhost:8080` is treated as `http://localhost:8080/` by the http-biased url parsing, instead of a URL with a scheme `localhost` and a path of `8080`..
Edward Thomson committed -
Refactor url parsing to simplify the state-passing (introducing a struct) and add a path parser for future reusability.
Edward Thomson committed
-
- 13 May, 2023 1 commit
-
-
Edward Thomson committed
-
- 24 Feb, 2023 1 commit
-
-
Edward Thomson committed
-
- 17 Jun, 2022 2 commits
-
-
Enforce the RFC for other protocols; Google's questionable choices about malformed SSH protocols shouldn't impact our ability to properly parse HTTPS.
Edward Thomson committed -
Provide our own url parser, so that we can handle Google Code's "fun" URLs that have a userinfo with an `@` in it.
Edward Thomson committed
-
- 23 Feb, 2022 2 commits
-
-
Instead of simply including the utility files directly, make them a cmake object library for easy reusability between other projects within libgit2. Now the top-level `src` is responsible for platform selection, while the next-level `libgit2` and `util` configurations are responsible for identifying what objects they include.
Edward Thomson committed -
Edward Thomson committed
-
- 18 Jan, 2022 2 commits
-
-
We occasionally need to determine whether a given string is a URL or something else. (The "something else" may be a git path in a different format, like scp formatting, which needs to be handled differently.)
Edward Thomson committed -
Provide a mechanism for parsing scp-style paths (eg `git@github.com:libgit2/libgit2` into the url form `ssh://git@github.com/libgit2/libgit2`.)
Edward Thomson committed
-
- 13 Jan, 2022 1 commit
-
-
In redirect application logic, (optionally) allow off-site redirects.
Edward Thomson committed
-
- 22 Nov, 2021 1 commit
-
-
Remove some unnecessary includes from utility code.
Edward Thomson committed
-
- 17 Oct, 2021 1 commit
-
-
libgit2 has two distinct requirements that were previously solved by `git_buf`. We require: 1. A general purpose string class that provides a number of utility APIs for manipulating data (eg, concatenating, truncating, etc). 2. A structure that we can use to return strings to callers that they can take ownership of. By using a single class (`git_buf`) for both of these purposes, we have confused the API to the point that refactorings are difficult and reasoning about correctness is also difficult. Move the utility class `git_buf` to be called `git_str`: this represents its general purpose, as an internal string buffer class. The name also is an homage to Junio Hamano ("gitstr"). The public API remains `git_buf`, and has a much smaller footprint. It is generally only used as an "out" param with strict requirements that follow the documentation. (Exceptions exist for some legacy APIs to avoid breaking callers unnecessarily.) Utility functions exist to convert a user-specified `git_buf` to a `git_str` so that we can call internal functions, then converting it back again.
Edward Thomson committed
-
- 02 Sep, 2021 5 commits
-
-
Edward Thomson committed
-
Edward Thomson committed
-
Edward Thomson committed
-
Provide a utility method on a url to determine if it matches any pattern in a comma-separated list, similar to what one would find in `NO_PROXY` environment variables.
Edward Thomson committed -
Provide a method to determine if a given URL matches a host:port pattern like the ones found in `NO_PROXY` environment variables.
Edward Thomson committed
-
- 23 Dec, 2020 2 commits
-
-
Edward Thomson committed
-
Edward Thomson committed
-
- 27 Nov, 2020 1 commit
-
-
Edward Thomson committed
-
- 11 Oct, 2020 1 commit
-
-
Provide a mechanism for system components to register for initialization and shutdown of the libgit2 runtime.
Edward Thomson committed
-
- 31 Aug, 2020 1 commit
-
-
`default_port_for_scheme` returns NULL if the scheme is not one of the builtin ones. This may cause a segmentation fault if a custom transport URL happens to contain a port number, and this code path is triggered (e.g. by setting git_fetch_options->update_fetchhead to 1).
Kim Altintop committed
-
- 24 Jan, 2020 6 commits
-
-
Edward Thomson committed
-
Introduce a function to format the path and query string for a URL, suitable for creating an HTTP request.
Edward Thomson committed -
Edward Thomson committed
-
Provide a mechanism to add a path and query string to an existing url so that we can easily append `/info/refs?...` type url segments to a url given to us by a user.
Edward Thomson committed -
Move the redirect handling into `git_net_url` for consistency.
Edward Thomson committed -
(Also, mark all the declarations as extern.)
Edward Thomson committed
-
- 25 Jul, 2019 1 commit
-
-
Ian Hattendorf committed
-
- 10 Jun, 2019 1 commit
-
-
"Connection data" is an imprecise and largely incorrect name; these structures are actually parsed URLs. Provide a parser that takes a URL string and produces a URL structure (if it is valid). Separate the HTTP redirect handling logic from URL parsing, keeping a `gitno_connection_data_handle_redirect` whose only job is redirect handling logic and does not parse URLs itself.
Edward Thomson committed
-