private IntPtr SvnAuthSslClientCertPwPromptWrapper(out IntPtr cred,
                                                           IntPtr baton,
                                                           IntPtr realm, int may_save,
                                                           IntPtr pool)
        {
            cred = IntPtr.Zero;
            SvnError err = SvnError.NoError;

            SvnAuthProviderObject.SslClientCertPwPrompt func =
                mFunc as SvnAuthProviderObject.SslClientCertPwPrompt;
            try {
                SvnAuthCredSslClientCertPw credSslClientCertPw;
                Debug.Write(String.Format("[Callback:{0}]SslClientCertPwPromptProvider({1:X},{2},{3},{4})...", func.Method.Name, baton.ToInt32(), new AprString(realm), (may_save != 0), new AprPool(pool)));
                err = func(out credSslClientCertPw, baton,
                           new AprString(realm),
                           (may_save != 0), new AprPool(pool));
                Debug.WriteLine(String.Format("Done({0})", credSslClientCertPw));
                cred = credSslClientCertPw;
            }
            catch (SvnException e) {
                err = SvnError.Create(e.AprErr, SvnError.NoError, e.Message);
            }
            catch (Exception e) {
                err = SvnError.Create(215000, SvnError.NoError, e.Message);
            }
            return(err);
        }
 public void AddPromptProvider(SvnAuthProviderObject.SslClientCertPwPrompt promptFunc,
                               IntPtr promptBaton, int retryLimit)
 {
     if (mAuthObjs == null)
     {
         mAuthObjs = new ArrayList();
     }
     mAuthObjs.Add(SvnAuthProviderObject.GetPromptProvider(promptFunc, promptBaton,
                                                           retryLimit, mGlobalPool));
 }
 // svn_auth_ssl_client_cert_pw_prompt_func_t Wrapper
 public SvnDelegate(SvnAuthProviderObject.SslClientCertPwPrompt func)
 {
     mFunc        = func;
     mWrapperFunc = new Svn.svn_auth_ssl_client_cert_pw_prompt_func_t(SvnAuthSslClientCertPwPromptWrapper);
 }