我目前是{-3}} Objective-Git中的git_cred
API,我不了解一些预期的参数。作为参考,这里是“冒犯”的原型:
int git_cred_ssh_publickey_new(
git_cred **out,
const char *username,
const char *publickey, size_t publickey_len,
git_cred_sign_callback sign_fn, void *sign_data);
int git_cred_sign_callback(
LIBSSH2_SESSION *session,
unsigned char **sig, size_t *sig_len,
const unsigned char *data, size_t data_len,
void **abstract);
(我从#define LIBSSH2_USERAUTH_PUBLICKEY_SIGN_FUNC
中提取了最后一个)。
git_cred_sign_callback
用于什么?即使从LIBSSH2_SESSION
的POV,它也需要libgit2
,这是非常低级别的,我不确定在回调中我应该做些什么......
答案 0 :(得分:1)
它需要LIBSSH2_SESSION
,因为它是一个libssh2回调;它不是低级别的,它与libgit2的工作正交。
此功能可供您自行签名。它主要是为了完整性而提供的,因为底层功能是一个没有文档记录的libssh2。
参见例如http://www.libssh2.org/libssh2_userauth_publickey.html和http://www.libssh2.org/mail/libssh2-devel-archive-2012-10/0071.shtml