~ubuntu-branches/ubuntu/raring/nss/raring-security

« back to all changes in this revision

Viewing changes to mozilla/security/nss/lib/freebl/stubs.c

  • Committer: Bazaar Package Importer
  • Author(s): Chris Coulson
  • Date: 2010-03-25 13:46:06 UTC
  • mfrom: (1.1.11 upstream)
  • Revision ID: james.westby@ubuntu.com-20100325134606-bl6liuok2w9l7snv
Tags: 3.12.6-0ubuntu1
* New upstream release 3.12.6 RTM (NSS_3_12_6_RTM)
  - fixes CVE-2009-3555 aka US-CERT VU#120541
* Adjust patches to changed upstream code base
  - update debian/patches/38_kbsd.patch
  - update debian/patches/38_mips64_build.patch
  - update debian/patches/85_security_load.patch
* Remove patches that are merged upstream
  - delete debian/patches/91_nonexec_stack.patch
  - update debian/patches/series
* Bump nspr dependency to 4.8
  - update debian/control
* Add new symbols for 3.12.6
  - update debian/libnss3-1d.symbols

Show diffs side-by-side

added added

removed removed

Lines of Context:
535
535
#define freebl_releaseLibrary(lib) \
536
536
    if (lib) dlclose(lib)
537
537
 
 
538
static void * FREEBLnsprGlobalLib = NULL;
 
539
static void * FREEBLnssutilGlobalLib = NULL;
 
540
 
 
541
void __attribute ((destructor)) FREEBL_unload()
 
542
{
 
543
    freebl_releaseLibrary(FREEBLnsprGlobalLib);
 
544
    freebl_releaseLibrary(FREEBLnssutilGlobalLib);
 
545
}
538
546
#endif
539
547
 
540
548
/*
552
560
    void *nssutil = NULL; 
553
561
 
554
562
    /* NSPR should be first */
555
 
    if (!ptr_PR_DestroyLock) {
 
563
    if (!FREEBLnsprGlobalLib) {
556
564
        nspr = freebl_getLibrary(nsprLibName);
557
565
        if (!nspr) {
558
566
            return SECFailure;
559
567
        }
560
568
        rv = freebl_InitNSPR(nspr);
561
 
        freebl_releaseLibrary(nspr);
562
569
        if (rv != SECSuccess) {
 
570
            freebl_releaseLibrary(nspr);
563
571
            return rv;
564
572
        }
 
573
        FREEBLnsprGlobalLib = nspr; /* adopt */
565
574
    }
566
575
    /* now load NSSUTIL */
567
 
    if (!ptr_SECITEM_ZfreeItem_Util) {
 
576
    if (!FREEBLnssutilGlobalLib) {
568
577
        nssutil= freebl_getLibrary(nssutilLibName);
569
578
        if (!nssutil) {
570
579
            return SECFailure;
571
580
        }
572
581
        rv = freebl_InitNSSUtil(nssutil);
573
 
        freebl_releaseLibrary(nssutil);
574
582
        if (rv != SECSuccess) {
 
583
            freebl_releaseLibrary(nssutil);
575
584
            return rv;
576
585
        }
 
586
        FREEBLnssutilGlobalLib = nssutil; /* adopt */
577
587
    }
578
588
#endif
579
589