MCPcopy Create free account
hub / github.com/libgit2/git2go / credentialSSHSignCallback

Function credentialSSHSignCallback

credentials.go:247–263  ·  view source on GitHub ↗

export credentialSSHSignCallback

(
	errorMessage **C.char,
	sig **C.uchar,
	sig_len *C.size_t,
	data *C.uchar,
	data_len C.size_t,
	handle unsafe.Pointer,
)

Source from the content-addressed store, hash-verified

245
246//export credentialSSHSignCallback
247func credentialSSHSignCallback(
248 errorMessage **C.char,
249 sig **C.uchar,
250 sig_len *C.size_t,
251 data *C.uchar,
252 data_len C.size_t,
253 handle unsafe.Pointer,
254) C.int {
255 signer := pointerHandles.Get(handle).(*credentialSSHCustomData).signer
256 signature, err := signer.Sign(rand.Reader, C.GoBytes(unsafe.Pointer(data), C.int(data_len)))
257 if err != nil {
258 return setCallbackError(errorMessage, err)
259 }
260 *sig = (*C.uchar)(C.CBytes(signature.Blob))
261 *sig_len = C.size_t(len(signature.Blob))
262 return C.int(ErrorCodeOK)
263}
264
265// NewCredentialSSHKeyFromSigner creates new SSH credentials using the provided signer.
266func NewCredentialSSHKeyFromSigner(username string, signer ssh.Signer) (*Credential, error) {

Callers 1

Calls 2

setCallbackErrorFunction · 0.85
GetMethod · 0.80

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…