chromium 14 broken with libnss3-1d from sid

Jonathan Nieder jrnieder at gmail.com
Wed Nov 16 02:19:20 UTC 2011


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()



More information about the pkg-mozilla-maintainers mailing list