В момента опаковам git_cred
API в Objective-Git и не не разбирам някои от очакваните аргументи. За справка, ето "проблемните" прототипи:
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
, и не съм сигурен какво се очаква да направя в това обратно извикване...