Commit 94bac76c by Carlos Martín Nieto

http: use a custom user-agent if the user has set it

We still prefix it with "git/1.0" since that's required in many
situations, but we replace the area which mentions libgit2.
parent de870533
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
#include "http_parser.h" #include "http_parser.h"
#include "buffer.h" #include "buffer.h"
#include "netops.h" #include "netops.h"
#include "global.h"
#include "remote.h" #include "remote.h"
#include "smart.h" #include "smart.h"
#include "auth.h" #include "auth.h"
...@@ -186,6 +187,16 @@ static int apply_credentials(git_buf *buf, http_subtransport *t) ...@@ -186,6 +187,16 @@ static int apply_credentials(git_buf *buf, http_subtransport *t)
return context->next_token(buf, context, cred); return context->next_token(buf, context, cred);
} }
static const char *user_agent(void)
{
const char *custom = git_libgit2__user_agent();
if (custom)
return custom;
return "libgit2 " LIBGIT2_VERSION;
}
static int gen_request( static int gen_request(
git_buf *buf, git_buf *buf,
http_stream *s, http_stream *s,
...@@ -197,7 +208,7 @@ static int gen_request( ...@@ -197,7 +208,7 @@ static int gen_request(
git_buf_printf(buf, "%s %s%s HTTP/1.1\r\n", s->verb, path, s->service_url); git_buf_printf(buf, "%s %s%s HTTP/1.1\r\n", s->verb, path, s->service_url);
git_buf_puts(buf, "User-Agent: git/1.0 (libgit2 " LIBGIT2_VERSION ")\r\n"); git_buf_printf(buf, "User-Agent: git/1.0 (%s)\r\n", user_agent());
git_buf_printf(buf, "Host: %s\r\n", t->connection_data.host); git_buf_printf(buf, "Host: %s\r\n", t->connection_data.host);
if (s->chunked || content_length > 0) { if (s->chunked || content_length > 0) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment