> From: Mladen Turk [mailto:[EMAIL PROTECTED]
> Sent: 29 October 2001 19:46
> To: APR Dev List
> Subject: [PATCH] apr_generate_random_bytes - WIN32
>
>
> Hi,
>
> The WIN-XP does not starts the cryptographic service provider (CSP) by
> default (at least on my installation).
> I think they move that out to boot faster.
> Well, anyhow, the patch tries to create the new key container with the
> default name if the CSP was not started allready.
>
> Interesting is that the call takes couple of seconds to finish when called
> for the first time.
>
> MT.
>
> Index: rand.c
> ===================================================================
> RCS file: /home/cvspublic/apr/misc/win32/rand.c,v
> retrieving revision 1.10
> diff -u -r1.10 rand.c
> --- rand.c    2001/02/16 04:15:58     1.10
> +++ rand.c    2001/10/29 18:21:38
> @@ -63,7 +63,11 @@
>      apr_status_t res = APR_SUCCESS;
>
>      if (!CryptAcquireContext(&hProv,NULL,NULL,PROV_RSA_FULL,0)) {
> -     return apr_get_os_error();
> +        /* Try to create the new key container */
> +        if (CryptAcquireContext(&hProv,NULL,NULL,PROV_RSA_FULL,
               ^^^^
Seems you have reversed the logic here.  Or was it wrong in the
first place?

> +                                CRYPT_NEWKEYSET)) {
> +             return apr_get_os_error();
> +        }
>      }
>      if (!CryptGenRandom(hProv,length,buf)) {
>       res = apr_get_os_error();

Reply via email to