mirror of
https://github.com/git/git.git
synced 2026-01-10 01:56:42 +00:00
urlmatch: split host and port fields in struct url_info
The `url_info` structure contains information about a normalized URL with the URL's components being represented by different fields. The host and port part though are to be accessed by the same `host` field, so that getting the host and/or port separately becomes more involved than really necessary. To make the port more readily accessible, split up the host and port fields. Namely, the `host_len` will not include the port length anymore and a new `port_off` field has been added which includes the offset to the port, if available. The only user of these fields is `url_normalize_1`. This change makes it easier later on to treat host and port differently when introducing globs for domains. Signed-off-by: Patrick Steinhardt <patrick.steinhardt@elego.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
3e6a0e64a4
commit
3ec6e6e8a0
@@ -18,11 +18,12 @@ struct url_info {
|
||||
size_t passwd_len; /* length of passwd; if passwd_off != 0 but
|
||||
passwd_len == 0, an empty passwd was given */
|
||||
size_t host_off; /* offset into url to start of host name (0 => none) */
|
||||
size_t host_len; /* length of host name; this INCLUDES any ':portnum';
|
||||
size_t host_len; /* length of host name;
|
||||
* file urls may have host_len == 0 */
|
||||
size_t port_len; /* if a portnum is present (port_len != 0), it has
|
||||
* this length (excluding the leading ':') at the
|
||||
* end of the host name (always 0 for file urls) */
|
||||
size_t port_off; /* offset into url to start of port number (0 => none) */
|
||||
size_t port_len; /* if a portnum is present (port_off != 0), it has
|
||||
* this length (excluding the leading ':') starting
|
||||
* from port_off (always 0 for file urls) */
|
||||
size_t path_off; /* offset into url to the start of the url path;
|
||||
* this will always point to a '/' character
|
||||
* after the url has been normalized */
|
||||
|
||||
Reference in New Issue
Block a user