mirror of
https://git.proxmox.com/git/libgit2
synced 2025-06-20 03:33:26 +00:00
Add get user agent functionality.
This commit is contained in:
parent
d8243465be
commit
f1dba14481
@ -12,6 +12,10 @@ v0.24 + 1
|
||||
|
||||
### API additions
|
||||
|
||||
* You can now get the user-agent used by libgit2 using the
|
||||
`GIT_OPT_GET_USER_AGENT` option with `git_libgit2_opts()`.
|
||||
It is the counterpart to `GIT_OPT_SET_USER_AGENT`.
|
||||
|
||||
* `git_commit_create_buffer()` creates a commit and writes it into a
|
||||
user-provided buffer instead of writing it into the object db.
|
||||
|
||||
|
@ -158,6 +158,7 @@ typedef enum {
|
||||
GIT_OPT_SET_USER_AGENT,
|
||||
GIT_OPT_ENABLE_STRICT_OBJECT_CREATION,
|
||||
GIT_OPT_SET_SSL_CIPHERS,
|
||||
GIT_OPT_GET_USER_AGENT,
|
||||
} git_libgit2_opt_t;
|
||||
|
||||
/**
|
||||
|
@ -209,6 +209,14 @@ int git_libgit2_opts(int key, ...)
|
||||
#endif
|
||||
break;
|
||||
|
||||
case GIT_OPT_GET_USER_AGENT:
|
||||
{
|
||||
git_buf *out = va_arg(ap, git_buf *);
|
||||
git_buf_sanitize(out);
|
||||
error = git_buf_sets(out, git__user_agent);
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
giterr_set(GITERR_INVALID, "invalid option key");
|
||||
error = -1;
|
||||
|
@ -4,8 +4,14 @@
|
||||
void test_core_useragent__get(void)
|
||||
{
|
||||
const char *custom_name = "super duper git";
|
||||
git_buf buf = GIT_BUF_INIT;
|
||||
|
||||
cl_assert_equal_p(NULL, git_libgit2__user_agent());
|
||||
cl_git_pass(git_libgit2_opts(GIT_OPT_SET_USER_AGENT, custom_name));
|
||||
cl_assert_equal_s(custom_name, git_libgit2__user_agent());
|
||||
|
||||
cl_git_pass(git_libgit2_opts(GIT_OPT_GET_USER_AGENT, &buf));
|
||||
cl_assert_equal_s(custom_name, buf.ptr);
|
||||
|
||||
git_buf_free(&buf);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user