net: introduce path formatting function

Introduce a function to format the path and query string for a URL,
suitable for creating an HTTP request.
This commit is contained in:
Edward Thomson
2019-12-14 11:04:58 +08:00
parent 1152f3618c
commit 0b8358c8d1
2 changed files with 15 additions and 0 deletions

View File

@@ -381,6 +381,18 @@ int git_net_url_fmt(git_buf *buf, git_net_url *url)
return git_buf_oom(buf) ? -1 : 0;
}
int git_net_url_fmt_path(git_buf *buf, git_net_url *url)
{
git_buf_puts(buf, url->path ? url->path : "/");
if (url->query) {
git_buf_putc(buf, '?');
git_buf_puts(buf, url->query);
}
return git_buf_oom(buf) ? -1 : 0;
}
void git_net_url_dispose(git_net_url *url)
{
if (url->username)

View File

@@ -48,6 +48,9 @@ extern void git_net_url_swap(git_net_url *a, git_net_url *b);
/** Places the URL into the given buffer. */
extern int git_net_url_fmt(git_buf *out, git_net_url *url);
/** Place the path and query string into the given buffer. */
extern int git_net_url_fmt_path(git_buf *buf, git_net_url *url);
/** Disposes the contents of the structure. */
extern void git_net_url_dispose(git_net_url *url);