private int GitCredentialHandler( out IntPtr ptr, IntPtr cUrl, IntPtr usernameFromUrl, GitCredentialType credTypes, IntPtr payload) { string url = LaxUtf8Marshaler.FromNative(cUrl); string username = LaxUtf8Marshaler.FromNative(usernameFromUrl); SupportedCredentialTypes types = default(SupportedCredentialTypes); if (credTypes.HasFlag(GitCredentialType.UserPassPlaintext)) { types |= SupportedCredentialTypes.UsernamePassword; } if (credTypes.HasFlag(GitCredentialType.Default)) { types |= SupportedCredentialTypes.Default; } var cred = CredentialsProvider(url, username, types); return(cred.GitCredentialHandler(out ptr)); }
/// <summary> /// Callback to acquire a credential object. /// </summary> /// <param name="cred">The newly created credential object.</param> /// <param name="url">The resource for which we are demanding a credential.</param> /// <param name="usernameFromUrl">The username that was embedded in a "user@host"</param> /// <param name="types">A bitmask stating which cred types are OK to return.</param> /// <param name="payload">The payload provided when specifying this callback.</param> /// <returns>0 for success, < 0 to indicate an error, > 0 to indicate no credential was acquired.</returns> protected internal override int GitCredentialHandler(out IntPtr cred, IntPtr url, IntPtr usernameFromUrl, GitCredentialType types, IntPtr payload) { if (Username == null || Password == null) { throw new InvalidOperationException("UsernamePasswordCredentials contains a null Username or Password."); } return NativeMethods.git_cred_userpass_plaintext_new(out cred, Username, Password); }
private int GitCredentialHandler( out IntPtr ptr, IntPtr cUrl, IntPtr usernameFromUrl, GitCredentialType credTypes, IntPtr payload) { string url = LaxUtf8Marshaler.FromNative(cUrl); string username = LaxUtf8Marshaler.FromNative(usernameFromUrl); SupportedCredentialTypes types = default(SupportedCredentialTypes); if (credTypes.HasFlag(GitCredentialType.UserPassPlaintext)) { types |= SupportedCredentialTypes.UsernamePassword; } if (credTypes.HasFlag(GitCredentialType.Default)) { types |= SupportedCredentialTypes.Default; } if (credTypes.HasFlag(GitCredentialType.SshKey)) { types |= SupportedCredentialTypes.Ssh; } if (credTypes.HasFlag(GitCredentialType.Username)) { types |= SupportedCredentialTypes.UsernameQuery; } ptr = IntPtr.Zero; try { var cred = CredentialsProvider(url, username, types); if (cred == null) { return((int)GitErrorCode.PassThrough); } return(cred.GitCredentialHandler(out ptr)); } catch (Exception exception) { Proxy.giterr_set_str(GitErrorCategory.Callback, exception); return((int)GitErrorCode.Error); } }
private int GitCredentialHandler(out IntPtr ptr, IntPtr cUrl, IntPtr usernameFromUrl, GitCredentialType credTypes, IntPtr payload) { string url = LaxUtf8Marshaler.FromNative(cUrl); string username = LaxUtf8Marshaler.FromNative(usernameFromUrl); SupportedCredentialTypes types = default(SupportedCredentialTypes); if (credTypes.HasFlag(GitCredentialType.UserPassPlaintext)) { types |= SupportedCredentialTypes.UsernamePassword; } if (credTypes.HasFlag(GitCredentialType.Default)) { types |= SupportedCredentialTypes.Default; } var cred = CredentialsProvider(url, username, types); return cred.GitCredentialHandler(out ptr, cUrl, usernameFromUrl, credTypes, payload); }
/// <summary> /// Callback to acquire a credential object. /// </summary> /// <param name="cred">The newly created credential object.</param> /// <param name="url">The resource for which we are demanding a credential.</param> /// <param name="usernameFromUrl">The username that was embedded in a "user@host"</param> /// <param name="types">A bitmask stating which cred types are OK to return.</param> /// <param name="payload">The payload provided when specifying this callback.</param> /// <returns>0 for success, < 0 to indicate an error, > 0 to indicate no credential was acquired.</returns> protected internal abstract int GitCredentialHandler(out IntPtr cred, IntPtr url, IntPtr usernameFromUrl, GitCredentialType types, IntPtr payload);
private int GitCredentialHandler( out IntPtr ptr, IntPtr cUrl, IntPtr usernameFromUrl, GitCredentialType credTypes, IntPtr payload) { string url = LaxUtf8Marshaler.FromNative(cUrl); string username = LaxUtf8Marshaler.FromNative(usernameFromUrl); SupportedCredentialTypes types = default(SupportedCredentialTypes); if (credTypes.HasFlag(GitCredentialType.UserPassPlaintext)) { types |= SupportedCredentialTypes.UsernamePassword; } if (credTypes.HasFlag(GitCredentialType.Default)) { types |= SupportedCredentialTypes.Default; } ptr = IntPtr.Zero; try { var cred = CredentialsProvider(url, username, types); if (cred == null) { return (int)GitErrorCode.PassThrough; } return cred.GitCredentialHandler(out ptr); } catch (Exception exception) { Proxy.giterr_set_str(GitErrorCategory.Callback, exception); return (int)GitErrorCode.Error; } }
/// <summary> /// Callback to acquire a credential object. /// </summary> /// <param name="cred">The newly created credential object.</param> /// <param name="url">The resource for which we are demanding a credential.</param> /// <param name="usernameFromUrl">The username that was embedded in a "user@host"</param> /// <param name="types">A bitmask stating which cred types are OK to return.</param> /// <param name="payload">The payload provided when specifying this callback.</param> /// <returns>0 for success, < 0 to indicate an error, > 0 to indicate no credential was acquired.</returns> protected internal override int GitCredentialHandler(out IntPtr cred, IntPtr url, IntPtr usernameFromUrl, GitCredentialType types, IntPtr payload) { if (Username == null || Password == null) { throw new InvalidOperationException("UsernamePasswordCredentials contains a null Username or Password."); } return(NativeMethods.git_cred_userpass_plaintext_new(out cred, Username, Password)); }
/// <summary> /// Callback to acquire a credential object. /// </summary> /// <param name="cred">The newly created credential object.</param> /// <param name="url">The resource for which we are demanding a credential.</param> /// <param name="usernameFromUrl">The username that was embedded in a "user@host"</param> /// <param name="types">A bitmask stating which cred types are OK to return.</param> /// <param name="payload">The payload provided when specifying this callback.</param> /// <returns>0 for success, < 0 to indicate an error, > 0 to indicate no credential was acquired.</returns> protected internal override int GitCredentialHandler(out IntPtr cred, IntPtr url, IntPtr usernameFromUrl, GitCredentialType types, IntPtr payload) { return(NativeMethods.git_cred_default_new(out cred)); }
/// <summary> /// Callback to acquire a credential object. /// </summary> /// <param name="cred">The newly created credential object.</param> /// <param name="url">The resource for which we are demanding a credential.</param> /// <param name="usernameFromUrl">The username that was embedded in a "user@host"</param> /// <param name="types">A bitmask stating which cred types are OK to return.</param> /// <param name="payload">The payload provided when specifying this callback.</param> /// <returns>0 for success, < 0 to indicate an error, > 0 to indicate no credential was acquired.</returns> protected internal override int GitCredentialHandler(out IntPtr cred, IntPtr url, IntPtr usernameFromUrl, GitCredentialType types, IntPtr payload) { return NativeMethods.git_cred_default_new(out cred); }