Jonathan Nieder wrote:

> All I know is that changing the source to say
>
>       if (nodb_init) {
>         std::cerr << "about to call NSS_NoDB_Init(NULL)\n";
>         status = NSS_NoDB_Init(NULL);
>         std::cerr << "finished NSS_NoDB_Init(NULL)\n";
>
> causes the "about to call" line to be printed, but the "finished" line
> not to.

Weird.  It ends in here (mozilla/security/nss/lib/freebl/drbg.c):

| static PRStatus rng_init(void)
| {
|     PRUint8 bytes[PRNG_SEEDLEN*2]; /* entropy + nonce */
|     unsigned int numBytes;
|     fprintf(stderr, "not printed\n");         <--- not reached
[...]
| SECStatus
| RNG_RNGInit(void)
| {
|     /* Allow only one call to initialize the context */
|     fprintf(stderr, "about to call rng_init()\n");    <--- reached
|     PR_CallOnce(&coRNGInit, rng_init);
|     fprintf(stderr, "not printed\n");         <--- not reached

Call chain:

 ... -> NSC_Initialize() -> nsc_CommonInitialize() ->
  loader.c::RNGInit() -> drbg.c::RNG_RNGInit()



-- 
To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to