Lines Matching defs:pw_info
3739 _pwinfo_set(_PySSLPasswordInfo *pw_info, PyObject* password,
3774 PyMem_Free(pw_info->password);
3775 pw_info->password = PyMem_Malloc(size);
3776 if (!pw_info->password) {
3781 memcpy(pw_info->password, data, size);
3782 pw_info->size = (int)size;
3795 _PySSLPasswordInfo *pw_info = (_PySSLPasswordInfo*) userdata;
3798 PySSL_END_ALLOW_THREADS_S(pw_info->thread_state);
3800 if (pw_info->error) {
3807 if (pw_info->callable) {
3808 fn_ret = PyObject_CallNoArgs(pw_info->callable);
3815 if (!_pwinfo_set(pw_info, fn_ret,
3822 if (pw_info->size > size) {
3828 PySSL_BEGIN_ALLOW_THREADS_S(pw_info->thread_state);
3829 memcpy(buf, pw_info->password, pw_info->size);
3830 return pw_info->size;
3834 PySSL_BEGIN_ALLOW_THREADS_S(pw_info->thread_state);
3835 pw_info->error = 1;
3855 _PySSLPasswordInfo pw_info = { NULL, NULL, NULL, 0, 0 };
3878 pw_info.callable = password;
3879 } else if (!_pwinfo_set(&pw_info, password,
3884 SSL_CTX_set_default_passwd_cb_userdata(self->ctx, &pw_info);
3886 PySSL_BEGIN_ALLOW_THREADS_S(pw_info.thread_state);
3889 PySSL_END_ALLOW_THREADS_S(pw_info.thread_state);
3891 if (pw_info.error) {
3904 PySSL_BEGIN_ALLOW_THREADS_S(pw_info.thread_state);
3908 PySSL_END_ALLOW_THREADS_S(pw_info.thread_state);
3912 if (pw_info.error) {
3925 PySSL_BEGIN_ALLOW_THREADS_S(pw_info.thread_state);
3927 PySSL_END_ALLOW_THREADS_S(pw_info.thread_state);
3934 PyMem_Free(pw_info.password);
3940 PyMem_Free(pw_info.password);