Compare commits

..

621 Commits

Author SHA1 Message Date
nelson%bolyard.com
bceb70bcb0 Bug 488241: Fix cert7/cert8.db issues with large issuer names in NSS_3_11_BRANCH as well
Patch contributed by Kaspar Brand <mozbugzilla@velox.ch>


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@256922 18797224-902f-48f8-a5cc-f745e15eee43
2009-04-15 08:36:58 +00:00
slavomir.katuscak%sun.com
11c5b2f0ad Updated list of memory leaks - added leak from bug #486298
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@256789 18797224-902f-48f8-a5cc-f745e15eee43
2009-04-01 19:06:01 +00:00
kaie%kuix.de
16c129fe2d Bug 471715, Add cert to nssckbi to override rogue md5-collision CA cert
r=nelson, r=wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@255930 18797224-902f-48f8-a5cc-f745e15eee43
2009-01-26 22:48:00 +00:00
wtc%google.com
5b3a8da175 Bugzilla Bug 326503: makes SHA1 the default hashing for RSA rather than
MD5.  r=rrelyea,nelson.
Modified Files:
 Tag: NSS_3_11_BRANCH
	cryptohi.h secsign.c


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@255745 18797224-902f-48f8-a5cc-f745e15eee43
2009-01-07 19:18:21 +00:00
christophe.ravel.bugs%sun.com
3af90e9e5a Set version to 3.11.11 Beta
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@255523 18797224-902f-48f8-a5cc-f745e15eee43
2008-12-15 22:25:42 +00:00
nelson%bolyard.com
e9279ef4c7 Bug 444850: NSS misbehaves badly in the presence of a disabled PKCS#11 slot
r=rrelyea,alexei


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@255316 18797224-902f-48f8-a5cc-f745e15eee43
2008-12-03 04:53:00 +00:00
nelson%bolyard.com
d857d25de1 Bug 348198: Use exec to redirect standard input before entering a while
loop (change all while loops) Patch by wtc, r=julien, nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@254942 18797224-902f-48f8-a5cc-f745e15eee43
2008-11-07 04:29:22 +00:00
nelson%bolyard.com
c66864dbe6 Fix a crash that occurs with corrupted DBs.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@254781 18797224-902f-48f8-a5cc-f745e15eee43
2008-10-28 18:36:46 +00:00
nelson%bolyard.com
2305121cf1 Bug 421634: Don't send an SNI Client Hello extension bearing an IPv6 address
r=julien.pierre,wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@254742 18797224-902f-48f8-a5cc-f745e15eee43
2008-10-24 02:34:44 +00:00
kaie%kuix.de
5e2f0ab29a Updating version numbers to NSS 3.11.10 RC 2
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@254708 18797224-902f-48f8-a5cc-f745e15eee43
2008-10-21 04:22:06 +00:00
kaie%kuix.de
e1e6be72ac Bug 450427, Add COMODO ECC Certification Authority certificate to NSS
r=nelson, r=rrelyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@254707 18797224-902f-48f8-a5cc-f745e15eee43
2008-10-21 04:08:48 +00:00
slavomir.katuscak%sun.com
e9526a6053 Bug 458015 - Added value check to set_freebl() in memleak.sh. r=christophe, r=alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@254558 18797224-902f-48f8-a5cc-f745e15eee43
2008-10-07 17:29:37 +00:00
christophe.ravel.bugs%sun.com
0040fa2733 Prepare NSS 3.11.10 release: remove beta flag.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@253644 18797224-902f-48f8-a5cc-f745e15eee43
2008-08-15 22:46:06 +00:00
nelson%bolyard.com
f385927d36 Bug 444850: NSS misbehaves badly in the presence of a disabled PKCS#11 slot
r=rrelyea,julien.pierre


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@253612 18797224-902f-48f8-a5cc-f745e15eee43
2008-08-15 05:48:45 +00:00
kaie%kuix.de
cb3f6488c4 Bug 449883, Replace existing "GlobalSign Root CA" cert and add new WellsSecure cert
r=rrelyea, r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@253595 18797224-902f-48f8-a5cc-f745e15eee43
2008-08-14 18:17:27 +00:00
kaie%kuix.de
b2f3a6866b Follow up checkin to bug 425469. Please see comments 15 and 16.
This portion got accidentally left out and has r=nelson, r=rrelyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@253477 18797224-902f-48f8-a5cc-f745e15eee43
2008-08-08 22:08:26 +00:00
nelson%bolyard.com
530c48ca65 Don't abort search for certs when a slot reports error, v2
bug 444850, r=julien,wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@253331 18797224-902f-48f8-a5cc-f745e15eee43
2008-07-30 00:25:20 +00:00
nelson%bolyard.com
9f9ca30ffa Bug 444850. Don't ask the module to use an invalid session handle in
find_objects. r=alexei,julien sr=wtc.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@253323 18797224-902f-48f8-a5cc-f745e15eee43
2008-07-29 03:52:01 +00:00
nelson%bolyard.com
184c1445e5 bug 444850. Don't crash when CERT_CreateSubjectCertList fails to find any
certs that match the subject name of a cert that NSS has just found.
r=alexei.volkov,wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@253322 18797224-902f-48f8-a5cc-f745e15eee43
2008-07-29 03:49:11 +00:00
nelson%bolyard.com
fe0c5e2a19 Bug 384459, ignore issuer and serial number components of authority key ID
extension when they don't match. Don't report them in certutil either.
r=rrelyea, sr=wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@253321 18797224-902f-48f8-a5cc-f745e15eee43
2008-07-29 03:45:05 +00:00
kaie%kuix.de
9b8556d3e4 Bug 442912, fix nssckbi version number on 3.11 branch
r=nelson, r=wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@252916 18797224-902f-48f8-a5cc-f745e15eee43
2008-07-08 19:03:48 +00:00
nelson%bolyard.com
ba326d3eb7 Bug 443045 – Fix PK11_GenerateKeyPair for ECC keys on the 3.11 branch
r=rrelyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@252855 18797224-902f-48f8-a5cc-f745e15eee43
2008-07-04 08:49:50 +00:00
nelson%bolyard.com
9940fb31b5 Check in a working version of this code I've had sitting in my workarea
since August 2000.  We don't build this in production builds.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@252003 18797224-902f-48f8-a5cc-f745e15eee43
2008-05-30 21:05:49 +00:00
kaie%kuix.de
f1cc4b9b65 Bug 431772, add network solutions and diginotar root certs to NSS
r=nelson, r=rrelyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@251124 18797224-902f-48f8-a5cc-f745e15eee43
2008-05-03 03:13:22 +00:00
kaie%kuix.de
5656294c0d Bug 425469, Add multiple new roots: Geotrust, Thawte, Verisign, Trustwave, Comodo
Bug 387892, Add Entrust root CA certificate(s) to NSS
r=rrelyea, r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@250044 18797224-902f-48f8-a5cc-f745e15eee43
2008-04-11 04:39:07 +00:00
julien.pierre.boogz%sun.com
16065faa77 Fix for bug 396999 . PK11_Authenticate, PK11_DoPassword fail on 3rd party slots if NSS softoken is in FIPS140-2 mode. r=nelson, rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@247259 18797224-902f-48f8-a5cc-f745e15eee43
2008-03-06 23:52:14 +00:00
nelson%bolyard.com
078c804634 Bug 417637: tstclnt crashes if -p option is not specified, r=julien,alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@246943 18797224-902f-48f8-a5cc-f745e15eee43
2008-03-03 20:12:22 +00:00
julien.pierre.boogz%sun.com
6006fc104a Update ignored stack leaks to reflect fixes for bug 397478 and 397486.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@246611 18797224-902f-48f8-a5cc-f745e15eee43
2008-02-27 02:52:59 +00:00
julien.pierre.boogz%sun.com
70f4b31b6b Fix for bug 416067 . certutil doesn't report token authentication failure . r=nelson,rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@246499 18797224-902f-48f8-a5cc-f745e15eee43
2008-02-26 01:12:26 +00:00
nelson%bolyard.com
f862c1a776 Bug 291384: certutil -K behavior doesn't match usage. r=alexei,rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@246340 18797224-902f-48f8-a5cc-f745e15eee43
2008-02-23 03:25:50 +00:00
julien.pierre.boogz%sun.com
2e1fb0c00a Fix for bug 397486 . Session cache locks not freed on strsclnt shutdown. r=nelson,wtc
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@246338 18797224-902f-48f8-a5cc-f745e15eee43
2008-02-23 02:21:47 +00:00
nelson%bolyard.com
dd3ef6be76 Fix broken branch builds by backporting rev 1.62 from Trunk. /Nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@246037 18797224-902f-48f8-a5cc-f745e15eee43
2008-02-20 05:30:29 +00:00
julien.pierre.boogz%sun.com
2c0260c8d4 Fix for bug 403240 . Threads hanging in nss_InitLock . Stop using nss_InitLock in libssl. r=nelson,wtc
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@246021 18797224-902f-48f8-a5cc-f745e15eee43
2008-02-20 00:29:08 +00:00
julien.pierre.boogz%sun.com
a12ee1a2a9 Fix for bug 403888 . Memory leak in trustdomain.c . r=wtc,nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@245655 18797224-902f-48f8-a5cc-f745e15eee43
2008-02-14 01:37:39 +00:00
julien.pierre.boogz%sun.com
a6982d07f9 Fix for bug 398680 . Assertion in ssl3_RegisterServerHelloExtensionsSender. memset array before handshake. r=nelson,alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@245537 18797224-902f-48f8-a5cc-f745e15eee43
2008-02-13 02:43:08 +00:00
julien.pierre.boogz%sun.com
a0f11d41e9 Fix for bug 385946 . Can't import certificate into cert database in FIPS mode with certutil . r=rrelyea, nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@245525 18797224-902f-48f8-a5cc-f745e15eee43
2008-02-12 23:38:38 +00:00
christophe.ravel.bugs%sun.com
db47944d5a Set NSS version to 3.11.10.0 Beta.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@245018 18797224-902f-48f8-a5cc-f745e15eee43
2008-02-06 19:23:43 +00:00
nelson%bolyard.com
cf72984277 Bug 291384. Remove two dead functions from PK11wrap. r=rrelyea,alexei.volkov
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@244968 18797224-902f-48f8-a5cc-f745e15eee43
2008-02-06 02:03:48 +00:00
christophe.ravel.bugs%sun.com
31bf9ba82e Prepare NSS 3.11.9.0 RTM.
Uses NSPR 4.7


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@244629 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-31 22:25:22 +00:00
julien.pierre.boogz%sun.com
1c38ae168b Fix for bug 227049 . Prevent cache attacks on Windows 64 bits (AMD64) . r=nelson,wtc
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@244399 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-29 23:06:00 +00:00
kaie%kuix.de
1628546358 Bug 229335, Remove certificates that expired in August 2004 from tree
r=nelsonb, r=julien.pierre


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@243985 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-25 15:07:03 +00:00
nelson%bolyard.com
781fcce682 Bug 402285 - built-in root certs module shows no slot name, r=alexei,kengert
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@243937 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-24 21:16:52 +00:00
nelson%bolyard.com
31e19685fe Bug 402116 - incorrect use of tee command truncates output log file
r=julien.pierre, slavomir.katuscak


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@243802 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-23 07:20:09 +00:00
nelson%bolyard.com
132cef073d Bug 401970 - Correct NSS error string for SEC_ERROR_OCSP_RESPONDER_CERT_INVALID
r=kengert, alexei.volkov, julien.pierre


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@243801 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-23 07:10:46 +00:00
nelson%bolyard.com
24fe9a70d2 Bug 400119 - Fix UMRs in getLibName() for Solaris. r=julien.pierre
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@243712 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-22 04:09:04 +00:00
kaie%kuix.de
62effcdcce Bug 411299, Add Identrust, Truktrust, SwissSign Roots
r=nelson, r=rrelyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@243389 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-17 19:28:23 +00:00
slavomir.katuscak%sun.com
eeab5a1d0d Bug 401003: Improved failure detection. r=nelson,sr=julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@243105 18797224-902f-48f8-a5cc-f745e15eee43
2008-01-15 08:25:57 +00:00
nelson%bolyard.com
9218603a54 Bug 353714: key search functions ignore the nickname argument,
r=rrelyea,julien.pierre


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@240900 18797224-902f-48f8-a5cc-f745e15eee43
2007-12-12 03:22:14 +00:00
slavomir.katuscak%sun.com
5e560c6fbf Ignored leaks update.
Bug 391774 - removed (PKIX bug, not in branch)
Bug 393183 - removed (already fixed)
Bug 399304 - removed (already fixed)


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@240833 18797224-902f-48f8-a5cc-f745e15eee43
2007-12-11 13:31:36 +00:00
christophe.ravel.bugs%sun.com
029c633c26 Fix build on HP-UX. Regression from bug 391771.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@240733 18797224-902f-48f8-a5cc-f745e15eee43
2007-12-10 17:40:38 +00:00
slavomir.katuscak%sun.com
c2cf4048e4 Ignored leaks update - using simplier patterns.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@240709 18797224-902f-48f8-a5cc-f745e15eee43
2007-12-10 12:56:28 +00:00
slavomir.katuscak%sun.com
b86ff0b37c Bug 398397: Patch. r=nelson,r=julien
Bug 391815: Patch. r=alexei,r=julien

Adding at once because requires much code merging.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@240708 18797224-902f-48f8-a5cc-f745e15eee43
2007-12-10 12:55:17 +00:00
julien.pierre.boogz%sun.com
7d68f5b3e5 Fix build on Linux. Regression from bug 391771 .
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@240600 18797224-902f-48f8-a5cc-f745e15eee43
2007-12-07 06:35:46 +00:00
slavomir.katuscak%sun.com
c625916904 Bug 393183 - Patch. r=nelson,sr=christophe
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@240567 18797224-902f-48f8-a5cc-f745e15eee43
2007-12-06 09:44:02 +00:00
julien.pierre.boogz%sun.com
e9eff6c909 Fix for bug 391771 . pk11_config_name and pk11_config_strings leaked on shutdown. Add new PK11_UnconfigurePKCS11 call to free the strings. r=nelson, relyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@240553 18797224-902f-48f8-a5cc-f745e15eee43
2007-12-06 00:45:12 +00:00
julien.pierre.boogz%sun.com
001b986d51 Fix for bug 406258 . zlib doe snot compile with VC9 . r=nelson,wtc
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@240182 18797224-902f-48f8-a5cc-f745e15eee43
2007-12-01 02:16:10 +00:00
biswatosh.chakraborty%sun.com
2e8251e90f Bug 332610 - test reports success despite build missing. r = Julien, Nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@240135 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-30 05:30:43 +00:00
slavomir.katuscak%sun.com
1bb2baef87 Bug 400842: Fixed Valgrind log parsing. r=nelson,r=julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@239975 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-27 10:37:12 +00:00
slavomir.katuscak%sun.com
5bf6b24bc2 Bug 403465: Fix. r=christophe,r=julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@239974 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-27 10:29:51 +00:00
julien.pierre.boogz%sun.com
49404c9b68 Fix for bug 353577 . Remove NSS_CLASSIC code. r=nelson, wtc
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@239801 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-21 21:37:05 +00:00
wtc%google.com
27adc7e66c Bug 353577 and bug 404610: Delete PURE_STAN code and code outside
NSS_3_4_CODE.  tbr=julien.pierre
Modified Files:
 Tag: NSS_3_11_BRANCH
	tdcache.c trustdomain.c


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@239787 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-21 18:22:11 +00:00
wtc%google.com
91d2d23a62 Bug 353577 and bug 404610: minor formatting changes. tbr=julien.pierre
Modified Files:
 Tag: NSS_3_11_BRANCH
	dev/manifest.mn pki/manifest.mn pki/pkibase.c


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@239786 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-21 18:07:52 +00:00
slavomir.katuscak%sun.com
155745f317 Ignored leaks update - fixed stacks of bug 397487.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@239532 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-16 09:43:32 +00:00
julien.pierre.boogz%sun.com
47e7566a4e Fix for bug 353577 . Delete PURE_STAN code and code outside NSS_3_4_CODE . r=wtc,nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@239526 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-16 05:29:27 +00:00
julien.pierre.boogz%sun.com
8df457851e Fix for bug 403957 . nss_InitLock should be replaced with PZ_NewLock in softoken . r=nelson,wtc
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@239520 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-16 02:05:58 +00:00
julien.pierre.boogz%sun.com
5f63a33eee Fix for bug 399304 . Replace use of nss_InitLock with PZ_NewLock . Patch contributed by Wan-Teh . r=julien,nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@239493 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-15 22:05:01 +00:00
slavomir.katuscak%sun.com
0ca6a13671 Bug 391815: Added OCSP testing. r=alexei,r=julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@239457 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-15 15:16:04 +00:00
julien.pierre.boogz%sun.com
c9c2822a6b Fix for bug 227049 . Add Windows 64 bits (AMD64) support for NSS libraries. r=nelson, relyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@239397 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-14 22:47:51 +00:00
julien.pierre.boogz%sun.com
b45b6f83cd Fix for bug 401792 . Restore support for cygwin in all.sh . r=slavo, alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@239395 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-14 22:41:29 +00:00
christophe.ravel.bugs%sun.com
ce1bf4d739 Set NSS version to 3.11.9 Beta.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@239391 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-14 22:29:07 +00:00
julien.pierre.boogz%sun.com
63024d4b36 Fix for bug 399304 . Initialize cert trust and refcount locks early. r=relyea, nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@239124 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-10 04:26:12 +00:00
christophe.ravel.bugs%sun.com
9b8001d6ab Bug 325672: NSS needs a function to indicate usability of the bypass feature
Fix version in ssl.def
r=julien.pierre.boogz
sr=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@238995 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-09 00:04:05 +00:00
julien.pierre.boogz%sun.com
f2808a0313 Fix for bug 401057 . crmftest crashes in crmf_copy_bitstring . Patch contributed by Nelson . r=julien,alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@238940 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-08 02:26:40 +00:00
julien.pierre.boogz%sun.com
587ca1f075 Fix for bug 396653. Get rid of lib/asn1 which is unused. r=nelson, rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@238934 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-07 22:36:10 +00:00
julien.pierre.boogz%sun.com
ceff0f3829 Fix for bug 401071 . pk11mode crashes on win64 . r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@238616 18797224-902f-48f8-a5cc-f745e15eee43
2007-11-07 03:48:28 +00:00
christophe.ravel.bugs%sun.com
ed87ddc922 Set NSS version to 3.11.8 (RTM)
Imports NSPR 4.6.8.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@238403 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-31 23:56:39 +00:00
julien.pierre.boogz%sun.com
ba0aa25d24 Fix for bug 399669 . Make all.sh work with MinGW/MSYS . r=glen.beasley,slavomir.katuscak
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@238397 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-31 20:33:40 +00:00
glen.beasley%sun.com
f9104768ee 400811 SSL_CanBypass memory leak fix r=julien,sr=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@238358 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-31 00:32:54 +00:00
slavomir.katuscak%sun.com
f22a1e70f6 Ignored leaks update.
After upgrade of Sun Studio on Solaris/Sparc from 10 to 12 some stacks changed.
Changed patterns to match also new stacks.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@238281 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-29 09:26:51 +00:00
slavomir.katuscak%sun.com
3eaca1da3e Ignored leaks update.
Bug 367376 - One more leak added, OPT build.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@237859 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-18 12:40:20 +00:00
slavomir.katuscak%sun.com
f352647681 Ignored leaks update.
Bug 367376 - new stack found.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@237857 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-18 08:52:21 +00:00
slavomir.katuscak%sun.com
889c39e7bc Fixed TMP_COUNT initialization.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@237817 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-16 09:03:48 +00:00
slavomir.katuscak%sun.com
01a53110af Bug 398419: Patch to parse valgrind output in awk.
patch by rrelyea, modified by slavo
r=slavo,r=christophe


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@237816 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-16 08:26:00 +00:00
slavomir.katuscak%sun.com
b53ac2df40 Bug 398419: Adding variable needed to successfull run of previous patch.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@237763 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-15 12:47:09 +00:00
slavomir.katuscak%sun.com
55ae6eb0cd Bug 398419: Patch to parse dbx output in awk.
r=rrelyea,sr=christophe


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@237762 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-15 12:38:49 +00:00
slavomir.katuscak%sun.com
9bdc2ee7e3 Ignored leaks update.
Added stacks with _util suffix.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@237752 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-15 10:04:13 +00:00
slavomir.katuscak%sun.com
f03e79e433 Ignored leaks update.
Added new detected stack (from results with disabled library unloading).


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@237647 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-12 10:21:22 +00:00
slavomir.katuscak%sun.com
3bdaefa8d1 Ignored leaks update.
Bugs 308275 and 367384 - added new detected stacks (from results with disabled library unloading)


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@237590 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-11 15:19:36 +00:00
slavomir.katuscak%sun.com
44ae3026ca Bug 398882: Fixed bug in Christophe's patch (missing AWK settings).
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@237582 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-11 10:28:23 +00:00
christophe.ravel.bugs%sun.com
a2f0ba8656 Bug 398882: leading "**" in "ignored" file matches all leaks
r=Slavo, sr=rrelyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@237534 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-10 15:35:03 +00:00
slavomir.katuscak%sun.com
fc63439b34 Ignored leaks update.
Bug 308275 - added new detected stacks (from results with disabled library
unloading)
Bug 367384 - added new detected stacks (from results with disabled library
unloading)


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@237529 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-10 15:00:48 +00:00
slavomir.katuscak%sun.com
55a5dcce0d Ignored leaks update.
Bug 308275 - removed stacks with missing symbolic names
Bug 367384 - removed stacks with missing symbolic names, added new detected
stacks (from results with disabled library unloading)


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@237525 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-10 12:31:26 +00:00
slavomir.katuscak%sun.com
2f62f15e91 Bug 384639 - Adding option to disable library unloading also in optimized build.
r=nelson, r=julien


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@237518 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-10 09:12:03 +00:00
biswatosh.chakraborty%sun.com
2126dbe6ef derdec.c. Bug 352929. Reviewed by Wan-Teh and Nelson
This version is same as 1.3.28.1 but has been recommited because
        ver 1.3.28.1  was commited without any cvs comments. Hence, that
        was backed out and is now being commited back with approprite comments.
        Issue: Removed DER_Decode() and der_decode().


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@236993 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-01 16:16:54 +00:00
biswatosh.chakraborty%sun.com
0d825efb17 Backing out derdec.c ver 1.3.28.1 and commiting back ver 1.3
because the cvs comment for ver 1.3.28.1 was blank and hence
       will now commit that again after this commit, with appropriate
       comments.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@236992 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-01 16:09:19 +00:00
biswatosh.chakraborty%sun.com
7973858278 Modified Files:secder.h
For Bug Id: 352929. Reviewed by Wan-Teh Chang and Nelson
	Removed declaration of DER_Decode


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@236989 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-01 14:54:47 +00:00
biswatosh.chakraborty%sun.com
d356913494 Modified Files: derdec.c
Bug Id: 352929. Reviewed by Wan-Teh Chang and Nelson
Removed DER_Decode and der_decode


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@236988 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-01 14:51:55 +00:00
slavomir.katuscak%sun.com
7374c814d6 Ignored leaks update.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@236983 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-01 12:38:50 +00:00
slavomir.katuscak%sun.com
b19c59144f Bug 391815:
Patch adding new options to DBX and Valgrind. r=julien, r=nelson

Updated list of ignored leaks. (no review, I will update it with new leaks
when I have results from all testing machines).


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@236977 18797224-902f-48f8-a5cc-f745e15eee43
2007-10-01 09:59:08 +00:00
nelson%bolyard.com
5d555c096c Merge in rev 1.41 from trunk. Add missing #includes.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@236700 18797224-902f-48f8-a5cc-f745e15eee43
2007-09-26 10:42:02 +00:00
nelson%bolyard.com
d70daad701 Bug 366553, libSSL leaks global array of trusted client auth CA names
r=wtc,rrelyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@236691 18797224-902f-48f8-a5cc-f745e15eee43
2007-09-26 02:16:51 +00:00
alexei.volkov.bugs%sun.com
87e2a2e936 366557 - Small memory leaks in selfserv. r=nelson, neil
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@236164 18797224-902f-48f8-a5cc-f745e15eee43
2007-09-17 22:25:04 +00:00
nelson%bolyard.com
7b99021f47 Bug 394271 - two public SSL functions require PRFD* to point to SSL layer
r=julien,wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@233539 18797224-902f-48f8-a5cc-f745e15eee43
2007-09-01 04:29:23 +00:00
nelson%bolyard.com
aed02b8207 Bug 394202 - ssl_GetPrivate can corrupt non-SSL private structures
r=julien,wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@233538 18797224-902f-48f8-a5cc-f745e15eee43
2007-09-01 04:26:21 +00:00
nelson%bolyard.com
9e9e5c420b Bug 394040 - Tstclnt crashed in NISCC testing, r=julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@233528 18797224-902f-48f8-a5cc-f745e15eee43
2007-09-01 00:16:19 +00:00
kaie%kuix.de
5b793db325 Bug 394013, vfyserv hostname lookup failure
r=nelson, r=rrelyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@233478 18797224-902f-48f8-a5cc-f745e15eee43
2007-08-31 11:00:29 +00:00
nelson%bolyard.com
a6b2274996 Bug 392208 - PK11_FindCertByIssuerAndSN must validate input arguments
r=kaspar Brand,sr=rrelyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@233269 18797224-902f-48f8-a5cc-f745e15eee43
2007-08-29 01:23:11 +00:00
nelson%bolyard.com
f89a4e7493 Bug 392846 - Do not send hello extensions when using SSL v3.0, r=kengert,julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@233185 18797224-902f-48f8-a5cc-f745e15eee43
2007-08-28 03:39:12 +00:00
slavomir.katuscak%sun.com
49070e80f4 Ignored leaks update.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@232266 18797224-902f-48f8-a5cc-f745e15eee43
2007-08-17 15:08:20 +00:00
slavomir.katuscak%sun.com
ac42c80a05 Bug 376603: Patch v1 + using -n and -z. r=christophe,sr=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@232108 18797224-902f-48f8-a5cc-f745e15eee43
2007-08-15 08:47:22 +00:00
(no author)
b3a4197328 This commit was manufactured by cvs2svn to create branch 'NSS_3_11_BRANCH'.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@231813 18797224-902f-48f8-a5cc-f745e15eee43
2007-08-10 17:28:46 +00:00
nelson%bolyard.com
b5fab4dbf7 Bug 388117 - make strsclnt use IPv4 or IPv6, like tstclnt.
r=julien.pierre,neil.williams


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@231621 18797224-902f-48f8-a5cc-f745e15eee43
2007-08-08 01:00:23 +00:00
nelson%bolyard.com
799defde3e Bug 390187, PK11_FindCertFromNickname sets no error code when token not found
r=rrelyea,julien.pierre


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@231620 18797224-902f-48f8-a5cc-f745e15eee43
2007-08-08 00:53:01 +00:00
slavomir.katuscak%sun.com
ee266604db Bug 389833: Added FAILED message. r=christophe,r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@231583 18797224-902f-48f8-a5cc-f745e15eee43
2007-08-07 14:55:07 +00:00
slavomir.katuscak%sun.com
3f80937103 Bug 384639: Added option to disable library unloading. r=julien,r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@231042 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-26 07:37:28 +00:00
biswatosh.chakraborty%sun.com
38cef84819 Committing nsprstub.c in NSS_3_11_BRANCH. For Bug Id: 338688.
Reviewed by Neil Williams, Nelson and Robert Relyea.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@231038 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-26 06:47:36 +00:00
biswatosh.chakraborty%sun.com
1c8c824b24 Committing nssilock.c in NSS_3_11_BRANCH. For Bug 338688.
Reviewed by Neil Williams, Nelson Bolyard and Robert Relyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@231037 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-26 06:44:53 +00:00
nelson%bolyard.com
68c2488fe1 Sync unix_rand with trunk. Includes fixes for:
Bug 174993 - freopen stdin to /dev/null in safe_popen.
Patch by Kaspar Brand <mozbugzilla@velox.ch>, r=julien,nelson
Bug 51429: make sure that safe_popen cannot fail (in the parent process)
after fork succeeded. Patch by Wan-Teh Chang, r=neil.williams


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@230991 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-25 23:18:55 +00:00
nelson%bolyard.com
666701bc90 Remove erroneous include of "pkcs11p.h". Bug 388824.
Patch by Ian Marshall <idm@yahoo.com> R=rrelyea,nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@230975 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-25 22:44:50 +00:00
biswatosh.chakraborty%sun.com
563bbc9f48 Committing in NSS_3_11_BRANCH.
Modified Files:certutil.c
Bug Id: 233932. Reviewed by Neil Williams.
Issue: certutil -T -h wrongtoken was crashing.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@230946 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-25 18:12:57 +00:00
slavomir.katuscak%sun.com
b784dd529d Bug 382775: Fixed certutil -F, added certutil -D. r=nelson, sr=julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@230925 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-25 11:55:50 +00:00
slavomir.katuscak%sun.com
9b0b22708e Bug 389739: Added FAILED message. r=christophe, r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@230919 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-25 08:35:16 +00:00
slavomir.katuscak%sun.com
634a9993e7 Bug 338208: SSL tests using FIPS140-2 softoken. r=julien, sr=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@230654 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-23 14:35:57 +00:00
neil.williams%sun.com
0f2061030f Bug 294557, lib/pkcs12 functions are declared but unexported, dead.
r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@230243 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-18 22:00:57 +00:00
neil.williams%sun.com
558c7217a6 Bug 325672, reopened because of a duplicate ECC function decl
r=Wan-Teh


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@229932 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-14 00:03:32 +00:00
neil.williams%sun.com
88812e0581 Bug 325672, new canbypass function--change selfserv to test it.
r=alexei


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@229781 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-12 01:57:08 +00:00
julien.pierre.bugs%sun.com
ef93593776 Fix for bug 301528. SECKEY_CreateSubjectPublicKeyInfo needs to check for NULL pubk. r=nelson,rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@229639 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-10 23:00:31 +00:00
julien.pierre.bugs%sun.com
3ffab8d516 Fix for bug 387052 . Avoid an OOM crash in softoken . r=nelson,alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@229636 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-10 22:48:01 +00:00
slavomir.katuscak%sun.com
14f55bf2ac Ignored leaks update.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@229531 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-09 08:30:42 +00:00
christophe.ravel.bugs%sun.com
feae6b0197 Bug 308275 - Known leaks update.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@229369 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-05 18:37:09 +00:00
slavomir.katuscak%sun.com
85b2b44e42 Bug 297738 - Patch to load root certs module. r=julien, sr=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@229317 18797224-902f-48f8-a5cc-f745e15eee43
2007-07-04 10:13:59 +00:00
neil.williams%sun.com
4139b92fa3 Bug 325672, add canbypass function
r=nelson, julien


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@228612 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-23 01:33:33 +00:00
slavomir.katuscak%sun.com
6344cec59a Bug 363828 - Adding TCOV support. r=wtc, sr=julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@228228 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-18 12:29:33 +00:00
kaie%kuix.de
efe05566e8 Bug 383722, Add StartCom root CA certificate(s) to NSS
r=nelson, sr=rrelyea

Bug 384118, Trust bits for "AddTrust Public CA Root" are missing in builtin roots module
Patch contributed by Kaspar Brand
r=nelson, sr=kengert


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@228161 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-16 05:10:59 +00:00
nelson%bolyard.com
d9a1bb6169 Bug 376748 - Infinite loop in CERT_CertChainFromCert , r=kengert,julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@227950 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-13 05:13:44 +00:00
slavomir.katuscak%sun.com
52fddefeef Bug 367376 - update of ignored leaks.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@227582 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-06 08:46:30 +00:00
slavomir.katuscak%sun.com
449d2b4857 Bug 363197 - Patch to print DBG/OPT version. r=neil,sr=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@227581 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-06 08:42:45 +00:00
kaie%kuix.de
6c1785a2b8 Bug 378489, Add multiple new roots to NSS
r=nelson, r=rrelyea, r=alexei.volkov
Bug 289979, Three root CA certs don't have explicit CKA_TRUST_STEP_UP_APPROVED flags
Patch provided by Wan-Teh, r=kengert, r=rrelyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@227540 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-05 19:17:44 +00:00
julien.pierre.bugs%sun.com
915b9100cd Fix for bug 376894 . Allow DEBUG_PKCS11 also for optimized builds. Patch contributed by Kaspar Brand. r=nelson,julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@227394 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-02 02:23:37 +00:00
julien.pierre.bugs%sun.com
f3ac40f948 Fix for bug 381718 . Off by one error in PK11_ListPrivKeysInSlot and PK11_ListPubKeysInSlot. r=wtc, rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@227363 18797224-902f-48f8-a5cc-f745e15eee43
2007-06-01 04:20:21 +00:00
christophe.ravel.bugs%sun.com
40ff9514c5 Set NSS version to 3.11.8.0 Beta.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@227350 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-31 20:16:03 +00:00
alexei.volkov.bugs%sun.com
150f3009ea 265784: SSL interoperability regression testing. r=nelson, r=neil
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@227263 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-30 17:20:09 +00:00
alexei.volkov.bugs%sun.com
8aef5bcdca 381317: Unauthorized OCSP response error. r=nelson, sr=julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@226986 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-25 03:37:37 +00:00
christophe.ravel.bugs%sun.com
f1916dc6e0 Change version to 3.11.7.1.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@226750 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-21 21:00:09 +00:00
julien.pierre.bugs%sun.com
0978a51569 Fix for bug 380334 . Get rid of some dead code in CERT_HTMLCertInfo . r=nelson, rrlyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@226486 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-15 23:25:16 +00:00
rrelyea%redhat.com
4622f7f122 Bug 341121 – Coverity 408 sec_PKCS7CreateEncryptObject leaks param & result (edit)
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@226202 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-09 19:05:06 +00:00
nelson%bolyard.com
35d826237a Bug 324305 – tstclnt unable to resolve hostnames to IP addresses on HPUX 11i
Patch by wtc@google.com, r=nelson,alexei


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@226200 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-09 18:45:42 +00:00
neil.williams%sun.com
ac7e7a5771 Bug 82268, builds use wrong version of perl, 3.11 branch
r=nelson,christophe


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@226164 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-09 01:38:16 +00:00
christophe.ravel.bugs%sun.com
10f8cebab7 Keep only version.major.minor for NSS packaging (remove .build).
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@226156 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-09 00:17:10 +00:00
neil.williams%sun.com
10084d9c5a back out previous commit
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@226097 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-08 00:37:46 +00:00
nelson%bolyard.com
00e9783b24 Bug 370082 - init.sh tweak for non-linux platforms, r=nelson,alexei
Patch contributed by Martynas Venckus <martynas@openbsd.org>.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@226092 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-07 23:28:46 +00:00
nelson%bolyard.com
81d6965e3d Bug 379625 – Accept SMIME preferences even when they contain NULL parameters.
r=rrelyea,wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@226089 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-07 22:46:06 +00:00
neil.williams%sun.com
7b2f475244 Bug 82268, Builds use wrong version of perl
r=christophe, nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@226083 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-07 21:26:32 +00:00
christophe.ravel.bugs%sun.com
f7cba3357d NSS 3.11.7 should import NSPR 4.6.7.
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@226082 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-07 21:15:07 +00:00
christophe.ravel.bugs%sun.com
fe1a3c6670 Prepare NSS 3.11.7 build 0.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@226052 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-07 17:00:17 +00:00
nelson%bolyard.com
427e1828db Bug 370062 – nss build changes for OpenBSD, r=nelson,wtc
patches contributed by Martynas Venckus <martynas@openbsd.org>


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@225986 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-06 08:08:36 +00:00
nelson%bolyard.com
6645315f92 Bug 371160 – Eliminate bogus PKCS12_KEY_USAGE in secoid table. r=alexei,rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@225973 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-05 22:47:53 +00:00
neil.williams%sun.com
3f29f5608e Bug 351767, pk12util -o ... -W crashes when outfile is directory.
r=nelson, alexei


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@225610 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-05 01:26:20 +00:00
nelson%bolyard.com
8e94528bad Bug 371685 – allow unsupported critical extensions in special builds.
r=rrelyea,wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@225569 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-04 06:54:06 +00:00
julien.pierre.bugs%sun.com
c945cc7a1f Fix for bug 378815 - DER_TimeToGeneralizedTimeArena and DER_TimeToUTCTimeArena don't check for valid range and may leak. r=nelson, wtc
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@225557 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-04 00:22:46 +00:00
glen.beasley%sun.com
66f008429f 369444 sidCacheEntry size forced to 192 bytes r=Nelson,sr=wan-teh
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@225548 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-03 21:26:04 +00:00
nelson%bolyard.com
c2e652cae5 Bug 373276 – Enhance SSL's Bypass feature to withstand failures. r=neil,alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@225328 18797224-902f-48f8-a5cc-f745e15eee43
2007-05-01 06:09:31 +00:00
kaie%kuix.de
188de39737 Bug 316925, Key export does not work on tokens with non-sensitive keys that can't wrap.
r=kaie, r=wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@225201 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-27 23:16:39 +00:00
slavomir.katuscak%sun.com
e0fbf19f5b bug 376600 - patch to check content of string instead of grep return value; r=alexei,sr=christophe
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@225080 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-26 09:09:17 +00:00
nelson%bolyard.com
93578e6d68 Bug 377542. Eliminate duplicate implementation of cert validity time checking.
r=neil.williams,alexei.volkov


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@225065 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-26 02:01:12 +00:00
nelson%bolyard.com
a984f479b8 Add missing TLS_RSA_WITH_NULL_SHA cipher suite. Bug 370957. r=slavo,julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@225056 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-26 00:22:16 +00:00
julien.pierre.bugs%sun.com
efe5174d28 Fix for bug 378104. Stop certutil from crashing when creating certs with very long validity. r=alexei,nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@225053 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-25 23:45:54 +00:00
julien.pierre.bugs%sun.com
dc900cb371 Fix for bug 377362 . Export DER_GeneralizedDayToAscii, DER_TimeChoiceDayToAscii, DER_TimeToGeneralizedTime, DER_TimeToGeneralizedTimeArena . r=nelson, alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@225052 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-25 23:28:46 +00:00
kaie%kuix.de
464cbb33c1 Bug 205406, Need a local OCSP cache
r=nelson, r=rrelyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@224976 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-25 01:05:07 +00:00
biswatosh.chakraborty%sun.com
ffeee7cfcd This is for Bug Id: 162748
Reviewer: Nelson Bolyard
With this patch, signtool will succeed even when -p option is absent


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@224633 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-17 16:40:05 +00:00
slavomir.katuscak%sun.com
b73ac9267c bug 372388 - wait_for_selfserv fix; r=neil,sr=alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@224268 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-06 13:10:44 +00:00
slavomir.katuscak%sun.com
fb2251ec22 updated leaks
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@223996 18797224-902f-48f8-a5cc-f745e15eee43
2007-04-02 09:42:41 +00:00
christophe.ravel.bugs%sun.com
5a95e03f44 Change version to 3.11.7 Beta.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@221900 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-14 21:59:06 +00:00
nelson%bolyard.com
54a924a642 Backport fixes for bug 129218 & bug 367037 from trunk to 3_11 branch. r=me.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@221858 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-14 01:47:59 +00:00
slavomir.katuscak%sun.com
b2315412e8 update of known memleak stacks
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@221645 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-09 22:54:50 +00:00
slavomir.katuscak%sun.com
cd592127fe bug 335752 - patch for shorter version of all.sh; r=nelson, sr=alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@221569 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-08 19:40:26 +00:00
slavomir.katuscak%sun.com
fab9e039eb bug 372279 - patch for incomplete logs; r=christophe, r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@221477 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-07 21:14:49 +00:00
slavomir.katuscak%sun.com
56aaf41b8e bug 363827 - added reporting bug IDs, fixed status reporting, updated list of leaks; r=alexei, sr=christophe
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@221332 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-05 20:02:44 +00:00
(no author)
ce963010f6 This commit was manufactured by cvs2svn to create branch 'NSS_3_11_BRANCH'.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@221324 18797224-902f-48f8-a5cc-f745e15eee43
2007-03-05 18:53:42 +00:00
kaie%kuix.de
dd424e7642 bug 371024, Typos in NSS' error strings
r=rrelyea, r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@220867 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-24 13:43:24 +00:00
wtchang%redhat.com
2f62f30d64 Workaround bogus assertion failure in MSVC 8 (Express, 2005) RTL by switching
from the old _findfirst, _findnext file enumeration API to the newer
FindFirstFile, FindNextFile API.  Might be slower, but won't crash if it finds
files older than 1970.  Bug 331404. r=julien.pierre,wtc
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@220848 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-23 22:47:53 +00:00
wtchang%redhat.com
86c87046a6 Bugzilla Bug 361089: fixed memory leaks in mp_bdivmod. r=douglas.stebila
sr=relyea
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@220746 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-22 18:16:34 +00:00
wtchang%redhat.com
48c17df6a2 Bugzilla Bug 362173: The NSS cryptographic module (the softoken and freebl
shared libraries) should have its own version numbers. r=nelsonb and
neil.williams.
Modified Files:
	lib/freebl/freebl.rc lib/freebl/freeblver.c
	lib/softoken/manifest.mn lib/softoken/pkcs11.c
	lib/softoken/softkver.c lib/softoken/softokn.rc
Added Files:
	lib/softoken/softkver.h
Removed Files: (previous workaround)
	lib/freebl/nss.h lib/softoken/nss.h
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@220164 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-15 02:19:36 +00:00
wtchang%redhat.com
194ce180e9 Bug 51429: in safe_pclose, we may call kill + waitpid(WNOHANG) 1000 times
without giving the child any time to receive the SIGKILL signal and
terminate, break out of the while loop, and leave the child behind as a
zombie process.  The patch is contributed by John G. Myers
<jgmyers@speakeasy.net> and Tomas Mraz of Red Hat. r=neil.williams,relyea
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@220162 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-15 01:48:36 +00:00
wtchang%redhat.com
e06b488bac NSS 3.11.6 should import NSPR 4.6.6.
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@220158 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-15 01:15:42 +00:00
christophe.ravel.bugs%sun.com
503392b2a0 Change PR_BETA to FALSE for NSS 3.11.6 RC build.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@220149 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-14 23:39:26 +00:00
alexei.volkov.bugs%sun.com
a39a328dd2 Bug 338986 - Unauthorized OCSP response error from user's default OCSP responder. r=kengert, sr=rrelyea.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@220100 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-14 01:01:37 +00:00
alexei.volkov.bugs%sun.com
72c6db4ebf 348882 - addbuiltin command ignores "c" trust arg (and probably others). Bumpingnssckbi version. r=kengert, sr=wtchang
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@220094 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-14 00:32:58 +00:00
alexei.volkov.bugs%sun.com
e7d45d021f 363476(vfyserv needs OCSP option) and 363477(vfyserv needs option to save server certs to local files). sr=kengert, r=neil.williams
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@220093 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-14 00:24:18 +00:00
alexei.volkov.bugs%sun.com
c0c3c85382 Bug 348882 - addbuiltin command ignores "c" trust arg (and probably others). r=rrelyea, r=neil.williams
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@220088 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-14 00:01:24 +00:00
neil.williams%sun.com
5203b9deb7 Bug 337519 certutil mentions unimplemented curves, r=nelson,alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@220009 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-12 23:15:32 +00:00
slavomir.katuscak%sun.com
40247e1709 Bug 363827: Implementation of memory leak checking. r=glen, sr=christophe
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@219734 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-08 19:09:03 +00:00
(no author)
089df24a6e This commit was manufactured by cvs2svn to create branch 'NSS_3_11_BRANCH'.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@219726 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-08 17:53:13 +00:00
glen.beasley%sun.com
3f6b3c1022 193386 added MAC OS X support for mangle test r=neil, sr=slavo
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@219612 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-06 22:42:36 +00:00
glen.beasley%sun.com
bcdb3b5806 367910 add pk11mode -verbose to build and fips.sh r=neil sr=alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@219554 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-06 04:58:52 +00:00
christophe.ravel.bugs%sun.com
90f9b60c91 Set the NSS version to 3.11.6 Beta.
Tag: NSS_3_11_BRANCH
r=wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@219534 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-05 23:02:16 +00:00
slavomir.katuscak%sun.com
8ce6e2e0e9 Bug 193386: Patch to fips.sh, fixed paths on HP-UX and AIX and added
PASSED/FAILED status reporting. sr=nelson,r=alexei


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@219493 18797224-902f-48f8-a5cc-f745e15eee43
2007-02-05 12:17:22 +00:00
nelson%bolyard.com
020a472dcf Bug 366803 - Improve SSL tracing, make it work in browsers, to help with
debugging bug 356470.  r=neil.williams,alexei.volkov


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@219235 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-31 06:03:38 +00:00
nelson%bolyard.com
ef3ad328a0 Re-enable mangle test with offset of EOF - 8. Bug 193386.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@219224 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-31 04:29:47 +00:00
nelson%bolyard.com
67a0904bfa Bug 364684. Don't let the counter whose values are used for session object
handles overflow the sign bit.  Rename several softoken variables to
correctly identify their meaning.  r=rrelyea,wtchang
  tokenIDCount    -> sessionObjectHandleCount
  tokenHashTable  -> tokObjHashTable
  tokObjects      -> sessObjHashTable
  tokObjHashSize  -> sessObjHashSize


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@219221 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-31 04:01:30 +00:00
nelson%bolyard.com
ce59abe80f Disable mangle test to make Tinderbox go green again. Bug 193386.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@218971 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-26 16:21:33 +00:00
nelson%bolyard.com
d0ff911e75 Disable mangle test to make Tinderbox go green again. Bug 193386.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@218960 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-26 05:49:53 +00:00
slavomir.katuscak%sun.com
84888ec7c7 Bug 193386: Patch to fips.sh to use temporary library for mangle test. r=alexei, sr=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@218891 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-25 12:49:08 +00:00
alexei.volkov.bugs%sun.com
4585037791 Bug 342461: verify signature on an OCSP response without intermediate decoding and encoding. r=nelson, sr=wtc
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@218872 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-25 00:36:29 +00:00
wtchang%redhat.com
bb66d5fed6 Set NSS version to 3.11.5 (final).
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@218525 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-17 18:58:06 +00:00
slavomir.katuscak%sun.com
0789f6ba24 Bug 335752. Patch to allow TESTS variable from environment. r=alexei,sr=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@218381 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-15 09:47:40 +00:00
wtchang%redhat.com
1eb3b7a658 Bug 232600: use the same linker flags for programs as for DLLs when doing
optimized builds with MOZ_DEBUG_SYMBOLS=1. r=nelsonb
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@218283 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-14 02:53:29 +00:00
nelson%bolyard.com
487a4aee30 Bug 366405. Fix PK11_DeleteTokenPrivateKey to not leak the cert when
force is true.  r=alexei.volkov,wtchang


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@218280 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-13 23:41:21 +00:00
nelson%bolyard.com
3e03d4c932 My last checkin to this file accidentally added a debugging line that
was not part of the approved patch.  This revision removes it.  /Nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@217907 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-06 23:22:26 +00:00
wtchang%redhat.com
64624f95e4 Bugzilla Bug 357197: a small but subtle change to reject a hash algorithm
identifier with bogus 'parameters', and a large but straightforward change
of renaming function arguments and improving comments to clarify the
asymmetry between the two certID arguments. r=nelsonb,relyea
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@217896 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-06 17:08:44 +00:00
wtchang%redhat.com
9cfdafc8e4 Bugzilla Bug 357197: backed out the previous checkin, which had the wrong
CVS commit comment.  Will check it in with the right comment next.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@217895 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-06 17:05:27 +00:00
nelson%bolyard.com
b4c1406ebb Bug 232600. Define MOZ_DEBUG_SYMBOLS in environment to create .pdb files
and install them in $DIST.   r=rrelyea,wtchang


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@217883 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-06 05:48:54 +00:00
wtchang%redhat.com
c831d173ee 342461 - verify signature on an OCSP response without intermediate decoding and
encoding. r=nelson,relyea
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@217875 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-06 00:52:18 +00:00
wtchang%redhat.com
cd20d7b12e Set the NSS version to 3.11.5 Beta 2.
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@217872 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-05 23:57:36 +00:00
wtchang%redhat.com
c178e8fb56 Bugzilla Bug 351246: Load memory into Highmem on OS/2. The patch is
contributed by Peter Weilbacher <mozilla@Weilbacher.org>. r=wtc,kaply
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@217854 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-05 22:12:14 +00:00
nelson%bolyard.com
96ab3145d7 Fix crash when importing private key with no label.
Bug 335481. r=julien,rrelyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@217811 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-05 09:44:05 +00:00
nelson%bolyard.com
b4e49f26c5 When storing new CRL, Find old CRL and if it can be decoded, delete it.
Bug 363749. r=wtchang,alexei.volkov


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@217798 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-05 01:32:18 +00:00
alexei.volkov.bugs%sun.com
1911e73ecb 363987 - crlutil does not change thisUpdate date when creating a modified CRL. r=nelson, neil
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@217776 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-04 20:32:26 +00:00
wtchang%redhat.com
7e398367a7 Bugzilla Bug 363073: verify that the peer's ephemeral public key is the
type we expect before using it.  r=nelsonb
Modified Files: ssl3con.c ssl3ecc.c
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@217734 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-04 17:48:31 +00:00
nelson%bolyard.com
e153f0855c Bug 354423. Get the right string length. R=alexei.volkov,rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@217682 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-03 12:54:10 +00:00
nelson%bolyard.com
2b9b3e8001 Improve checking of received SSL2 records.
Bug 364319, bug 364323. r=rrelyea, wtchang


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@217670 18797224-902f-48f8-a5cc-f745e15eee43
2007-01-03 05:32:33 +00:00
wtchang%redhat.com
663158408f Bugzilla Bug 345482: changed abspath to core_abspath to avoid conflict with
the built-in abspath function of GNU make 3.81.  The patch is contributed
by Benjamin Smedberg <benjamin@smedbergs.us>. r=wtc,christophe.ravel
Modified Files:
 Tag: NSS_3_11_BRANCH
        coreconf/rules.mk nss/cmd/shlibsign/Makefile
        nss/lib/freebl/Makefile nss/lib/pk11wrap/Makefile


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@216627 18797224-902f-48f8-a5cc-f745e15eee43
2006-12-07 01:59:41 +00:00
wtchang%redhat.com
c41fb91c59 Bugzilla Bug 342795: the call-once functions need to store the error code
on failure so that the error code can be retrieved later. r=nelsonb and
alexei.volkov.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@216602 18797224-902f-48f8-a5cc-f745e15eee43
2006-12-06 21:52:56 +00:00
christophe.ravel.bugs%sun.com
37c1afb318 Bugzilla 362857 Simplify the NSS version string definition.
r+ wtchang


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@216597 18797224-902f-48f8-a5cc-f745e15eee43
2006-12-06 21:04:22 +00:00
wtchang%redhat.com
897e1c2581 Bugzilla Bug 362857: simplified the NSS version string definition and set
the NSS version to 3.11.5 Beta.  r=christophe.ravel,nelsonb.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@216585 18797224-902f-48f8-a5cc-f745e15eee43
2006-12-06 19:28:05 +00:00
wtchang%redhat.com
6d00c11d7c Bugzilla Bug 362173: added copies of nss.h from NSS 3.11.4 to the freebl
and softoken directories so that the version of the NSS cryptographic
module, which consists of the freebl and softoken shared libraries, stays
at 3.11.4 (the version submitted to NIST for FIPS 140-2 validation).
r=nelsonb,neil.williams
Added Files:
 Tag: NSS_3_11_BRANCH
	freebl/nss.h softoken/nss.h


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@216535 18797224-902f-48f8-a5cc-f745e15eee43
2006-12-06 02:56:54 +00:00
wtchang%redhat.com
9b70eb7f9f Bugzilla Bug 357197: when we compare hash algorithm identifiers, allow the
'parameters' to be either NULL or missing.  r=nelsonb,relyea
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@216532 18797224-902f-48f8-a5cc-f745e15eee43
2006-12-06 02:38:55 +00:00
wtchang%redhat.com
cb0f5f8475 Bugzilla Bug 358248: SSL_ShutdownServerSessionIDCache should stop the
LockPoller thread.  r=nelsonb,relyea
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@216530 18797224-902f-48f8-a5cc-f745e15eee43
2006-12-06 01:38:30 +00:00
neil.williams%sun.com
c62072f8bb Bug 360818; add RPATH to signtool, signver; r=Wan-Teh, Nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@215394 18797224-902f-48f8-a5cc-f745e15eee43
2006-11-17 02:13:16 +00:00
christophe.ravel.bugs%sun.com
091c4d8f60 335454: Unable to find library 'libsoftokn3.sl' on HP-UX 64 bit
r=nelson, sr=wan-teh


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@215392 18797224-902f-48f8-a5cc-f745e15eee43
2006-11-17 01:33:15 +00:00
wtchang%redhat.com
8242ab769a Changed the NSPR import version to v4.6.4. Approved by Nelson Bolyard.
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@215367 18797224-902f-48f8-a5cc-f745e15eee43
2006-11-16 19:20:12 +00:00
christophe.ravel.bugs%sun.com
4926e79a9a Remove Beta flag for NSS 3.11.4 RTM.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@215337 18797224-902f-48f8-a5cc-f745e15eee43
2006-11-15 23:40:26 +00:00
nelson%bolyard.com
919c268d1c Export two new functions that were added in NSS 3.11:
SSL_ForceHandshakeWithTimeout and SSL_ReHandshakeWithTimeout
Bug 127960. r=alexei.volkov,wtchang


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@215300 18797224-902f-48f8-a5cc-f745e15eee43
2006-11-15 00:18:02 +00:00
wtchang%redhat.com
33d1cc15c0 Bugzilla Bug 359484: made the fix for bug 341707 work for the SSL2 client
hello case. r=nelsonb,alexei.volkov
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@215246 18797224-902f-48f8-a5cc-f745e15eee43
2006-11-14 01:12:08 +00:00
wtchang%redhat.com
2401a56716 Bugzilla Bug 357197: fixed the fallthrough case in ocsp_CertIDsMatch. The
patch is contributed by Steve Parkinson <sparkins@redhat.com>. r=nelson,wtc
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@215206 18797224-902f-48f8-a5cc-f745e15eee43
2006-11-13 18:22:26 +00:00
kaie%kuix.de
f784e9dda7 Bug 356309, CertVerifyLog in CERT_VerifyCertificate terminates early on expired certs
r=rrelyea, r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@214976 18797224-902f-48f8-a5cc-f745e15eee43
2006-11-08 19:49:04 +00:00
wtchang%redhat.com
bd881fbfd1 Bugzilla Bug 355297: changed the way we reseed the RNG so that we modify
all the 256 bits of XKEY. Define struct SHA256ContextStr in the new header
sha256.h so that prng_fips1861.c can use it. r=nelsonb,jpierre.
Modified files: manifest.mn prng_fips1861.c sha512.c
Added file: sha256.h
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@213606 18797224-902f-48f8-a5cc-f745e15eee43
2006-10-13 17:02:58 +00:00
(no author)
d12319337e This commit was manufactured by cvs2svn to create branch 'NSS_3_11_BRANCH'.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@213603 18797224-902f-48f8-a5cc-f745e15eee43
2006-10-13 16:54:05 +00:00
glen.beasley%sun.com
03cc8f1571 355297 rng update checking in wan-tehs patch
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@213569 18797224-902f-48f8-a5cc-f745e15eee43
2006-10-12 22:50:48 +00:00
glen.beasley%sun.com
e8b31efea1 356073 C_GetTokenInfo should return CKR_CRYPTOKI_NOT_INITIALIZED if not initialized r=nelson,sr=neil
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@213567 18797224-902f-48f8-a5cc-f745e15eee43
2006-10-12 22:20:04 +00:00
wtchang%redhat.com
64bb5f40eb Bugzilla Bug 355297: added new function RNG_SystemRNG, which gets random
bits from the system RNG, and use it for the very first RNG_RandomUpdate
call in rng_init so that we initialize the RNG's XKEY with high quality
entropy. r=jpierre,relyea.
Modified Files:
 Tag: NSS_3_11_BRANCH
	os2_rand.c prng_fips1861.c secrng.h unix_rand.c win_rand.c


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@213527 18797224-902f-48f8-a5cc-f745e15eee43
2006-10-12 02:18:38 +00:00
wtchang%redhat.com
01418753d1 Bugzilla Bug 354900: code cleanup -- consolidates some duplicate code,
checks for NULL pointers, and renames the SFTK_IS_SECURE_KEY_OBJECT macro.
r=glen.beasley,relyea.
Modified files: fipsaudt.c fipstokn.c
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@213465 18797224-902f-48f8-a5cc-f745e15eee43
2006-10-10 22:30:43 +00:00
wtchang%redhat.com
ffaac534e2 Backed out the previous checkin (rev. 1.13.2.9), which was a mistake.
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@213037 18797224-902f-48f8-a5cc-f745e15eee43
2006-10-02 23:03:49 +00:00
wtchang%redhat.com
fb32facb3a Bugzilla Bug 354900: audit the modifications, accesses, deletions, and
additions of cryptographic keys.  r=glen.beasley,relyea.
Modified files: fipstest.c fipstokn.c manifest.mn pkcs11c.c softoken.h
Added file: fipsaudt.c
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@213036 18797224-902f-48f8-a5cc-f745e15eee43
2006-10-02 22:58:51 +00:00
(no author)
a9fd30dbc5 This commit was manufactured by cvs2svn to create branch 'NSS_3_11_BRANCH'.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@213033 18797224-902f-48f8-a5cc-f745e15eee43
2006-10-02 22:48:32 +00:00
wtchang%redhat.com
bc43b96d57 Bugzilla Bug 351482: fail if some of the needed functions don't exist.
r=glen.beasley,relyea.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@213025 18797224-902f-48f8-a5cc-f745e15eee43
2006-10-02 22:07:16 +00:00
julien.pierre.bugs%sun.com
ddde6e8e91 Fix for bug 115951 . Separate BL_Cleanup and BL_Unload . r=wtchang,nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@213017 18797224-902f-48f8-a5cc-f745e15eee43
2006-10-02 21:17:59 +00:00
nelson%bolyard.com
1c6e5829b1 Bug 353475. When building NSS with MSVC 2005, use the "mt" command to
embed the manifest files into the executables and DLLs.
Patch contributed by Allan Beaufour <allan@beaufour.dk>, r=nelson,wtchang


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@212978 18797224-902f-48f8-a5cc-f745e15eee43
2006-10-02 05:18:13 +00:00
nelson%bolyard.com
f54d43898b Bug 354384. Fix some (not all) of the reference leaks in vfyserv.
Also, improve usage message.  r=alexei,julien


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@212949 18797224-902f-48f8-a5cc-f745e15eee43
2006-10-01 05:53:20 +00:00
nelson%bolyard.com
1d37b52e7d Bug 354313. Fix leak in STAN_GetCERTCertificateName. r=julien,rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@212947 18797224-902f-48f8-a5cc-f745e15eee43
2006-10-01 05:43:02 +00:00
kaie%kuix.de
7c280b35ff Bug 350200, Implement DHMAC based POP (ProofOfPossession)
r=rrelyea, r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@212838 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-28 22:29:07 +00:00
christophe.ravel.bugs%sun.com
f12d127856 Increment NSS version to NSS 3.11.4 Beta.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@212817 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-28 19:30:48 +00:00
julien.pierre.bugs%sun.com
3cae5b49a5 Fix for bug 115951 . Unload freebl dynamic library . Also fix tiny one-time leak of library name . r=nelson,wtchang
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@212773 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-28 01:25:44 +00:00
julien.pierre.bugs%sun.com
d68458db8a Fix for bug 353910 . Memory leak in RNG_RNGInit . r=nelson, wtchang
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@212419 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-26 22:25:48 +00:00
julien.pierre.bugs%sun.com
2b82a79a24 Fix for bug 351897 . OCSP check should only be skipped for certificateStausResponder usage alone . r=rrelyea, nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@212398 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-26 20:19:50 +00:00
kaie%kuix.de
e3f621ece1 Bug 353422, Klocwork bugs in nss/lib/crmf
r=nelson, r=rrelyea
Patch inspired by Nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@212394 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-26 18:58:22 +00:00
julien.pierre.bugs%sun.com
83be765554 Fix for bug 353896 . Assert at compile time if NSS_ECC_MORE_THAN_SUITE_B is set. For NSS_3_11_BRANCH and tip. r=nelson, alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@212332 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-25 20:51:11 +00:00
wtchang%redhat.com
427d6b1f07 Bugzilla Bug 353749: for DSA KAT increased the size of P to 1024 bits
used nistK283 binary field curve KAT. Contributed by Glen Beasley of Sun.
r=wtc,neil.williams.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@212327 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-25 20:26:43 +00:00
julien.pierre.bugs%sun.com
46e62b1be2 Fix for bug 353572. Leak in sftk_OpenCertDB . r=alexei,nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@212132 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-22 00:21:03 +00:00
julien.pierre.bugs%sun.com
0f3dbf7b14 Fix for bug 353608 . NSS_RegisterShutdown may fail, and appData argument is always NULL . r=wtchang,nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@212125 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-21 20:09:48 +00:00
kaie%kuix.de
361409df13 Bug 351756, Add 7 new root CA certs to NSS trunk and 3.11 branch
r=wtchang, r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@211751 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-15 00:27:03 +00:00
julien.pierre.bugs%sun.com
89d40ba41b Fix for bug 352041 . oom in CERT_DecodeDERCrlWithFlags . r=alexei,nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209795 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-11 23:14:09 +00:00
wtchang%redhat.com
800aca1177 Bugzilla Bug 351848: renamed a fuction argument and added a comment.
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209588 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-09 22:14:56 +00:00
nelson%bolyard.com
cc509ebb99 Change DecryptSigBlock to return the parsed DigestInfo's length, so
the caller can check it.  Patch by wtchang@redhat.com. r=nelson,rrelyea
bug 351848.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209532 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-09 03:49:12 +00:00
julien.pierre.bugs%sun.com
74d02f623e Fix for bug 332222 . Support mixed RSA/DH certs in ssl.sh . r=slavomir,nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209523 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-09 01:21:38 +00:00
glen.beasley%sun.com
aa0763faab 351872 mem leak fix for ecdsa powerupselftest r=julien, sr=wan-teh
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209514 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-09 00:16:50 +00:00
wtchang%redhat.com
d05b56acea Tell whether the ECC support is "basic" or "extended" in the version
string. r=christophe.ravel
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209501 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-08 23:55:05 +00:00
wtchang%redhat.com
958389b0d1 Import NSPR 4.6.3. r=christophe.ravel
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209499 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-08 23:51:05 +00:00
julien.pierre.bugs%sun.com
d1468ba8f8 Tracing for bug 348198 : remove duplicate line and be consistent with tip.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209480 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-08 21:29:52 +00:00
wtchang%redhat.com
7f3b73ce23 Bugzilla Bug 342582: Use the PKCS #11 headers in NSS on Windows, too.
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209404 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-08 00:54:43 +00:00
wtchang%redhat.com
5aeb42b989 Bugzilla Bug 342582: removed a space after "PROGRAM = pk11mode", which
broke the Windows build (because the executable name became pk11mode .exe).
Also removed unnecessary variable definitions.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209402 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-08 00:48:27 +00:00
wtchang%redhat.com
7e122e1291 Bugzilla Bug 351482: Use audit_log_user_message, if available. Otherwise,
fall back on audit_send_user_message, which exists in older versions of
libaudit.so.0. r=glen.beasley,relyea.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209399 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-08 00:19:24 +00:00
julien.pierre.bugs%sun.com
aa78a1eb9e Bug 348198 : trace startup and shutdown time for selfserv. Patch contributed by Slavomir Katuscak. r=julien,alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209395 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-07 23:54:24 +00:00
alexei.volkov.bugs%sun.com
d28e5fa7e1 220380: Add SSL client auth stress tests. sr=nelson, r=julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209392 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-07 23:29:41 +00:00
alexei.volkov.bugs%sun.com
4179109a2b 220380: Add SSL client auth stress tests. r=nelson,julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209391 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-07 23:25:47 +00:00
christophe.ravel.bugs%sun.com
a3b1f65b93 Remove Beta flag for NSS 3.11.3 release candidate.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209378 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-07 21:36:30 +00:00
wtchang%redhat.com
e5098ef4e9 Bugzilla Bug 342582: include <stdarg.h> instead of "prprf.h" for va_list,
va_start, etc.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209375 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-07 21:08:00 +00:00
wtchang%redhat.com
2e39a5b23a Bugzilla Bug 342582: improved PKM_CK_RVtoStr: map our vendor-defined error
codes, and return "unknown error" instead of NULL for unknown error codes.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209371 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-07 20:27:24 +00:00
glen.beasley%sun.com
f5365622f8 342582 changed RSA modulus and public exponent
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209362 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-07 18:35:48 +00:00
glen.beasley%sun.com
8ac0429a37 342582 AIX runtime error and some cleanup
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209355 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-07 18:16:52 +00:00
glen.beasley%sun.com
3401e27ccf 342582 removed AIX warnings
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209321 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-07 06:09:26 +00:00
glen.beasley%sun.com
8602c7bef1 342582 all test passed msg
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209296 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-06 21:50:59 +00:00
glen.beasley%sun.com
a98cebfe66 342582 hpux update
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209293 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-06 21:19:54 +00:00
julien.pierre.bugs%sun.com
3261f970d7 Fix for bug 351270 . Assertion in unix_rand.c .
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209290 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-06 21:08:21 +00:00
nelson%bolyard.com
06a35eded6 Improve the validity tests on the AlgorithmID when verifying a PKCS#1 v1.5
RSA signature.  Bug 351079. r=rrelyea,wtchang.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209161 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-05 09:52:05 +00:00
nelson%bolyard.com
d104d8f4d0 Also trace the DH(E) PMS. bug 349966. r=julien.pierre, wtchang
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209075 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-02 19:00:06 +00:00
wtchang%redhat.com
da72b30f60 Bugzilla bug 342582: need to set slotID. Other minor fixes.
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209036 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-01 22:11:21 +00:00
julien.pierre.bugs%sun.com
7a2ec0b943 Fix for bug 182758 . Use only /dev/urandom on Solaris if available, otherwise use libkstat . r=nelson, wtchang
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209035 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-01 22:10:58 +00:00
wtchang%redhat.com
36774bc1bf Bugzilla bug 342582: this program may use NSPR but should not link with
any NSS libraries.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209034 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-01 22:09:04 +00:00
wtchang%redhat.com
f286c283e4 Bugzilla bug 342582: MODULE should be nss so that we can include NSS
headers.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209031 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-01 22:07:47 +00:00
wtchang%redhat.com
f924fc039a Bugzilla Bug 349609: sftk_MACUpdate only works with multi-part operations.
r=glen.beasley,relyea.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@209005 18797224-902f-48f8-a5cc-f745e15eee43
2006-09-01 17:10:30 +00:00
glen.beasley%sun.com
636a2d247d fix warnins on redhat4
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208948 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-31 22:29:18 +00:00
glen.beasley%sun.com
019535c83f initial checkin of pk11mode.c FIPS test program work in progress
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208919 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-31 17:55:18 +00:00
nelson%bolyard.com
58f68d3623 When verifying a signed digest, ensure that the digest is DER encoded and
that there is no extra stuff after the DER encoded digest.  Bug 350640.
r=julien.pierre,rrelyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208876 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-31 03:57:56 +00:00
alexei.volkov.bugs%sun.com
16080e3753 337013: OOM crash [@ nssArena_Destroy - nssTrustDomain_TraverseCertificatesBySubject][@ nssArena_Destroy - nssTrustDomain_TraverseCertificatesByNickname] Dereferencing possibly NULL "tmpArena". r=nelson, sr=julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208821 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-30 17:57:20 +00:00
glen.beasley%sun.com
e6bd03aeda 349965 added ECDSA key gen to power up self test r=wtc
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208709 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-29 16:57:18 +00:00
nelson%bolyard.com
b54efa5134 Correctly zero-fill columns in weaved array. r=julien,wtchang. Bug 348359.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208688 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-29 02:46:20 +00:00
wtchang%redhat.com
befce813a9 Bugzilla Bug 349632: 1. C_VerifyUpdate HMAC fix. 2. made C_Verify work for
multi-part mechanisms. r=glen.beasley,relyea.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208488 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-26 01:53:21 +00:00
wtchang%redhat.com
1ba8b6196a Bugzilla bug 336813: do not set the nonstandard flag CKF_THREAD_SAFE. Set
CKF_DUAL_CRYPTO_OPERATIONS and the new v2.10 flag CKF_TOKEN_INITIALIZED.
r=relyea,nelsonb.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208486 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-26 01:26:17 +00:00
alexei.volkov.bugs%sun.com
4165f75f26 330056: seckey_put_private_key leaks memory. r=nelson, sr=wtc
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208478 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-25 23:04:56 +00:00
alexei.volkov.bugs%sun.com
4ce8a260e3 304361: smime: possible memory corruption when encoding/decoding smime_encryptionkeypref_template. r=nelson, sr=wtc
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208477 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-25 23:00:29 +00:00
nelson%bolyard.com
4f572fe8f1 re-enable SSLTRACE for keys and (pre)master secrets. Bug 349966. r=rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208361 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-24 22:31:54 +00:00
julien.pierre.bugs%sun.com
85324c2113 Allow cert.sh and ssl.sh to support mixed ECC/RSA certs. Patch created by Slavomir Katuscak. r=nelson, rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208307 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-24 17:56:37 +00:00
wtchang%redhat.com
72b09e6728 Bugzilla Bug 347409: removed the on-demand initiation of the FIPS power-up
self-tests from FC_Login. We now require the user to shut down and restart
the softoken to initiate the power-up tests on demand. r=nelsonb and
neil.williams.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208269 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-24 01:39:11 +00:00
julien.pierre.bugs%sun.com
6dfdd6888c Fix for bug 349920 . Don't optimize freebl libraries in debug build on Sparc . r=nelson, neil.williams
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208254 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-23 22:57:26 +00:00
glen.beasley%sun.com
35112ba8f8 349632 C_VerifyUpdate HMAC fix r=wtc,sr=bobR
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208246 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-23 21:46:23 +00:00
julien.pierre.bugs%sun.com
53809c1520 Fix for bug 225525 . Resolve race assigning NSSCertificate fields which leaked memory and slot reference. r=nelson, rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208141 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-23 01:36:31 +00:00
nelson%bolyard.com
a91305cb8f Fix race in CERT_NewTempCertificate. Bug 341323. r=julien,rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@208096 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-22 17:12:04 +00:00
wtchang%redhat.com
ffef26abd0 Bugzilla Bug 342476: backed out the previous checkin. Not sure if it's a
good idea.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@207892 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-18 23:26:10 +00:00
wtchang%redhat.com
afd3d2dcc9 Bugzilla Bug 342476: The softoken should check the pReserved field in the
(extended) CK_C_INITIALIZE_ARGS structure.  r=nelsonb,relyea.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@207888 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-18 23:04:19 +00:00
wtchang%redhat.com
1da9abc400 Bugzilla Bug 53427: PORT_FreeArena should zero memory before freeing it if
the 'zero' argument is true. Added PORT_ArenaZRelease and change secasn1d.c
to zero our_pool before releasing or freeing it. r=nelsonb,jpierre.
Modified files: secasn1d.c secport.c secport.h
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@207514 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-16 00:08:19 +00:00
wtchang%redhat.com
ba6acbc6ea Bugzilla Bug 325148: worked around the change of backslash-newline behavior
inside single-quoted strings in GNU make 3.81.  The patch is contributed by
Pawel Chmielowski <prefiks@aviary.pl>. r=benjamin.smedberg,wtc.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@207495 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-15 21:41:41 +00:00
wtchang%redhat.com
43b326dc05 Bugzilla Bug 53427: passed the correct 'zero' argument to PORT_FreeArena.
Removed dead code. r=nelsonb,relyea.
Modified Files:
 Tag: NSS_3_11_BRANCH
        softoken/keydb.c softoken/lowpbe.c softoken/pkcs11c.c
        util/secdig.c


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@207408 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-15 01:41:15 +00:00
wtchang%redhat.com
a26bd57810 Bugzilla Bug 336813: Improved NSC_GetTokenInfo and FC_GetTokenInfo. Always
set CKF_RNG. Set the utcTime member to 16 zeros "0000000000000000".
Factored out the common flag CKF_RNG and CKF_THREAD_SAFE. r=nelsonb,relyea.
Modified files: fipstokn.c pkcs11.c
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@207334 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-14 17:59:32 +00:00
wtchang%redhat.com
978246dd92 Bugzilla Bug 316369: support building JSS on Mac OS X. The patch is
contributed by Nathin Kinder <nkinder@redhat.com>. r=wtc,jpierre.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@207325 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-14 17:20:41 +00:00
julien.pierre.bugs%sun.com
4621bc988d Fix for bug 341708 . selfserv is sometimes silent when client aborts handshake in client key exchange . r=nelson, wtchang
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@206634 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-05 01:54:03 +00:00
wtchang%redhat.com
a00dc9ec5f Bugzilla Bug 347024: Moved the software integrity test from
nsc_CommonInitialize to the new function sftk_fipsSoftwareIntegrityTest
and have sftk_fipsPowerUpSelfTest call sftk_fipsSoftwareIntegrityTest.
Updated the audit logging code.  Removed an extraneous comma between two
string literals in fipstokn.c. r=relyea,nelsonb.
Modified files: fipstest.c fipstokn.c pkcs11.c
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@206522 18797224-902f-48f8-a5cc-f745e15eee43
2006-08-03 21:54:33 +00:00
wtchang%redhat.com
b69f95ee57 Bugzilla Bug 336509: put the FIPS token in the Error state only when the
continuous RNG test fails.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@206179 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-31 18:32:06 +00:00
wtchang%redhat.com
7bc96409ef Bugzilla Bug 336509: check for continuous RNG test failure after direct and
indirect uses of the RNG. r=relyea,nelsonb.
Modified files: fipstokn.c keydb.c pkcs11.c pkcs11c.c pkcs11i.h rsawrapr.c
                softoken.h
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@206173 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-31 18:17:14 +00:00
wtchang%redhat.com
ca93ca136b Bugzilla Bug 345502: C89 doesn't allow initializing a local array. Fixed
some array sizes.  The patch is contributed by Glen Beasley of Sun. r=wtc.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@205083 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-28 20:50:19 +00:00
glen.beasley%sun.com
ffd96d290e 345502 RNG power-up SelfTest r=wtc
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@203484 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-24 00:54:13 +00:00
nelson%bolyard.com
73d1dd9dba Correct ifdefs so that non-ECC builds will continue to build correctly.
r=wtchang  bug 341707.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@203201 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-20 00:17:23 +00:00
nelson%bolyard.com
0fcbd6a4af Curve-limited clients must not negotiate ECC ciphersuites unless they send the supported curve extension. This means that when they are nogotiating SSL 3.0
and not TLS, they should not negotiate ECC ciphersuites at all.
Bug 341707.  r=rrelyea.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@203068 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-19 01:42:58 +00:00
nelson%bolyard.com
960accbf7f Backport fixes for bug 294537, bug 333600 and bug 334314. r=Alexei.Volkov
Display ASCII CA names from cert request message.
Display ECC cipher suite names.
Display TLS hello extensions and alerts.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@203063 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-19 01:18:33 +00:00
nelson%bolyard.com
9bd2ec0fa5 Coverity bug 340217. Fix leak, crash, and failure to set error codes in
CMMF_POPODecKeyChallContDecryptChallenge. r=alexei.volkov


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@203058 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-19 00:45:31 +00:00
nelson%bolyard.com
f7c52bd6e4 Remove FORTEZZA code from this file. Coverity CID 874. r=rrelyea.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@203055 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-19 00:36:38 +00:00
nelson%bolyard.com
642ebb111c Remove dead function SECU_GetPBEPassword from nss/cmd/lib/secutil.*
Patch contributed by Jon Smirl <jonsmirl@gmail.com>
Coverity CID 516. Bug 337081.  r=nelson@bolyard.com


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@203050 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-19 00:25:03 +00:00
nelson%bolyard.com
4d2d2f9631 Stop using EXTENSION_NOT_FOUND as an OCSP error code. Bug 287850.
r=julien.pierre


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@203047 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-19 00:05:53 +00:00
alexei.volkov.bugs%sun.com
5eca3cb8dc 334459: Variable "(cache)->sharedCache" tracked as NULL was passed to a function that dereferences it. [@ CloseCache - InitCache]. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@202258 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-17 22:15:10 +00:00
alexei.volkov.bugs%sun.com
5fbac7ecdf 341291: Coverity 689 - potential NULL ptr crash in ssl3_SendCertificate. r=nelso
n


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@202257 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-17 22:08:31 +00:00
alexei.volkov.bugs%sun.com
ffcd870a4b 341120: Coverity 541 nss_cms_recipients_traverse leaks "rle". r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@202255 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-17 21:57:35 +00:00
alexei.volkov.bugs%sun.com
2c067a8ac0 341115: Multiple NULL ptr dereferences in nss/lib/base/arena.c. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@202254 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-17 21:51:32 +00:00
wtchang%redhat.com
6df88dcdc2 Changed NSS version to 3.11.3 Beta.
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@202180 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-14 21:23:53 +00:00
kaie%kuix.de
e0b4b8e332 Bug 343682, crash in libcrmf with ecc
patch=rrelyea, r=kengert, r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@202088 18797224-902f-48f8-a5cc-f745e15eee43
2006-07-13 21:01:40 +00:00
kaie%kuix.de
4cc40d2dec Bug 337486, mismatch between PK11_FindCertFromNickname and FindCerts
r=rrelyea, r=julien.pierre


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@201323 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-30 03:26:05 +00:00
christophe.ravel.bugs%sun.com
b5b43e2f3d NSS 3.11.2 release candidate.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@200748 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-23 22:25:12 +00:00
wtchang%redhat.com
7e733b3369 Bugzilla Bug 338798: in C89, local struct variables can only be initialized
by constant expressions.  HP C compiler version B.11.11.08 generates
incorrect code silently if the initializers are non-constant expressions.
r=alexei.volkov,julien.pierre.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@200488 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-21 00:44:30 +00:00
julien.pierre.bugs%sun.com
82d7c61ebf Workaround (or fix) for bug 341573 . Switch compiler option from -fsimple=2 to -fsimple=1
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@200103 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-16 04:41:34 +00:00
alexei.volkov.bugs%sun.com
f686617bd7 [Bug 337110] OOM Crash and memory leak [@ PK11_CreatePBEParams]. r=julien, sr=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@200064 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-16 00:01:35 +00:00
wtchang%redhat.com
57520bd863 Bugzilla Bug 341590: in FIPS mode, softoken should report the more serious
fatalError condition before the !isLoggedIn condition. r=nelson.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@200062 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-15 23:58:46 +00:00
christophe.ravel.bugs%sun.com
141af69c54 Bugzilla 337793: Create a test to check all EC curves
r+ Christophe
Committed on behalf of Nelson.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@200026 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-15 19:28:40 +00:00
nelson%bolyard.com
0b8da0bd73 Back out the last two patches. Bug 337110 & bug 341455.
We can live with the unfixed leak until we get it right.
Making this change on the NSS_3_11_BRANCH only!


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199861 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-14 03:05:01 +00:00
julien.pierre.bugs%sun.com
1af566d276 Fix for bug 341455. Crash and test failures in pk12util. Caused by regression in the fix for 337110 .
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199859 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-14 01:59:34 +00:00
alexei.volkov.bugs%sun.com
07870e3562 [Bug 337008] OOM crash [@ nssList_Add - STAN_InitTokenForSlotInfo - STAN_LoadDefaultNSS3TrustDomain][@ nssList_Clone - nssList_CreateIterator - STAN_LoadDefaultNSS3TrustDomain] Dereferencing possibly NULL "(td)->tokenList". r=nelson, sr=wtc
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199837 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-13 21:36:29 +00:00
wtchang%redhat.com
b71873f4d0 Bugzilla Bug 341111: added a dummy reference to the SCCS and RCS version
strings so that they won't be optimized away. r=nelsonb.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199804 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-13 17:58:03 +00:00
alexei.volkov.bugs%sun.com
a6ff3a8b65 [Bug 337110] OOM Crash [@ PK11_CreatePBEParams]. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199802 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-13 17:33:06 +00:00
alexei.volkov.bugs%sun.com
41a8ba8eb3 [Bug 337099] Crash [@ PK11_ParamFromIV] Variable "iv" tracked as NULL
was dereferenced. r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199756 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-12 21:16:57 +00:00
alexei.volkov.bugs%sun.com
369ef25ca2 [Bug 339886] param leaked at NSS_CMSCipherContext_StartEncrypt(nss/lib/smime/cmscipher.c). r=nelson
CVS: ----------------------------------------------------------------------


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199753 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-12 21:05:16 +00:00
nelson%bolyard.com
8fee244729 Don't call nssCKFWToken_Destroy with NULL. Bug 340018. r=alexei.volkov
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199664 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-10 22:21:10 +00:00
kaie%kuix.de
47b5a5424a Bug 340183, Add the Netlock Class QA root certificate
Approval for adding CA cert granted by Frank Hecker in bug 313942
Patch by Wan-Teh Chang, r=me


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199635 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-09 21:03:44 +00:00
nelson%bolyard.com
94060288af Fix broken build.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199618 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-09 18:12:50 +00:00
nelson%bolyard.com
883f45dfdb Fix leak and OOM crash. Bug 338352. Coverity. r=rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199566 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-09 01:40:11 +00:00
julien.pierre.bugs%sun.com
2a5b336e9d Fix for bug 340909 . Add certutil command to usage. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199563 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-09 01:25:15 +00:00
nelson%bolyard.com
7529fc7609 Fix leaks in CERT_DistNamesFromNicknames (bug 339916) and in
CERT_GetCertNicknames (bug 339919). Coverity bugs. r=alexei.volkov


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199562 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-09 01:24:39 +00:00
nelson%bolyard.com
860251a21d Fix leak in NSS_CMSEncoder_Start error path. Bug 339914. r=alexei.volkov
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199551 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-08 22:01:02 +00:00
nelson%bolyard.com
ee606dcb1a Fix leak in sec_asn1d_add_to_subitems. Bug 339913. r=alexei.volkov
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199541 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-08 21:40:30 +00:00
glen.beasley%sun.com
0e0f078dd0 340734 update ref to 140-1 to 140 r=neilWilliams
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199521 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-08 18:11:15 +00:00
wtchang%redhat.com
a36786cb01 Bugzilla bug 338599: added new function SECKEY_SignatureLen and use it
instead of SECKEY_PublicKeyStrength to get ECDSA signature lengths.
Set error codes when functions fail (return 0). r=jpierre,nelsonb.
Modified Files:
 Tag: NSS_3_11_BRANCH
	cryptohi/keyhi.h cryptohi/seckey.c cryptohi/secvfy.c
	nss/nss.def ssl/ssl3con.c


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199493 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-08 05:42:36 +00:00
nelson%bolyard.com
7b7b46e1fe Remove dead code. Coverity 506. r=nelson,wtchang. Bug 337027.
Patch by Jon Smirl <jonsmirl@yahoo.com>


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199434 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-07 18:40:57 +00:00
nelson%bolyard.com
a954ab4e72 Fix bug 337104 and bug 337105. Don't crash if we run out of memory
in ssl2_ConstructCipherSpecs().  r=Alexei.Volkov  Coverity 442 & 443.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199429 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-07 17:53:19 +00:00
julien.pierre.bugs%sun.com
6d18b920bd Fix for bug 326637 . Unnecessary request of PKCS11 device password accessing SSL sites . r=rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199410 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-07 02:34:06 +00:00
julien.pierre.bugs%sun.com
8c6bcd1057 Fix for bug 340040 - add certutil option to verify an OCSP responder cert. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@199080 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-06 01:08:59 +00:00
alexei.volkov.bugs%sun.com
0c2aadae04 [Bug 339908] 3 NULL ptr crashes when PK11_GetBestSlot returns NULL. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@198906 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-02 20:34:04 +00:00
wtchang%redhat.com
6471ef4628 Import NSPR 4.6.2.
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@198858 18797224-902f-48f8-a5cc-f745e15eee43
2006-06-02 05:22:52 +00:00
wtchang%redhat.com
1e09a6109d Bugzilla Bug 338552: added StartCom CA certificate to NSS. The patch is
contributed by  Eddy Nigg, StartCom Ltd. <eddy_nigg@startcom.org>. r=wtc.
a=hecker.
Modified Files: certdata.c certdata.txt nssckbi.h
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@198754 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-31 18:19:53 +00:00
julien.pierre.bugs%sun.com
9b15bf8856 Fix for bug 335021 . Back out temporary hot fix.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@198716 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-31 02:00:18 +00:00
julien.pierre.bugs%sun.com
d1bbeb01f6 Fix for bug 336477 . Fix for CERT_UncacheCRL error checking. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@198715 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-31 01:58:50 +00:00
julien.pierre.bugs%sun.com
a7b5faff81 Fix for bug 335021 . Incorrect smime_encryptionkeypref_template leads to QuickDER decoding failure. r=rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@198366 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-25 02:07:16 +00:00
alexei.volkov.bugs%sun.com
57dab7bc43 [Bug 337014] OOM crash [@ PORT_ArenaAlloc - PK11_PQG_ParamGenSeedLen][@ PORT_ArenaAlloc - PK11_PQG_ParamGenSeedLen] Dereferencing possibly NULL "varena". r=nels
on


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@198225 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-22 23:07:59 +00:00
alexei.volkov.bugs%sun.com
9bf2dffa69 [Bug 337495] Double free in CRMF_CertReqMsgSetSignaturePOP (security/nss/lib/crmf/crmfpop.c) [Attachment 222949]. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@198216 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-22 22:38:56 +00:00
alexei.volkov.bugs%sun.com
aec28888f9 [Bug 337495] Double free in CRMF_CertReqMsgSetSignaturePOP (security/nss/lib/crmf/crmfpop.c). r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@198206 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-22 21:46:14 +00:00
wtchang%redhat.com
3552feaab0 Bug 236613: change to MPL/LGPL/GPL tri-license.
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@198124 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-21 20:56:11 +00:00
nelson%bolyard.com
85108f2cfc Promote the use of curve secp192r1 for client auth, since it is faster
than most.  Bug 332350.  r=rrelyea.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197974 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-19 04:01:30 +00:00
nelson%bolyard.com
b3bb1fbcc7 Eliminate a crash and plug a leak in the error path for function
nssSMIMEProfile_Create. Coverity bug 337101. r=alexei.volkov.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197968 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-18 23:31:17 +00:00
nelson%bolyard.com
5f1a2c74a4 Avoid crash if "item" pointer is NULL. Coverity bug 333555.
r=wtchang,alexei.volkov


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197959 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-18 21:20:04 +00:00
alexei.volkov.bugs%sun.com
7af17150a8 [Bug 337008] OOM crash [@ nssList_Add - STAN_InitTokenForSlotInfo - STAN_LoadDefaultNSS3TrustDomain][@ nssList_Clone - nssList_CreateIterator - STAN_LoadDefaultNSS3TrustDomain] Dereferencing possibly NULL "(td)->tokenList". r=nelson, sr=wtc
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197957 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-18 21:00:58 +00:00
alexei.volkov.bugs%sun.com
76c8b456e0 [Bug 337010] OOM crash [@ NSC_DigestKey] Dereferencing possibly NULL "att". r=ne
lson,wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197955 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-18 20:53:29 +00:00
nelson%bolyard.com
5290eb94e0 Plug leak. Free cache. Coverity bug 338201. r=alexei.volkov
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197951 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-18 20:47:46 +00:00
nelson%bolyard.com
7b04b20095 Fix several Coverity bugs. Bug 336982. NULL ptr check after ptr deref'ed.
Bug 337080.  Dead code.  r=alexei.volkov


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197950 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-18 20:41:21 +00:00
nelson%bolyard.com
34b61ef824 Remove dead old FORTEZZA KEA code. Coverity bug 337098. r=rrelyea,wtchang
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197948 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-18 20:26:36 +00:00
alexei.volkov.bugs%sun.com
10632c2195 [Bug 337154] Coverity 321, dead code in mozilla/security/nss/lib/pk11wrap/pk11cert.c. (second patch) r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197947 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-18 20:21:12 +00:00
nelson%bolyard.com
e3c96d8c6e Don't dereference a NULL secmodprefix argument. Coverity Bug 336981.
r=alexei.volkov


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197945 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-18 19:47:37 +00:00
nelson%bolyard.com
c9507dc281 In SEC_PKCS12DecoderGetCerts, don't dereference p12dcx until AFTER it has
been checked for NULL. Coverity bug 336971. r=alexei.volkov


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197944 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-18 19:39:58 +00:00
nelson%bolyard.com
bbb6be17a7 Add 3 assertions to satisfy coverity that tmpt is never NULL in these
places.  Bug 336995. r=akexei.volkov,wtchang


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197941 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-18 19:32:44 +00:00
nelson%bolyard.com
aec9158f96 Plug leak. Free "info" in error path. Coverity bug 336475.
r=wtchang,alexei.volkov


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197899 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-18 04:37:28 +00:00
nelson%bolyard.com
65117470a9 Correct the amount returned by ssl_Writev for short writes on non-blocking
sockets.  Bug 338325. patch by Chris Newman <chris.newman@sun.com>
r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197894 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-17 23:00:55 +00:00
julien.pierre.bugs%sun.com
fbca9a08bf Fix for bug 338214 . Plug reference leak in PK11_CreateContextByRawKey . r=nelson,wtchang
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197893 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-17 22:22:27 +00:00
alexei.volkov.bugs%sun.com
a9b23350be [Bug 337011] OOM crash [@ sftk_handleKeyObject][@ sftk_handleKeyParameterObject] Dereferencing possibly NULL "attribute". r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197887 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-17 20:52:16 +00:00
alexei.volkov.bugs%sun.com
a3506ffd27 [Bug 337326] Leak in nsslowcert_UpdateSubjectEmailAddr (security/nss/lib/softoken/pcertdb.c). r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197886 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-17 20:46:59 +00:00
alexei.volkov.bugs%sun.com
5980f5a52a [Bug 337009] OOM crash [@ nssList_Count - nssTrustDomain_GetCertsFromCache] Dereferencing possibly NULL "certList". r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197885 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-17 20:38:59 +00:00
alexei.volkov.bugs%sun.com
c1281dda02 [Bug 337332] Leak in OpenNewDB (security/nss/lib/softoken/keydb.c). r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197869 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-17 17:56:37 +00:00
wtchang%redhat.com
87e6a22254 Bugzilla Bug 337887: use the -mnop-fun-dllimport flag so that we can use
a pointer to a function declared with the dllimport attribute as a constant
address.  We need to use such function pointers to initialize a const
structure in nss/lib/ssl/sslsock.c.  The patch is contributed by Chris
Seawood <cls@seawood.org>.  r=wtc.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@197864 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-17 16:41:31 +00:00
alexei.volkov.bugs%sun.com
3969ec3441 [Bug 336485] coverity thinks that nssPKIObject_GetInstances could return null which would lead to a crash [@ listCertsCallback]. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196714 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-16 23:47:45 +00:00
julien.pierre.bugs%sun.com
7e622ce3b7 Fix for bug 335036. certutil tries to shutdown NSS even if it didn't initialize . r=wtchang, nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196631 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-16 02:17:26 +00:00
wtchang%redhat.com
c90fa24034 Bugzilla Bug 337025: removed more unused or trivially used variables.
r=alexei.volkov,nelson.bolyard.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196630 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-16 01:58:43 +00:00
wtchang%redhat.com
c8857431aa Bugzilla Bug 298506: a first cut at Solaris auditing. The patch is
contributed by Glen Beasley of Sun. r=wtc.
Modified Files:
 Tag: NSS_3_11_BRANCH
	cmd/platlibs.mk lib/softoken/config.mk lib/softoken/fipstokn.c


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196620 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-16 01:11:16 +00:00
julien.pierre.bugs%sun.com
1ff15596d8 Fix for bug 335036 . NSS_Shutdown() does not check that NSS is initialized. r=nelson, alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196611 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-16 00:11:25 +00:00
julien.pierre.bugs%sun.com
4bfc721c02 Fix for bug 336477. PK11_FindKeyByAnyCert does not work if softoken is in FIPS140-2 mode. r=wtchang, rrelyea, nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196610 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-15 23:55:13 +00:00
rrelyea%redhat.com
f4f28b8ee3 Bug 305835: Remove NSS_ENABLE_ECC ifdefs in libssl
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196603 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-15 21:55:47 +00:00
alexei.volkov.bugs%sun.com
616c261867 [Bug 336482] crash or hopefully deadcode [@ crmf_copy_poposigningkey]
because Pointer "destPopoSignKey" dereferenced before NULL check. r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196597 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-15 21:05:20 +00:00
alexei.volkov.bugs%sun.com
dca09caff5 Patch contributed by jonsmirl@yahoo.com
[Bug 337154] Coverity 321, dead code in mozilla/security/nss/lib/pk11wrap/pk11cert.c. r=wtchang


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196596 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-15 20:58:18 +00:00
alexei.volkov.bugs%sun.com
4cf74e2c3d Patch contributed by jonsmirl@yahoo.com
[Bug 337086] Coverity 446, dead code in mozilla/security/nss/lib/certhigh/ocsp.c. r=wtchang


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196592 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-15 20:52:01 +00:00
alexei.volkov.bugs%sun.com
0b40273773 Patch contributed by jonsmirl@yahoo.com
[Bug 337085] Coverity 447, dead code in mozilla/security/nss/lib/certhigh/ocsp.c. r=wtchang


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196589 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-15 20:44:54 +00:00
alexei.volkov.bugs%sun.com
9e0c321710 Patch contributed by timeless@bemail.org [Bug 337025] Coverity 411, dead code in mozilla/security/nss/lib/certdb/stanpcertdb.c. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196581 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-15 20:39:26 +00:00
nelson%bolyard.com
76350d6dda Remove files nsres.h and nsres.c from NSS_3_11_BRANCH. Bug 336198. r=wtchang
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196453 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-13 02:58:28 +00:00
alexei.volkov.bugs%sun.com
aa81b41d20 Patch contributed by timeless@bemail.org
[Bug 336992] crash [@ pk11_DoKeys] "arg" Pointer dereferenced before NULL check. r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196447 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-13 00:46:51 +00:00
alexei.volkov.bugs%sun.com
472ca89e76 Patch contributed by timeless@bemail.org
[Bug 336972] OOM crash [@ PK11_ImportDERPrivateKeyInfoAndReturnKey] "pki" Pointer allocated by PORT_NewArena dereferenced without NULL check. r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196446 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-13 00:41:25 +00:00
nelson%bolyard.com
0453f079a6 Remove files nsres.h and nsres.c from manifest.mn. Bug 336198. r=wtchang
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196445 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-13 00:38:59 +00:00
alexei.volkov.bugs%sun.com
8db4bb468c Patch contributed by timeless@bemail.org
[Bug 336466] oom crash [@ CERT_DecodeAuthKeyID]. r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196444 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-13 00:33:14 +00:00
julien.pierre.bugs%sun.com
f87d0918d4 Fix for bug 336477. Memory leak in CERT_UncacheCRL . r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196442 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-13 00:27:53 +00:00
alexei.volkov.bugs%sun.com
4d8cd33db1 Patch contributed by jonsmirl@yahoo.com
[Bug 336935] Coverity 172, dead code in mozilla/security/nss/lib/softoken/keydb.c. r=nelson, r=alexei.volkov.bugs


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196441 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-13 00:27:22 +00:00
alexei.volkov.bugs%sun.com
7670d830a7 Patch contributed by jonsmirl@yahoo.com
[Bug 336932] Coverity 163, dead code in mozilla/security/nss/lib/ssl/ssl3con.c. r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196440 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-13 00:15:43 +00:00
alexei.volkov.bugs%sun.com
74947f87d0 Patch contributed by timeless@bemail.org
[Bug 336481] oom crash [@ crmf_copy_cert_req_msg]


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196439 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-13 00:03:40 +00:00
nelson%bolyard.com
aa712074c5 Bug 337083. Remove dead code at label loser in function dbs_readBlob
Patch by Jon Smirl <jonsmirl@yahoo.com>, r=wtchang.  Coverity bug


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196438 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-12 23:59:32 +00:00
wtchang%redhat.com
a9d813d82b Bugzilla Bug 336521: we should search the build tree (${DIST}/${OBJDIR})
before /bin and /usr/bin. r=slavomir.katuscak
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196416 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-12 20:52:23 +00:00
wtchang%redhat.com
3541c3764d Bugzilla Bug 336934: removed ununsed variable ck_id. The patch is
contributed by Jon Smirl <jonsmirl@yahoo.com>. r=nelsonb,wtc.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196413 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-12 20:43:23 +00:00
wtchang%redhat.com
71c19d14ae Bugzilla Bug 336937: removed a test that is guaranteed to be true. The
patch is contributed by Jon Smirl <jonsmirl@yahoo.com>. r=nelsonb,wtc.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196411 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-12 20:36:56 +00:00
wtchang%redhat.com
0b6611d1c8 Bugzilla bug 336938: removed a test that is guaranteed to be false. The
patch is contributed by Jon Smirl <jonsmirl@yahoo.com>. r=wtc.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196392 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-12 16:51:28 +00:00
wtchang%redhat.com
e52acf64f8 Bugzilla Bug 298506: Do not log the token name (so the declaration of
sftk_getDefTokName in pkcs11i.h and the previous change to sftk_SlotFromID
weren't necessary). Use Linux's audit subsystem if available. r=relyea.
Modified files: fipstokn.c pkcs11.c pkcs11i.h
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196279 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-10 21:48:52 +00:00
wtchang%redhat.com
218f91dfcd Bugzilla Bug 298522: implemented ECDSA power-up self-test. The patch was
written by Glen Beasley of Sun. r=wtc.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196164 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-08 18:34:04 +00:00
wtchang%redhat.com
a30490215b Bugzilla Bug 333925: worked around AES test failures of code compiled by
Forte 6 update 2 by using the old optimization flags used in NSS 3.10.
r=relyea.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196071 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-05 23:45:22 +00:00
wtchang%redhat.com
e53ddb3c5e Bug 334553: checked in the proper fix on the NSS_3_11_BRANCH.
Modified files: ecl/ecp_256.c mpi/mp_gf2m.c


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196066 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-05 23:21:25 +00:00
wtchang%redhat.com
6903d03420 Bugzilla Bug 334679: removed a duplicate line in ec_GF2m_validate_point.
r=douglas.stebila.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196062 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-05 23:11:14 +00:00
wtchang%redhat.com
e2ec72c45d Bugzilla Bug 298506: implemented FIPS 140-2 Security Level 2 audit
requirements. r=glen.beasley.
Modified Files:
 Tag: NSS_3_11_BRANCH
	fipstokn.c pkcs11.c pkcs11c.c pkcs11i.h softoken.h softoknt.h


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196044 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-05 20:35:37 +00:00
julien.pierre.bugs%sun.com
6d4a7f607f Fix for bug 336335 . Plug leak of a temporary bignum in modular exponentiation . r=wtchang
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@196003 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-05 01:22:59 +00:00
julien.pierre.bugs%sun.com
8d9ca75e6f Fix for bug 336335 - memory leaks in ECC code. r=wtchang
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195948 18797224-902f-48f8-a5cc-f745e15eee43
2006-05-04 01:06:51 +00:00
rrelyea%redhat.com
8b8115c68a NSS 3.11 branch is now 3.11.2.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195663 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-28 18:21:08 +00:00
rrelyea%redhat.com
25cff6fcc8 bug 335748 Mozilla ECC checkin
r=wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195630 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-28 03:36:22 +00:00
rrelyea%redhat.com
ffe498968b bug 35748 Mozilla ECC checkin
r=wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195629 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-28 03:35:33 +00:00
christophe.ravel.bugs%sun.com
a9eb98a7f2 [Bug 334843] Add rpath for HP-UX on pa-risc
r+ neil.williams.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195610 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-27 23:37:26 +00:00
alexei.volkov.bugs%sun.com
28e4dcc83d [Bug 334274] double free in CRMF_EncryptedKeyGetEncryptedValue. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195598 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-27 22:09:28 +00:00
alexei.volkov.bugs%sun.com
f7bbb0ebbb [Bug 334326] DecodeV4DBCertEntry: Variable "(entry)->nickname" tracked as NULL was passed to a function that dereferences it. r=rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195582 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-27 18:48:03 +00:00
alexei.volkov.bugs%sun.com
d5cdbc2a16 [Bug 334454] Variable "(key)->pkcs11Slot" tracked as NULL was passed to a function that dereferences it. [@ SECKEY_CopyPrivateKey - SSL_ConfigSecureServer]. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195455 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-26 19:41:30 +00:00
alexei.volkov.bugs%sun.com
a22eddb3b6 [Bug 333389] sftk_NewAttribute should not crash when so is NULL [@ sftk_NewAttribute]. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195453 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-26 19:19:07 +00:00
alexei.volkov.bugs%sun.com
48d55fb395 [Bug 334522] pk12util crash in SEC_PKCS12DecoderValidateBags. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195430 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-26 07:00:54 +00:00
alexei.volkov.bugs%sun.com
79f6e824f6 Attachment #219081 for bug #334057: 160 and 192 bit curves fail on AMD64 Red Hat builds. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195428 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-26 06:44:11 +00:00
nelson%bolyard.com
b10f4a9593 Don't compute excessive key material for SSL3/TLS. Bug 274512.
r=julien.pierre, wtchang


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195341 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-25 06:33:04 +00:00
nelson%bolyard.com
dbd9ffca99 Backout the last change, undoing the fix for bug 320336 and bug 333405.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195336 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-25 04:39:24 +00:00
alexei.volkov.bugs%sun.com
220033ec3c [Bug 334277] double free in [@ sftk_FreeAttribute - sftk_DeleteAttributeType]. r=relyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195326 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-25 02:34:01 +00:00
alexei.volkov.bugs%sun.com
a006384baf [Bug 334276] double free in [@ SECKEY_CopyPublicKey]. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195325 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-25 02:23:52 +00:00
nelson%bolyard.com
95fa56ccf2 Bug 323570. Make dbck work with softoken. r=rrelyea. Backported from trunk.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195324 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-25 02:22:27 +00:00
nelson%bolyard.com
21e6751d33 Backport fix for bug 326751 to branch. patch by wtchang, r=rrelyea.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195322 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-25 01:59:42 +00:00
wtchang%redhat.com
20dd34bedf Bugzilla bug 335275: backed out this change until we have fixed JSS to
compile with this change.
Modified files: Linux.mk SunOS5.mk
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195318 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-25 01:32:16 +00:00
wtchang%redhat.com
e6d0b87108 Bugzilla Bug 320336: SECITEM_AllocItem should return a NULL pointer if the
allocation of its 'data' buffer fails. r=nelson.  This checkin fixed bug
333405 as a byproduct.
Modified files: secitem.c secitem.h
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195309 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-24 23:48:05 +00:00
nelson%bolyard.com
a6af12fa5e Remove call to printf from ecp_224.c. r=wtchang. Bug 334448.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195298 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-24 21:29:52 +00:00
wtchang%redhat.com
de9d11fef9 Bugzilla bug 335275: compile with the GCC flag
-Werror-implicit-function-declaration. r=nelsonb.
Modified files: Linux.mk SunOS5.mk
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195294 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-24 20:49:03 +00:00
kaie%kuix.de
2f5ea2ef57 bug 335021, SEC_QuickDERDecodeItem unable to decode smime_encryptionkeypref_template
Hotfix for 3.11 branch until a better fix becomes available.
r=rrelyea/nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195274 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-24 18:52:08 +00:00
nelson%bolyard.com
2af4e22303 Remove emulate.c on branch, since it is no longer being used.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195244 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-24 07:09:24 +00:00
nelson%bolyard.com
1fc8af12e9 Alphabetize external symbols for NSS 3.11.1.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195243 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-24 06:41:55 +00:00
nelson%bolyard.com
ad1040a8ec Sync tests on NSS_3_11_BRANCH with trunk, primarily for ECC tests.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195230 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-24 05:01:57 +00:00
nelson%bolyard.com
1b9d59f1e0 Backport fixes for bug 332348 from trunk to NSS_3_11_BRANCH.
Patch by nelson, r=julien.  Patch by Julien, r=wtchang


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195229 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-24 04:58:06 +00:00
nelson%bolyard.com
93cead24a1 Backport fixes for bug 332348 and bug 333559 from trunk to NSS_3_11_BRANCH.
r=julien.pierre,rrelyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195228 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-24 04:52:59 +00:00
nelson%bolyard.com
d6d3326d32 Backport fix for bug from trunk to NSS_3_11_BRANCH.
Patch by Alexei Volkov, r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195227 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-24 04:45:55 +00:00
nelson%bolyard.com
e2e28e6a06 Backport fix for bug 325307 from trunk to NSS_3_11_1_BRANCH.
r=julien.pierre,wtchang


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195226 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-24 04:41:55 +00:00
nelson%bolyard.com
b785b4b24e Backport fix for bug 277334 from trunk to NSS_3_11_BRANCH. r=nelson.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195225 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-24 04:33:25 +00:00
nelson%bolyard.com
d8987ac65e Clean up Makefiles for command-line tools. Bug 319495.
Patch by Julien.Pierre, backported from trunk. r=nelson.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195223 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-24 04:22:31 +00:00
nelson%bolyard.com
dd9a55991c Sync dbck on the NSS_3_11_BRANCH with the trunk.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195222 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-24 04:15:27 +00:00
nelson%bolyard.com
bb51b8e1fe Display ECC cipher suites and TLS hello extensions. Bugs 334314 & 333600.
r=alexei.volkov


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195220 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-24 04:10:57 +00:00
nelson%bolyard.com
c14b7add9e Backport fix for bug 326403 to NSS_3_11_BRANCH.
Change name of softoken manufacturer to Mozilla.
r=rrelyea,julien.pierre.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195181 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-23 04:54:14 +00:00
nelson%bolyard.com
673ac1cb00 Sync the NSS_3_11_BRANCH of lib/ssl with the trunk.
Backport numerous bug fixes and enhancements, for the NSS 3.11.1 release.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195180 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-23 03:05:42 +00:00
julien.pierre.bugs%sun.com
140ca2fa86 Fix red tree on Windows.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195145 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-22 05:19:47 +00:00
alexei.volkov.bugs%sun.com
f5bad0cdfa [Bug 334183] Double free on error because CERT_FindCertIssuer unexpectedly calls CERT_DestroyCertificate. r=alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195138 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-22 02:09:31 +00:00
julien.pierre.bugs%sun.com
5d2f748e42 Fix for bug 331413 . replace signal with sigaction; fix logging. r=wtchang
Bugzilla Bug 331413: assert that the worker threads empty the jobQ before
they terminate.  Fix a socket leak when the SSL_ImportFD call in
handle_connection fails. r=nelson.bolyard.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195137 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-22 01:37:36 +00:00
alexei.volkov.bugs%sun.com
d332e0c692 Patch contributed by timeless@bemail.org
[Bug 334449] oom Crash in crmf_template_copy_secalg. r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195135 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-22 01:26:00 +00:00
alexei.volkov.bugs%sun.com
a5507aa2d1 Patch contributed by timeless@bemail.org
[Bug 334436] nsslowcert_UpdateSubjectEmailAddr doesn't consistently use emailAddrs as a guard of nemailAddrs guarding emailAddrs[0]. r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195134 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-22 01:19:48 +00:00
alexei.volkov.bugs%sun.com
27e3de5bb8 Patch contributed by timeless@bemail.org
[Bug 334328] nsspkcs5_PKCS12PBE: Variable "A" tracked as NULL was dereferenced. r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195133 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-22 01:13:15 +00:00
alexei.volkov.bugs%sun.com
e861a3501f [Bug 334275] double free in [@ PK11_ListPublicKeysInSlot]. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195132 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-22 01:08:17 +00:00
alexei.volkov.bugs%sun.com
d889c1630a [Bug 334273] double free in SECKEY_DecodeDERSubjectPublicKeyInfo. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195131 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-22 01:03:22 +00:00
alexei.volkov.bugs%sun.com
5de27d9d1e [Bug 334240] double free in nsslowkey_ConvertToPublicKey if SECITEM_CopyItem or SECITEM_CopyItem fail. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195130 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-22 00:59:18 +00:00
alexei.volkov.bugs%sun.com
2ddf8032b0 [Bug 334236] double free in PK11_ListPrivKeysInSlot if keys allocation fails. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195129 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-22 00:55:29 +00:00
wtchang%redhat.com
a4efbec7c2 Bugzilla Bug 334553: fixed the comments because mp_digit is actually 64-bit
(unsigned long or unsigned long long). r=nelson.
Bugzilla Bug 333932: fixed Solaris SPARC GCC build failures.
r=christophe.ravel
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195127 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-22 00:17:34 +00:00
alexei.volkov.bugs%sun.com
a26717141a [Bug 334234] PK11_NewSlotInfo returns freed objects if lock allocations fail. r=
nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195121 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-21 23:30:31 +00:00
wtchang%redhat.com
6e13a97c60 Bugzilla Bug 334533: in getPQseed we always set the most significant bit of
SEED to 1 to make NIST CMVP's PQG parameter validation tool happy. In
PQG_ParamGenSeedLen we require the length of SEED be at least 20 bytes.
r=nelson.
Bugzilla Bug 326754: checked the change back in.  We failed the NIST DSA
PQGGen test for some other reason (bug 334533 above).
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195082 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-21 17:52:09 +00:00
wtchang%redhat.com
54cd0450d5 Bugzilla Bug 298522: changed RSA modulus size to 1024 bits and added known
answer tests for RSA SHA1, SHA256, SHA384, and SHA512 signatures.  The
patch is written by Glen Beasley. r=wtc.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195075 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-21 17:16:15 +00:00
wtchang%redhat.com
eaf18ec359 Bugzilla Bug 236245: Use a stack buffer for ec_params.data in
ssl3_SendECDHServerKeyExchange. r=nelson.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@195066 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-21 16:23:50 +00:00
alexei.volkov.bugs%sun.com
f5082e9eeb Patch contributed by timeless@bemail.org
[Bug 334459] Variable "cipherName" tracked as NULL was passed to a
 function that dereferences it. [@ PORT_Strdup - SSL_SecurityStatus]. r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194743 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-20 00:22:58 +00:00
alexei.volkov.bugs%sun.com
c80960174f Patch contributed by timeless@bemail.org
[Bug 334446] oom Crash in nssCKFWFindObjects_Create. r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194741 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-20 00:03:51 +00:00
alexei.volkov.bugs%sun.com
a906865523 Patch contributed by timeless@bemail.org
[Bug 334443] oom Crash in nssCKFWSession_Create. r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194738 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-19 23:50:43 +00:00
alexei.volkov.bugs%sun.com
2190a93ae2 Patch contributed by timeless@bemail.org
[Bug 334438] oom Crash in ReadDBCertEntry. r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194736 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-19 23:43:32 +00:00
alexei.volkov.bugs%sun.com
a74ad090bb Patch contributed by timeless@bemail.org
[Bug 334442] Incorrect use of realloc oom Crash in secmod_ReadPermDB;r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194729 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-19 22:55:24 +00:00
alexei.volkov.bugs%sun.com
a2365a725a Patch contributed by nelson@bolyard.com.
[Bug 334327] pk11_CreateNewContextInSlot: Variable "(context)->key" tracked as NULL was passed to a function that dereferences it. r=alexei


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194728 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-19 22:39:18 +00:00
wtchang%redhat.com
9c71611ef0 Bugzilla bug 334553: use the ULL suffix with unsigned long long constants
on HP-UX because the HP C compiler truncates integer constants without the
ULL suffix to 32 bits. r=douglas.stebila.
 Tag: NSS_3_11_BRANCH
	ecl/ecp_256.c mpi/mp_gf2m.c


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194724 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-19 22:23:42 +00:00
julien.pierre.bugs%sun.com
5d0f111a7b Fix for bug 331793 . Make shlibsign run from OBJDIR directory. r=nelson . Wrap long lines to make this file consistent with tip.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194646 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-19 00:46:06 +00:00
julien.pierre.bugs%sun.com
ad4606af90 Fix for bug 331413. Don't set SO_LINGER in the Win95 build to workaround NSPR bug 332348. r=wtchang
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194640 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-18 22:57:10 +00:00
wtchang%redhat.com
82796e9901 Bugzilla Bug 333917: the non-x86 code in at least the DES_CBCEn and
DES_EDE3CBCEn functions violates ANSI C's aliasing rules.  So we compile
this file with strict aliasing rules turned off. r=nelsonb.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194610 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-18 17:37:32 +00:00
nelson%bolyard.com
8649abfe32 Don't add 3 to the number of validity months. Bug 333679. n=neil.williams
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194468 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-15 19:45:37 +00:00
julien.pierre.bugs%sun.com
50e06ad830 Fix for bug 262375 . Add clobber_dbm and clobber_nspr targets, as well as nss_clean_all . r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194438 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-14 22:48:31 +00:00
wtchang%redhat.com
9206e7c4c1 Bugzilla Bug 330114: corrected the checks for the PKCS #1 v1.5 padding
string and the length of the data (hash). r=nelsonb,relyea.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194350 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-13 22:15:46 +00:00
nelson%bolyard.com
f3957c80e7 Implement generic support for TLS Hello Extensions. Bug 226271. r=vipul
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194307 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-13 10:30:04 +00:00
nelson%bolyard.com
abc53c6d23 Don't negotiate an ECDH_RSA cipher suite when the server's only ECDH cert
has an ECDSA signature.  bug 332350. r=vipul.gupta,julien.pierre


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194306 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-13 09:58:14 +00:00
nelson%bolyard.com
2d4e9124ed WORKAROUND: disable all the ECDH_RSA cipher suites tests, since all those
tests require a cert with an EC public key and an RSA signature, and the
test scripts do not presently generate such a cert.
This workaround can be backed out when the real fix is available.
Bug 332222. r=neil.williams


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194305 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-13 09:53:29 +00:00
nelson%bolyard.com
e13c92222f Eliminate duplicated header files in cmd/SSLsample. Bug 332633.
r=julien.pierre
Modified Files: SSLsample/client.mn SSLsample/server.mn lib/manifest.mn
Removed Files:  SSLsample/NSPRerrs.h SSLsample/SECerrs.h SSLsample/SSLerrs.h


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194299 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-13 07:56:34 +00:00
nelson%bolyard.com
2e2cb277e2 Define alerts and error codes for TLS Hello extensions. Bug 226271.
r=julien.pierre


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194298 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-13 07:41:16 +00:00
nelson%bolyard.com
5562d5b0a4 Implement new API for registering and deregistering shutdown callback functions.
Patch by Bob Relyea and Nelson Bolyard. r=rrelyea,nelson  Bug 326482.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194297 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-13 07:27:57 +00:00
alexei.volkov.bugs%sun.com
dc3de6e11b [Bug 324878] crlutil -L outputs false CRL names; r=julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194273 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-12 22:47:47 +00:00
alexei.volkov.bugs%sun.com
379602e90b [Bug 332272] add core detection functionality to all.sh; r=nelson, r=julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194267 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-12 22:30:32 +00:00
julien.pierre.bugs%sun.com
f127bfc11b Fix for bug 315793 . shlibsign incorrectly runs from source directory. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194256 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-12 21:01:57 +00:00
julien.pierre.bugs%sun.com
aeb6e56068 Fix for 333657 . Increase maximum RSA key size to 8192 bits in freebl. r=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194210 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-12 05:39:01 +00:00
julien.pierre.bugs%sun.com
10584a0077 Fix for bug 331164 . Initialize store object early to fix a race condition. r=nelson,rrelyea .
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@194084 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-11 01:40:42 +00:00
nelson%bolyard.com
b99d2d2c35 Bug 333090: CKM_DH_PKCS_KEY_PAIR_GEN always fails. r=nelson, sr=rrelyea
Patch contributed by Andreas.Sterbenz@sun.com


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193922 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-08 06:24:17 +00:00
rrelyea%redhat.com
5cdef79ed8 bug 309701 Softtoken C_CreateObject() should not require
CKA_NETSCAPE_DB attribute to be present

r=alexei
r=julien


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193903 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-08 01:52:16 +00:00
wtchang%redhat.com
db79f41f6b Bug 236613: change to MPL/LGPL/GPL tri-license.
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193845 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-07 22:41:03 +00:00
wtchang%redhat.com
8cecac6e19 Bug 324448. Convert mpi_x86.asm to mpi_x86_asm.c for Win32 built with MSVC.
Patch contributed by Benjamin Smedberg <benjamin@smedbergs.us>
r=julien.pierre sr=nelson@bolyard.com
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193844 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-07 22:28:29 +00:00
julien.pierre.bugs%sun.com
942d73ebc0 Fix for bug 315798 . run bltest and rsaperf from test directory. r=alexei,nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193744 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-06 21:50:42 +00:00
kaie%kuix.de
287a55e5f6 bug 331648, signed/unsigned bug submitting CRMF cert requests
r=rrelyea, sr=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193685 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-06 12:34:55 +00:00
nelson%bolyard.com
3178cbc58a eliminate unnecessary diffs between trunk and branch version of patch for
Bug 238051.  r=alexei,julien,wtchang.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193658 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-06 04:29:29 +00:00
nelson%bolyard.com
28890674db Always allocate the sieve from the heap. Bug 310145. r=wtchang,neil.williams
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193657 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-06 04:17:10 +00:00
nelson%bolyard.com
494199a17a Fix shell script error that caused undetected QA failures. Bug 311931.
PAtch contributed by Jason Reid <jason.m.reid@sun.com>
r=nelson.bolyard,alexei.volkov


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193614 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-05 19:40:57 +00:00
wtchang%redhat.com
ea1421e2f5 25683 EC param parsing error not propagated correctly
r=andreas.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193533 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-04 18:44:18 +00:00
glen.beasley%sun.com
ed126664f8 David Baron fix for valgrind report of UMR r=wtchang sr=Nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193475 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-04 01:05:53 +00:00
nkwan%redhat.com
164130e49c backported this fix to NSS_3_11_BRANCH - bugzilla #332381
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193463 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-04 00:10:05 +00:00
kaie%kuix.de
719c1b5295 Undoing previous checkin,
adding back changes between revision 1.21 and 1.21.2.1


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193432 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-03 20:16:30 +00:00
kaie%kuix.de
bbbcb1dcf3 Temporarily backing out differences between revision 1.21 and 1.21.2.1
The purpose is to produce a CVS revision of this file,
which contains the code from revision 1.21.2.2
but not from revision 1.21.2.1


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193431 18797224-902f-48f8-a5cc-f745e15eee43
2006-04-03 20:15:40 +00:00
rrelyea%redhat.com
7ab40da668 Bug 321350 Implement optimized code for NIST Suite B elliptic curves
r=douglas r=vipul


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193287 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-31 00:26:49 +00:00
rrelyea%redhat.com
f782e682e5 From bug 331279
patch: Free ECDHE Ephemeral key. Fixes server-side leak.
r=julien r=alexei


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193281 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-30 21:12:53 +00:00
alexei.volkov.bugs%sun.com
3a44b1654f 331515: selfserv Bus error on 3DES ciphersuites; r=julien, sr=nelson
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193249 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-30 06:25:13 +00:00
julien.pierre.bugs%sun.com
5aba5676a3 Fix for 330068 . Be more verbose in strsclnt error cases
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193225 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-29 22:36:42 +00:00
julien.pierre.bugs%sun.com
f69a753dc7 Fix for bug 330068 . strsclnt fails without any visible error. Increment counter atomically. r=nelson,alexei
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193208 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-29 20:49:07 +00:00
julien.pierre.bugs%sun.com
6d1660a9bd Partial fix for bug 331413 . Allow selfserv to be tested for reference leaks in debug builds on Unix . r=nelson,rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193207 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-29 20:46:19 +00:00
glen.beasley%sun.com
815511577c 318970 wtc fix for RSA fipstest using RSA_HashSign r=neilW sr= brelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@193000 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-25 23:48:07 +00:00
rrelyea%redhat.com
efe2bf77ab Bug 238051 Enable SSL session reuse for ECC cipher suites
r=nelson r=thomas


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@192804 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-22 20:44:25 +00:00
rrelyea%redhat.com
6d821b55b2 Bug 238051 Enable SSL session reuse for ECC cipher suites
r=nelson r=thomas


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@192801 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-22 19:53:21 +00:00
rrelyea%redhat.com
a050d34d57 323817 Truncation of hashes for ECDSA should be done at bit level, not octet level
r=vipul r=douglas


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@192797 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-22 19:04:16 +00:00
rrelyea%redhat.com
d93dcbe4e5 Bugzilla Bug 326503 producing a ProofOfPossession signature on a EC CRMF fails
Use SEC_GetSignatureAlgorithmOidTag() to map to the signature oid.
r=wtc r=kengert


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@192706 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-21 18:00:24 +00:00
rrelyea%redhat.com
0f86b7e157 Bug 273637 3 locks in softoken have unsafe initialization
r=alexi r=julien


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@192675 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-21 02:33:33 +00:00
rrelyea%redhat.com
788637728d Bug 329072 client sometimes fails to authenticate despite having cert
r=nelson r=julien


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@192575 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-18 01:29:16 +00:00
rrelyea%redhat.com
c0a1860e78 Bug 329058 mpmontg.c doesn't compile when MP_CHAR_STORE_SLOW is defined
r=wtc r=nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@192480 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-16 16:37:34 +00:00
rrelyea%redhat.com
58eba55eab Bug 320187 NSC_WrapKey called with null output returns short length
r=nelson r=wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@192436 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-15 19:37:48 +00:00
alexei.volkov.bugs%sun.com
eb97d54cb5 [Bug 329002] crash/assertion failure on shutdown after installing ECC
cert. r+ rrelyea,nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191957 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-08 05:17:23 +00:00
christophe.ravel.bugs%sun.com
b81b80ba35 Bugzilla 324887: merge ECC and non-ECC QA test scripts.
Add return code and error message for ssl_stress and ssl_cov.
r=vipul, sr=nelson.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191952 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-08 00:51:20 +00:00
wtchang%redhat.com
f35761df0f Bugzilla Bug 329575: ECPoint_mul should multiply a point by the group order
faithfully because this operation is required by the public key validation
algorithm.  r=douglas.stebila,vipul.gupta.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191947 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-08 00:22:01 +00:00
wtchang%redhat.com
3aaad9acb8 Bugzilla Bug 320578: added a new function ec_GenerateRandomPrivateKey to
generate a random private key without bias using the algorithm of FIPS
186-2 Change Notice 1, and use it to generate EC private key d and ECDSA
ephemeral private key k.  The patch is contributed by Douglas Stebila
<douglas@stebila.ca> and improved by me. r=douglas.stebila,vipul.gupta.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191861 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-06 23:56:19 +00:00
wtchang%redhat.com
33aa1aa9db Bugzilla bug 324887: minor tweaks to match the trunk (rev. 1.7) exactly.
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191755 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-04 02:48:09 +00:00
christophe.ravel.bugs%sun.com
8f5c129daa Bugzilla Bug 324887: merged ECC and non-ECC QA test scripts and removed
ECC QA test scripts. The patch is written by Vipul Gupta and Christophe
Ravel of Sun. r=wtc,nelsonb,jpierre
Includes last fix for sslstress.txt with comment lines.
Tested on NSS_3_11_BRANCH with Solaris.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191753 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-04 01:35:52 +00:00
nelson%bolyard.com
68336a66c2 Fix standalone mpi Makefile to build on OS/X. Bug 327405.
Patch contributed by Douglas Stebila <douglas@stebila.ca>


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191666 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-03 04:21:56 +00:00
nelson%bolyard.com
e44cc2d656 Bug 327677. Fix cert object reference leak. r=julien.pierre,nelson
Patch contributed by Alexei Volkov <alexei.volkov.bugs@sun.com>


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191662 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-03 04:03:39 +00:00
wtchang%redhat.com
7d3faad8b9 Bug 236613: change to MPL/LGPL/GPL tri-license.
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191622 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-02 22:45:14 +00:00
wtchang%redhat.com
f068aeada8 Bugzilla Bug 320589: fixed PK11_SignatureLen to return the exact length of
ECDSA signatures.  Backed out a temporary workaround in
ECDSA_SignDigestWithSeed.  Made other changes related to signature lengths.
r=relyea,nelson.bolyard.
Modified Files:
 Tag: NSS_3_11_BRANCH
        cryptohi/keyhi.h cryptohi/seckey.c cryptohi/secsign.c
        freebl/ec.c pk11wrap/pk11obj.c pk11wrap/pk11pub.h
        ssl/ssl3con.c


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191543 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-02 00:12:28 +00:00
rrelyea%redhat.com
f42af69e81 Bugzilla Bug 326482 NSS ECC performance problems.
Patch by Nelson, r=relyea., r=wtchang

Save the public key when we create the keypair so we can use it later.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191527 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-01 21:42:56 +00:00
rrelyea%redhat.com
0575d1d988 revision 1.76
date: 2006/03/01 16:12:22;  author: rrelyea%redhat.com;  state: Exp;  lines: +15
 -8


bug 326482 Implement the derive sensitive only for those derivation functions th
at require it.

fixes a performance problem with ECDH.

r=wtchang, nelson.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191495 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-01 16:21:03 +00:00
nelson%bolyard.com
5c5f631632 Bug 327405. Correct EC keypair Generation. r=vipul.gupta,nelson.bolyard
Patch contributed by Douglas Stebila <douglas@stebila.ca>


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191468 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-01 08:11:39 +00:00
nelson%bolyard.com
874eef6a14 Bug 328262. Increment ssl3 statistics counters atomicly. r=wtchang,julien.pierre
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191464 18797224-902f-48f8-a5cc-f745e15eee43
2006-03-01 05:49:27 +00:00
rrelyea%redhat.com
1475883d98 Bugzilla Bug 326482 NSS ECC performance problems.
r=nelsonb, wtc
Fix bug where ECC keys were not being copied on server startup


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191448 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-28 23:51:34 +00:00
wtchang%redhat.com
e08f0ae87f Bugzilla Bug 327978: removed obsolete files, superseded by the ecl
directory.  r=douglas.stebila.
Removed files: GF2m_ecl.c GF2m_ecl.h GFp_ecl.c GFp_ecl.h
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191447 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-28 23:45:23 +00:00
wtchang%redhat.com
6ed6d73b17 Bugzilla bug 327855: OS2 GCC build should define XP_OS2_EMX for NSPR
headers.  Removed a duplicate XP_OS2 definition. r=Peter Weilbacher and
Julien Pierre.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191427 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-28 21:37:48 +00:00
nelson%bolyard.com
9c67b66332 Bug 324103. Detect DB reference leaks at module shutdown time.
r=rrelyea,julien.pierre.  Back ported from Trunk.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191373 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-28 06:29:28 +00:00
nelson%bolyard.com
b557bedeac Bug 325683. EC param parsing error not propagated correctly.
Fix the cases that Andreas identified.  Patch by Andreas.Sterbenz@sun.com
r=Julien,wtchang,nelson


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191370 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-28 05:44:56 +00:00
nelson%bolyard.com
9c11e8dca5 Workaround bug 292285. Fix backported from trunk. r=Julien.Pierre
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191368 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-28 05:29:59 +00:00
nelson%bolyard.com
3b420c157b Bug 326690. Enable modutil to configure default slots for the
AES, SHA256 or SHA512 mechanisms.  r=rrelyea,julien.pierre


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191367 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-28 05:23:57 +00:00
nelson%bolyard.com
727a1794a6 Bug 327105. Reintroduce an old bug that prevents _DHE_ cipher suites
from being negotiated by NSS servers.  Necessary until the server side
of the _DHE_ cipher suites is fully implemented.  r=Julien,Wan-Teh,Vipul


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191364 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-28 04:20:23 +00:00
wtchang%redhat.com
a450ac150e Bugzilla Bug 320038: checked in a better fix that allows us to write
EC domain parameters as hex strings with leading 00's. r=douglas.stebila
sr=relyea.
Modified files: softoken/ecdecode.c freebl/ecl/ecl-curve.h
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191348 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-27 23:26:00 +00:00
nkwan%redhat.com
cc187ad519 bugzilla #328246 - check changes in to the tag NSS_3_11_BRANCH
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@191340 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-27 21:18:31 +00:00
wtchang%redhat.com
9df09ce308 Bugzilla bug 322578: support ppc<->x86 cross builds for Mac OS X. The
patch is contributed by Mark Mentovai <mark@moxienet.com>.  r=wtc.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@190898 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-22 22:27:51 +00:00
wtchang%redhat.com
979ca2f399 Bugzilla Bug 328228: fixed the typo "secp169k1". The patch is contributed
by jyri <jyri.virkki@sun.com>. r=wtc,vipul.gupta.
Modified files: bltest/blapitest.c certutil/certutil.c
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@190896 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-22 22:18:57 +00:00
wtchang%redhat.com
82c3a85c09 Bugzilla Bug 326754: the previous checkin made us fail the NIST DSA PQGGen
test for [mod = 768] only.  Backed out the more likely culprit.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@190780 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-22 02:09:15 +00:00
wtchang%redhat.com
9979c995a6 Renamed DSA_TEST_SEED_BYTES to PQG_TEST_SEED_BYTES.
Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@190475 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-18 02:36:33 +00:00
wtchang%redhat.com
894f6d75fe Bugzilla Bug 327384: fixed an off-by-one error in the size of the 'genenc'
array.  The patch is contributed by Andreas Sterbenz
<Andreas.Sterbenz@sun.com>. r=wtc,nelsonb
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@190305 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-16 22:36:06 +00:00
glen.beasley%sun.com
7621ff8ebc fix by wan-teh for RSA siggen tests r=glen
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@190191 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-16 01:52:51 +00:00
wtchang%redhat.com
22f61a73bb Bugzilla Bug 318967: use 160-bit SEED when generating DSA domain parameters
(PQG).  Removed unused keySizeIndex variables. Handle the return value and
result output parameter of PQG_VerifyParams separately. Pad H with leading
0's when printing. r=glen.beasley.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@190189 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-16 01:30:20 +00:00
julien.pierre.bugs%sun.com
fa54c4e12d Fix for bug 321765. Allow NSS to decode certs with unsupported critical extensions. r=wtchang,nelson,rrelyea.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@190166 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-16 00:14:20 +00:00
alexei.volkov.bugs%sun.com
ff1a2e4185 [Bug 326963] Interoperability test with apache/mod_ssl: tstclnt
produces: assertion failure: secmod_PrivateModuleCount == 0; r=nelson, sr=julien


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@190150 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-15 23:15:04 +00:00
wtchang%redhat.com
279dd69d99 Bugzilla Bug 318962: fixed signed/unsigned comparison warnings by MSVC.
r=glen.beasley.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@190135 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-15 19:16:08 +00:00
wtchang%redhat.com
abe7d5ea89 Bugzilla Bug 318968: more ECDSA test cleanup. Do not zeroize when freezing
ECParams' arenas.  Use EC_CopyParams to copy ECParams to an EC public key
and allocate the public key's value from the same arena. r=glen.beasley.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@190132 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-15 19:09:22 +00:00
wtchang%redhat.com
df565a80b7 Bugzilla Bug 326754: fixed two minor bugs related to the h parameter in
PQG parameter generation. r=nelsonb,glen.beasley.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@189926 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-14 03:06:26 +00:00
wtchang%redhat.com
4bdee56a31 Bugzilla Bug 326144: need to zeroize a SECItem that contains a copy of the
secret key. r=relyea,jpierre.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@189924 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-14 02:56:57 +00:00
neil.williams%sun.com
64703260dd Bug 325657, Unset ECL_USE_FP freebl INT builds for Solaris SPARC
r=Nelson,Wan-Teh


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@189755 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-11 02:38:44 +00:00
glen.beasley%sun.com
4e652a288e 318970 RSA sigver test fix r=wan-teh
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@189723 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-10 23:13:09 +00:00
julien.pierre.bugs%sun.com
28f96aed9c Fix for 223242 . Don't ignore the SSL session timeout arguments to SSL_ConfigServerSessionIDCache and SSL_ConfigMPServerSIDCache. Patch from Nelson, r=julien . Backport to NSS_3_11_BRANCH
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@189564 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-10 19:34:16 +00:00
neil.williams%sun.com
93270aaef2 Bug 325682, rpath linker option added for Linux builds
r=Nelson, sr=Wan-Teh


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@189454 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-09 02:19:09 +00:00
julien.pierre.bugs%sun.com
50876b2b47 Fix for bug 326144 . softoken leaks in nsc_pbe_key_gen. r=nelson, rrelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@189064 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-07 00:44:42 +00:00
wtchang%redhat.com
cc64d87789 Bugzilla Bug 321865: added coreconf files for Solaris 11. The patch is
contributed by Alfred Peng <alfred.peng@sun.com>. r=wtc.
Added files: SunOS5.11.mk SunOS5.11_i86pc.mk
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@189018 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-06 18:29:19 +00:00
wtchang%redhat.com
796b839736 Bugzilla Bug 318967: fixed compiler warnings, most of which were char *
and unsigned char * mismatches. r=glen.beasley.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188917 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-04 06:45:41 +00:00
kaie%kuix.de
0b48af7586 Fix build bustage, change // comment to /* */
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188877 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-03 20:24:21 +00:00
kaie%kuix.de
638b9ae3e1 bug 152426, delegation of HTTP download for OCSP
r=julien.pierre, r=rrelyea


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188865 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-03 18:16:46 +00:00
nelsonb%netscape.com
adadb3c4f1 Allow CKM_ECDSA_SHA1 to be multipart. Bug 325494.
Patch contributed by Andreas Sterbenz <Andreas.Sterbenz@sun.com>


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188742 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-02 06:52:35 +00:00
alexei.volkov.bugs%sun.com
e22a646ee8 [Bug 325307] infinite loop in SECU_FindCrlIssuer. r=julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188734 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-02 02:45:02 +00:00
alexei.volkov.bugs%sun.com
ff3dba065f [Bug 325305] minor memory leak in CERT_FindCertByNameString. r=wtc
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188730 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-02 02:22:55 +00:00
wtchang%redhat.com
551a8a32ad Bugzilla Bug 318966: implemented the tests for the NIST RNG Validation
System.  r=glen.beasley.
Modified file: fipstest.c
Added file: rng.sh
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188700 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-01 21:30:32 +00:00
wtchang%redhat.com
7f1d35b41a Bugzilla Bug 318966: added two RNG functions FIPS186Change_GenerateX and
FIPS186Change_ReduceModQForDSA to blapi.h for the NIST RNG Validation
System. r=relyea,nelsonb.
Modified files: blapi.h ldvector.c loader.c loader.h prng_fips1861.c
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188698 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-01 21:24:45 +00:00
glen.beasley%sun.com
d4a26a95b7 318967 dsa.sh fix for NSS_3_11_BRANCH
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188692 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-01 20:22:22 +00:00
rrelyea%redhat.com
8def375cbf 1) Change the export encrypted private key function to ask the token the wrap
size rather than trying to figure it out ourselves.

2) Fix the soften to correctly return the size.


r=wtc, nelsonb


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188673 18797224-902f-48f8-a5cc-f745e15eee43
2006-02-01 17:02:38 +00:00
glen.beasley%sun.com
2307ce52f6 318970 RSA FIPS tests r=wan-teh sr=bobRelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188528 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-31 00:52:13 +00:00
rrelyea%redhat.com
c04e2b4be5 fix Remove C++ comment.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188524 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-31 00:28:16 +00:00
glen.beasley%sun.com
270ae039f4 318970 RSA FIPS Alg Tests r=wan-teh, sr=bRelyea
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188483 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-30 20:01:05 +00:00
wtchang%redhat.com
0fc7026f6f Bugzilla Bug 236245: Updated NSS to "ECC Cipher Suites for TLS" draft 12
plus upcoming revisions.  The patch is contributed by Douglas Stebila
of Sun Labs <douglas@stebila.ca>. r=wtc.
Modified Files:
 Tag: NSS_3_11_BRANCH
	cmd/selfserv/selfserv.c cmd/strsclnt/strsclnt.c
	cmd/tstclnt/tstclnt.c cmd/vfyserv/vfyserv.c lib/ssl/ssl3con.c
	lib/ssl/ssl3ecc.c lib/ssl/ssl3prot.h lib/ssl/sslenum.c
	lib/ssl/sslimpl.h lib/ssl/sslinfo.c lib/ssl/sslproto.h
	lib/ssl/sslsock.c tests/ssl/ecssl.sh tests/ssl/ecsslauth.txt
	tests/ssl/ecsslcov.txt tests/ssl/ecsslstress.txt
	tests/ssl/ssl.sh


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188376 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-28 00:13:38 +00:00
glen.beasley%sun.com
ec8c877fb7 328967 DSA FIPS tests r=Wan-Teh
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188355 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-27 18:53:07 +00:00
wtchang%redhat.com
65a560d12a Bugzilla Bug 320589: temporary workaround for SEC_SignData ECDSA signature
generation bug introduced by the previous checkin.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188289 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-26 23:55:58 +00:00
nelsonb%netscape.com
566bf1efe8 Detect NULL server key pair pointer. Bug 321161. r=wtchang, sr=julien
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188146 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-25 07:07:50 +00:00
christophe.ravel.bugs%sun.com
7248b983a3 Fix packaging following a change in nss.h (2 lines with NSS_VERSION): take the f
irst one.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188053 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-23 17:45:47 +00:00
nelsonb%netscape.com
8c202b7c68 Remove unnecessary ISALIST test from sparc versions of freebl DSOs.
Bug 302658. r=jullien.pierre,wtchang


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@188024 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-23 00:39:33 +00:00
nelsonb%netscape.com
113a6961bf Plug leak of DB handle references in trust objects. Bug 324103.
r=rrelyea, sr=julien.pierre


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@187995 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-22 05:40:12 +00:00
rrelyea%redhat.com
c41e6b4b1b Bug 320583 NSS ECDSA can only sign SHA-1
r=nelson r=wtc.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@187980 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-21 19:01:35 +00:00
wtchang%redhat.com
ec0198740a Bugzilla Bug 323977: use the "mapfile" (ld version script) on FreeBSD.
Build the freebl shared libraries with the -Bsymbolic flag for GNU ld.
r=nelsonb.  Thanks to Glenn Randers-Pehrson <glennrp@imagemagick.org> for
reporting this bug and verifying these changes.
Modified files: coreconf/FreeBSD.mk nss/lib/freebl/Makefile
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@187949 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-21 02:36:12 +00:00
wtchang%redhat.com
374f7d525d Bugzilla Bug 320589: miscellaneous code cleanup: distinguish between the
length of the field size and the length of the base point order.  Report
better error codes.  In ECDSA_VerifyDigest, removed unnecessary local
variables and be lenient in the signature lengths we accept.
r=relyea,nelsonb
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@187943 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-21 02:15:33 +00:00
julien.pierre.bugs%sun.com
492414b660 Fix for bug 317856 . uninitialized variable correction. r=wtchang
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@187923 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-20 22:55:35 +00:00
julien.pierre.bugs%sun.com
4323e02329 Fix for 317856 . remove uninitialized variables. On 3.11 branch
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@187864 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-20 01:32:49 +00:00
nelsonb%netscape.com
fb1eb56971 Don't crash when makeing a cert8.db from a cert5.db.
Bug 320029. r=rrelyea,sr=julien.pierre.  On 3.11 branch.


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@187804 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-19 02:02:54 +00:00
wtchang%redhat.com
d4420ff1bf Bugzilla Bug 323379: need to set ADDON_PATH for libsoftokn3.so to load
libfreebl3.so as an add-on on BeOS.  Thanks to Doug Shelton
<doug@sheltonfamily.org>for reporting the bug and verifying the fix.
r=christophe.ravel.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@187769 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-18 20:59:07 +00:00
rrelyea%redhat.com
f9cf7226e2 NSS ECDSA can only sign SHA-1. but 320583
r=nelson, wtc. patch ammended per wtc comment. (fix SHA1(M) comment).


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@187696 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-17 00:35:25 +00:00
wtchang%redhat.com
cadccf7432 Bugzilla Bug 317858: the gcc compiler on Linux/ppc does not recognize the
-z defs linker flag, so we need to use the -Wl compiler flag to pass
-z defs to the linker.  r=christophe.ravel (see bug 323196 comment 18).
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@187605 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-13 22:41:03 +00:00
wtchang%redhat.com
7837b2e09a Bugzilla Bug 320497: indicate that we don't need an executable stack.
r=wolfgang.rosenauer,jpierre.
Modified files: arcfour-amd64-gas.s mpi/mpi_amd64_gas.s
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@187562 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-13 17:35:09 +00:00
wtchang%redhat.com
61b75ce469 Bugzilla Bug 323079: when libsoftoken and libssl load the freebl library,
first try without resolving symlinks.  If we fail to load the library and
the pathname is a symbolic link, resolve the symbolic link and try again.
r=jpierre. sr=relyea.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@187527 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-12 23:48:56 +00:00
christophe.ravel.bugs%sun.com
c445d7cbb7 Bugzilla Bug 323196: NSS 3.11 does not build on RHEL21
Modified files: Linux.mk Linux2.6.mk
r:julien.pierre.bugs
sr:wtc


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@187512 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-12 23:08:47 +00:00
wtchang%redhat.com
529bdec227 Bugzilla Bug 318968: fixed the build error with NSS_ENABLE_ECC unset.
Modified files: Makefile fipstest.c
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@187023 18797224-902f-48f8-a5cc-f745e15eee43
2006-01-05 21:45:24 +00:00
julien.pierre.bugs%sun.com
4d86fc1c65 Fix the build busted by checkin for bug 318968
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186513 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-23 03:15:58 +00:00
wtchang%redhat.com
546474d570 Bugzilla Bug 318968: added FIPS ECDSA algorithm test. r=glen.beasley.
Modified file: fipstest.c
Added file: ecdsa.sh
Bugzilla Bug 318962: combined a PORT_Realloc and a memset call into an
equivalent PORT_ZAlloc call.  r=glen.beasley.
Modified file: fipstest.c
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186459 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-22 22:27:48 +00:00
wtchang%redhat.com
00c54779d4 Bugzilla bug 318962: it is legal for PORT_Realloc(oldptr, NULL) to return
NULL, so that shouldn't be treated as a memory allocation failure.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186388 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-22 01:14:08 +00:00
glen.beasley%sun.com
aa43ba6e1c 318958 fixing c++/java comment to C
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186342 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-21 00:31:16 +00:00
wtchang%redhat.com
a82b12ac35 Bugzilla Bug 320047: mp_to_unsigned/signed/fixlen_octets copies nothing to
the buffer if the mp_int is zero. r=nelsonb,relyea.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186341 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-21 00:15:55 +00:00
glen.beasley%sun.com
9243d38b4f 318958 fixing Monte Carlo test r=Wan-Teh
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186340 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-21 00:13:52 +00:00
glen.beasley%sun.com
33fa854fc6 318962 buffer fix for SHA Monte Carlo tests r=wan-teh
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186323 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-20 18:20:50 +00:00
glen.beasley%sun.com
2237a9684b Remove C++ declaration of loop control variables r=NelsonB
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186284 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-19 19:22:34 +00:00
glen.beasley%sun.com
a5f90055ef adding tdea.sh
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186283 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-19 19:18:11 +00:00
glen.beasley%sun.com
287cec9cc3 adding hmac.sh
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186282 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-19 19:17:41 +00:00
glen.beasley%sun.com
a93ae60af9 adding sha.sh
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186281 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-19 19:16:20 +00:00
wtchang%redhat.com
94921c2c51 Bugzilla Bug 320038: ecl/ecl-curve.h: removed unnecessary leading zero byte
in the base point orders of curves K-233 and K-409.  ec.c: pad the private
key with leading zeros to the length of the base point order.
r=douglas.steblia,rrelyea.
Modified Files:
 Tag: NSS_3_11_BRANCH
	ec.c ecl/ecl-curve.h


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186273 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-19 17:38:47 +00:00
wtchang%redhat.com
e15a42cb32 Initialize mpi data using mpi macros, not static data bug 319252
r=douglas,wtc.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186196 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-17 00:31:54 +00:00
glen.beasley%sun.com
d3bccb9a6f adding hmac (318964) tdea (318958) sha (318962) FIPS140-2 tests r=wan-teh The initial check-in was on the tip
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186194 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-16 23:46:20 +00:00
wtchang%redhat.com
cc4dd190a7 Bugzilla Bug 319240: the value of ssl_V3_SUITES_IMPLEMENTED was off by 3
because it wasn't updated when we removed the three FORTEZZA cipher suites.
r=nelsonb.
 Tag: NSS_3_11_BRANCH


git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186081 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-14 22:17:37 +00:00
christophe.ravel.bugs%sun.com
fd6d36516b Current version is NSS 3.11.1 Beta.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@186073 18797224-902f-48f8-a5cc-f745e15eee43
2005-12-14 19:52:39 +00:00
(no author)
f580d5c3ee This commit was manufactured by cvs2svn to create branch 'NSS_3_11_BRANCH'.
git-svn-id: svn://10.0.0.236/branches/NSS_3_11_BRANCH@185175 18797224-902f-48f8-a5cc-f745e15eee43
2005-11-23 01:12:38 +00:00
1479 changed files with 620035 additions and 498 deletions

53
mozilla/dbm/Makefile.in Normal file
View File

@@ -0,0 +1,53 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1998
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
DEPTH = ..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
MODULE = dbm
DIRS = include src
ifdef ENABLE_TESTS
DIRS += tests
endif
include $(topsrcdir)/config/rules.mk

View File

@@ -0,0 +1,71 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1998
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
DEPTH = ../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
MODULE = dbm
EXPORTS = \
nsres.h \
cdefs.h \
mcom_db.h \
ncompat.h \
winfile.h \
$(NULL)
EXPORTS := $(addprefix $(srcdir)/, $(EXPORTS))
PRIVATE_EXPORTS = \
hsearch.h \
page.h \
extern.h \
ndbm.h \
queue.h \
hash.h \
mpool.h \
search.h \
$(NULL)
PRIVATE_EXPORTS := $(addprefix $(srcdir)/, $(PRIVATE_EXPORTS))
include $(topsrcdir)/config/rules.mk

View File

@@ -0,0 +1,77 @@
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1998
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
#//------------------------------------------------------------------------
#//
#// Makefile to build the cert library
#//
#//------------------------------------------------------------------------
!if "$(MOZ_BITS)" == "16"
!ifndef MOZ_DEBUG
OPTIMIZER=-Os -UDEBUG -DNDEBUG
!endif
!endif
#//------------------------------------------------------------------------
#//
#// Specify the depth of the current directory relative to the
#// root of NS
#//
#//------------------------------------------------------------------------
DEPTH= ..\..
!ifndef MAKE_OBJ_TYPE
MAKE_OBJ_TYPE=EXE
!endif
#//------------------------------------------------------------------------
#//
#// install headers
#//
#//------------------------------------------------------------------------
EXPORTS=nsres.h cdefs.h mcom_db.h ncompat.h winfile.h
#//------------------------------------------------------------------------
#//
#// Include the common makefile rules
#//
#//------------------------------------------------------------------------
include <$(DEPTH)/config/rules.mak>
CFLAGS = $(CFLAGS) -DMOZILLA_CLIENT

126
mozilla/dbm/include/cdefs.h Normal file
View File

@@ -0,0 +1,126 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/*
* Copyright (c) 1991, 1993
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Berkeley Software Design, Inc.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. ***REMOVED*** - see
* ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)cdefs.h 8.7 (Berkeley) 1/21/94
*/
#ifndef _CDEFS_H_
#define _CDEFS_H_
#if defined(__cplusplus)
#define __BEGIN_DECLS extern "C" {
#define __END_DECLS }
#else
#define __BEGIN_DECLS
#define __END_DECLS
#endif
/*
* The __CONCAT macro is used to concatenate parts of symbol names, e.g.
* with "#define OLD(foo) __CONCAT(old,foo)", OLD(foo) produces oldfoo.
* The __CONCAT macro is a bit tricky -- make sure you don't put spaces
* in between its arguments. __CONCAT can also concatenate double-quoted
* strings produced by the __STRING macro, but this only works with ANSI C.
*/
#if defined(__STDC__) || defined(__cplusplus) || defined(_WINDOWS) || defined(XP_OS2)
#define __P(protos) protos /* full-blown ANSI C */
#define __CONCAT(x,y) x ## y
#define __STRING(x) #x
/* On HP-UX 11.00, <sys/stdsyms.h> defines __const. */
#ifndef __const
#define __const const /* define reserved names to standard */
#endif /* __const */
#define __signed signed
#define __volatile volatile
#ifndef _WINDOWS
#if defined(__cplusplus)
#define __inline inline /* convert to C++ keyword */
#else
#if !defined(__GNUC__) && !defined(__MWERKS__)
#define __inline /* delete GCC keyword */
#endif /* !__GNUC__ */
#endif /* !__cplusplus */
#endif /* !_WINDOWS */
#else /* !(__STDC__ || __cplusplus) */
#define __P(protos) () /* traditional C preprocessor */
#define __CONCAT(x,y) x/**/y
#define __STRING(x) "x"
#ifndef __GNUC__
#define __const /* delete pseudo-ANSI C keywords */
#define __inline
#define __signed
#define __volatile
/*
* In non-ANSI C environments, new programs will want ANSI-only C keywords
* deleted from the program and old programs will want them left alone.
* When using a compiler other than gcc, programs using the ANSI C keywords
* const, inline etc. as normal identifiers should define -DNO_ANSI_KEYWORDS.
* When using "gcc -traditional", we assume that this is the intent; if
* __GNUC__ is defined but __STDC__ is not, we leave the new keywords alone.
*/
#ifndef NO_ANSI_KEYWORDS
#define const /* delete ANSI C keywords */
#define inline
#define signed
#define volatile
#endif
#endif /* !__GNUC__ */
#endif /* !(__STDC__ || __cplusplus) */
/*
* GCC1 and some versions of GCC2 declare dead (non-returning) and
* pure (no side effects) functions using "volatile" and "const";
* unfortunately, these then cause warnings under "-ansi -pedantic".
* GCC2 uses a new, peculiar __attribute__((attrs)) style. All of
* these work for GNU C++ (modulo a slight glitch in the C++ grammar
* in the distribution version of 2.5.5).
*/
#if !defined(__GNUC__) || __GNUC__ < 2 || __GNUC_MINOR__ < 5
#define __attribute__(x) /* delete __attribute__ if non-gcc or gcc1 */
#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
#define __dead __volatile
#define __pure __const
#endif
#endif
/* Delete pseudo-keywords wherever they are not available or needed. */
#ifndef __dead
#define __dead
#define __pure
#endif
#endif /* !_CDEFS_H_ */

View File

@@ -0,0 +1,65 @@
/*-
* Copyright (c) 1991, 1993, 1994
* The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)extern.h 8.4 (Berkeley) 6/16/94
*/
BUFHEAD *__add_ovflpage (HTAB *, BUFHEAD *);
int __addel (HTAB *, BUFHEAD *, const DBT *, const DBT *);
int __big_delete (HTAB *, BUFHEAD *);
int __big_insert (HTAB *, BUFHEAD *, const DBT *, const DBT *);
int __big_keydata (HTAB *, BUFHEAD *, DBT *, DBT *, int);
int __big_return (HTAB *, BUFHEAD *, int, DBT *, int);
int __big_split (HTAB *, BUFHEAD *, BUFHEAD *, BUFHEAD *,
uint32, uint32, SPLIT_RETURN *);
int __buf_free (HTAB *, int, int);
void __buf_init (HTAB *, int);
uint32 __call_hash (HTAB *, char *, size_t);
int __delpair (HTAB *, BUFHEAD *, int);
int __expand_table (HTAB *);
int __find_bigpair (HTAB *, BUFHEAD *, int, char *, int);
uint16 __find_last_page (HTAB *, BUFHEAD **);
void __free_ovflpage (HTAB *, BUFHEAD *);
BUFHEAD *__get_buf (HTAB *, uint32, BUFHEAD *, int);
int __get_page (HTAB *, char *, uint32, int, int, int);
int __ibitmap (HTAB *, int, int, int);
uint32 __log2 (uint32);
int __put_page (HTAB *, char *, uint32, int, int);
void __reclaim_buf (HTAB *, BUFHEAD *);
int __split_page (HTAB *, uint32, uint32);
/* Default hash routine. */
extern uint32 (*__default_hash) (const void *, size_t);
#ifdef HASH_STATISTICS
extern int hash_accesses, hash_collisions, hash_expansions, hash_overflows;
#endif

337
mozilla/dbm/include/hash.h Normal file
View File

@@ -0,0 +1,337 @@
/*-
* Copyright (c) 1990, 1993, 1994
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Margo Seltzer.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)hash.h 8.3 (Berkeley) 5/31/94
*/
/* Operations */
#include <stdio.h>
#include "mcom_db.h"
typedef enum {
HASH_GET, HASH_PUT, HASH_PUTNEW, HASH_DELETE, HASH_FIRST, HASH_NEXT
} ACTION;
/* Buffer Management structures */
typedef struct _bufhead BUFHEAD;
struct _bufhead {
BUFHEAD *prev; /* LRU links */
BUFHEAD *next; /* LRU links */
BUFHEAD *ovfl; /* Overflow page buffer header */
uint32 addr; /* Address of this page */
char *page; /* Actual page data */
char is_disk;
char flags;
#define BUF_MOD 0x0001
#define BUF_DISK 0x0002
#define BUF_BUCKET 0x0004
#define BUF_PIN 0x0008
};
#define IS_BUCKET(X) ((X) & BUF_BUCKET)
typedef BUFHEAD **SEGMENT;
typedef int DBFILE_PTR;
#define NO_FILE -1
#ifdef macintosh
#define DBFILE_OPEN(path, flag,mode) open((path), flag)
#define EXISTS(path)
#else
#define DBFILE_OPEN(path, flag,mode) open((path), (flag), (mode))
#endif
/* Hash Table Information */
typedef struct hashhdr { /* Disk resident portion */
int32 magic; /* Magic NO for hash tables */
int32 version; /* Version ID */
uint32 lorder; /* Byte Order */
int32 bsize; /* Bucket/Page Size */
int32 bshift; /* Bucket shift */
int32 dsize; /* Directory Size */
int32 ssize; /* Segment Size */
int32 sshift; /* Segment shift */
int32 ovfl_point; /* Where overflow pages are being
* allocated */
int32 last_freed; /* Last overflow page freed */
int32 max_bucket; /* ID of Maximum bucket in use */
int32 high_mask; /* Mask to modulo into entire table */
int32 low_mask; /* Mask to modulo into lower half of
* table */
int32 ffactor; /* Fill factor */
int32 nkeys; /* Number of keys in hash table */
int32 hdrpages; /* Size of table header */
uint32 h_charkey; /* value of hash(CHARKEY) */
#define NCACHED 32 /* number of bit maps and spare
* points */
int32 spares[NCACHED];/* spare pages for overflow */
uint16 bitmaps[NCACHED]; /* address of overflow page
* bitmaps */
} HASHHDR;
typedef struct htab { /* Memory resident data structure */
HASHHDR hdr; /* Header */
int nsegs; /* Number of allocated segments */
int exsegs; /* Number of extra allocated
* segments */
uint32 /* Hash function */
(*hash)(const void *, size_t);
int flags; /* Flag values */
DBFILE_PTR fp; /* File pointer */
char *filename;
char *tmp_buf; /* Temporary Buffer for BIG data */
char *tmp_key; /* Temporary Buffer for BIG keys */
BUFHEAD *cpage; /* Current page */
int cbucket; /* Current bucket */
int cndx; /* Index of next item on cpage */
int dbmerrno; /* Error Number -- for DBM
* compatability */
int new_file; /* Indicates if fd is backing store
* or no */
int save_file; /* Indicates whether we need to flush
* file at
* exit */
uint32 *mapp[NCACHED]; /* Pointers to page maps */
int nmaps; /* Initial number of bitmaps */
int nbufs; /* Number of buffers left to
* allocate */
BUFHEAD bufhead; /* Header of buffer lru list */
SEGMENT *dir; /* Hash Bucket directory */
off_t file_size; /* in bytes */
char is_temp; /* unlink file on close */
char updateEOF; /* force EOF update on flush */
} HTAB;
/*
* Constants
*/
#define DATABASE_CORRUPTED_ERROR -999 /* big ugly abort, delete database */
#define OLD_MAX_BSIZE 65536 /* 2^16 */
#define MAX_BSIZE 32l*1024l /* 2^15 */
#define MIN_BUFFERS 6
#define MINHDRSIZE 512
#define DEF_BUFSIZE 65536l /* 64 K */
#define DEF_BUCKET_SIZE 4096
#define DEF_BUCKET_SHIFT 12 /* log2(BUCKET) */
#define DEF_SEGSIZE 256
#define DEF_SEGSIZE_SHIFT 8 /* log2(SEGSIZE) */
#define DEF_DIRSIZE 256
#define DEF_FFACTOR 65536l
#define MIN_FFACTOR 4
#define SPLTMAX 8
#define CHARKEY "%$sniglet^&"
#define NUMKEY 1038583l
#define BYTE_SHIFT 3
#define INT_TO_BYTE 2
#define INT_BYTE_SHIFT 5
#define ALL_SET ((uint32)0xFFFFFFFF)
#define ALL_CLEAR 0
#define PTROF(X) ((ptrdiff_t)(X) == BUF_DISK ? 0 : (X))
#define ISDISK(X) ((X) ? ((ptrdiff_t)(X) == BUF_DISK ? BUF_DISK \
: (X)->is_disk) : 0)
#define BITS_PER_MAP 32
/* Given the address of the beginning of a big map, clear/set the nth bit */
#define CLRBIT(A, N) ((A)[(N)/BITS_PER_MAP] &= ~(1<<((N)%BITS_PER_MAP)))
#define SETBIT(A, N) ((A)[(N)/BITS_PER_MAP] |= (1<<((N)%BITS_PER_MAP)))
#define ISSET(A, N) ((A)[(N)/BITS_PER_MAP] & (1<<((N)%BITS_PER_MAP)))
/* Overflow management */
/*
* Overflow page numbers are allocated per split point. At each doubling of
* the table, we can allocate extra pages. So, an overflow page number has
* the top 5 bits indicate which split point and the lower 11 bits indicate
* which page at that split point is indicated (pages within split points are
* numberered starting with 1).
*/
#define SPLITSHIFT 11
#define SPLITMASK 0x7FF
#define SPLITNUM(N) (((uint32)(N)) >> SPLITSHIFT)
#define OPAGENUM(N) ((N) & SPLITMASK)
#define OADDR_OF(S,O) ((uint32)((uint32)(S) << SPLITSHIFT) + (O))
#define BUCKET_TO_PAGE(B) \
(B) + hashp->HDRPAGES + ((B) ? hashp->SPARES[__log2((uint32)((B)+1))-1] : 0)
#define OADDR_TO_PAGE(B) \
BUCKET_TO_PAGE ( (1 << SPLITNUM((B))) -1 ) + OPAGENUM((B));
/*
* page.h contains a detailed description of the page format.
*
* Normally, keys and data are accessed from offset tables in the top of
* each page which point to the beginning of the key and data. There are
* four flag values which may be stored in these offset tables which indicate
* the following:
*
*
* OVFLPAGE Rather than a key data pair, this pair contains
* the address of an overflow page. The format of
* the pair is:
* OVERFLOW_PAGE_NUMBER OVFLPAGE
*
* PARTIAL_KEY This must be the first key/data pair on a page
* and implies that page contains only a partial key.
* That is, the key is too big to fit on a single page
* so it starts on this page and continues on the next.
* The format of the page is:
* KEY_OFF PARTIAL_KEY OVFL_PAGENO OVFLPAGE
*
* KEY_OFF -- offset of the beginning of the key
* PARTIAL_KEY -- 1
* OVFL_PAGENO - page number of the next overflow page
* OVFLPAGE -- 0
*
* FULL_KEY This must be the first key/data pair on the page. It
* is used in two cases.
*
* Case 1:
* There is a complete key on the page but no data
* (because it wouldn't fit). The next page contains
* the data.
*
* Page format it:
* KEY_OFF FULL_KEY OVFL_PAGENO OVFL_PAGE
*
* KEY_OFF -- offset of the beginning of the key
* FULL_KEY -- 2
* OVFL_PAGENO - page number of the next overflow page
* OVFLPAGE -- 0
*
* Case 2:
* This page contains no key, but part of a large
* data field, which is continued on the next page.
*
* Page format it:
* DATA_OFF FULL_KEY OVFL_PAGENO OVFL_PAGE
*
* KEY_OFF -- offset of the beginning of the data on
* this page
* FULL_KEY -- 2
* OVFL_PAGENO - page number of the next overflow page
* OVFLPAGE -- 0
*
* FULL_KEY_DATA
* This must be the first key/data pair on the page.
* There are two cases:
*
* Case 1:
* This page contains a key and the beginning of the
* data field, but the data field is continued on the
* next page.
*
* Page format is:
* KEY_OFF FULL_KEY_DATA OVFL_PAGENO DATA_OFF
*
* KEY_OFF -- offset of the beginning of the key
* FULL_KEY_DATA -- 3
* OVFL_PAGENO - page number of the next overflow page
* DATA_OFF -- offset of the beginning of the data
*
* Case 2:
* This page contains the last page of a big data pair.
* There is no key, only the tail end of the data
* on this page.
*
* Page format is:
* DATA_OFF FULL_KEY_DATA <OVFL_PAGENO> <OVFLPAGE>
*
* DATA_OFF -- offset of the beginning of the data on
* this page
* FULL_KEY_DATA -- 3
* OVFL_PAGENO - page number of the next overflow page
* OVFLPAGE -- 0
*
* OVFL_PAGENO and OVFLPAGE are optional (they are
* not present if there is no next page).
*/
#define OVFLPAGE 0
#define PARTIAL_KEY 1
#define FULL_KEY 2
#define FULL_KEY_DATA 3
#define REAL_KEY 4
/* Short hands for accessing structure */
#undef BSIZE
#define BSIZE hdr.bsize
#undef BSHIFT
#define BSHIFT hdr.bshift
#define DSIZE hdr.dsize
#define SGSIZE hdr.ssize
#define SSHIFT hdr.sshift
#define LORDER hdr.lorder
#define OVFL_POINT hdr.ovfl_point
#define LAST_FREED hdr.last_freed
#define MAX_BUCKET hdr.max_bucket
#define FFACTOR hdr.ffactor
#define HIGH_MASK hdr.high_mask
#define LOW_MASK hdr.low_mask
#define NKEYS hdr.nkeys
#define HDRPAGES hdr.hdrpages
#define SPARES hdr.spares
#define BITMAPS hdr.bitmaps
#define VERSION hdr.version
#define MAGIC hdr.magic
#define NEXT_FREE hdr.next_free
#define H_CHARKEY hdr.h_charkey
extern uint32 (*__default_hash) (const void *, size_t);
void __buf_init(HTAB *hashp, int32 nbytes);
int __big_delete(HTAB *hashp, BUFHEAD *bufp);
BUFHEAD * __get_buf(HTAB *hashp, uint32 addr, BUFHEAD *prev_bp, int newpage);
uint32 __call_hash(HTAB *hashp, char *k, size_t len);
#include "page.h"
extern int __big_split(HTAB *hashp, BUFHEAD *op,BUFHEAD *np,
BUFHEAD *big_keyp,uint32 addr,uint32 obucket, SPLIT_RETURN *ret);
void __free_ovflpage(HTAB *hashp, BUFHEAD *obufp);
BUFHEAD * __add_ovflpage(HTAB *hashp, BUFHEAD *bufp);
int __big_insert(HTAB *hashp, BUFHEAD *bufp, const DBT *key, const DBT *val);
int __expand_table(HTAB *hashp);
uint32 __log2(uint32 num);
void __reclaim_buf(HTAB *hashp, BUFHEAD *bp);
int __get_page(HTAB *hashp, char * p, uint32 bucket, int is_bucket, int is_disk, int is_bitmap);
int __put_page(HTAB *hashp, char *p, uint32 bucket, int is_bucket, int is_bitmap);
int __ibitmap(HTAB *hashp, int pnum, int nbits, int ndx);
int __buf_free(HTAB *hashp, int do_free, int to_disk);
int __find_bigpair(HTAB *hashp, BUFHEAD *bufp, int ndx, char *key, int size);
uint16 __find_last_page(HTAB *hashp, BUFHEAD **bpp);
int __addel(HTAB *hashp, BUFHEAD *bufp, const DBT *key, const DBT * val);
int __big_return(HTAB *hashp, BUFHEAD *bufp, int ndx, DBT *val, int set_current);
int __delpair(HTAB *hashp, BUFHEAD *bufp, int ndx);
int __big_keydata(HTAB *hashp, BUFHEAD *bufp, DBT *key, DBT *val, int set);
int __split_page(HTAB *hashp, uint32 obucket, uint32 nbucket);

View File

@@ -0,0 +1,51 @@
/*-
* Copyright (c) 1990, 1993
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Margo Seltzer.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)search.h 8.1 (Berkeley) 6/4/93
*/
/* Backward compatibility to hsearch interface. */
typedef struct entry {
char *key;
char *data;
} ENTRY;
typedef enum {
FIND, ENTER
} ACTION;
int hcreate (unsigned int);
void hdestroy (void);
ENTRY *hsearch (ENTRY, ACTION);

View File

@@ -0,0 +1,424 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/*-
* Copyright (c) 1990, 1993, 1994
* The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. ***REMOVED*** - see
* ftp://ftp.cs.berkeley.edu/pub/4bsd/README.Impt.License.Change
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)db.h 8.7 (Berkeley) 6/16/94
*/
#ifndef _DB_H_
#define _DB_H_
#ifdef WINCE
#define off_t long
#endif
#ifndef macintosh
#include <sys/types.h>
#endif
#include "prtypes.h"
#include <limits.h>
#ifdef __DBINTERFACE_PRIVATE
#ifdef HAVE_SYS_CDEFS_H
#include <sys/cdefs.h>
#else
#include "cdefs.h"
#endif
#ifdef HAVE_SYS_BYTEORDER_H
#include <sys/byteorder.h>
#endif
#if defined(__linux) || defined(__BEOS__)
#include <endian.h>
#ifndef BYTE_ORDER
#define BYTE_ORDER __BYTE_ORDER
#define BIG_ENDIAN __BIG_ENDIAN
#define LITTLE_ENDIAN __LITTLE_ENDIAN
#endif
#endif /* __linux */
#ifdef __sgi
#define BYTE_ORDER BIG_ENDIAN
#define BIG_ENDIAN 4321
#define LITTLE_ENDIAN 1234 /* LSB first: i386, vax, all NT risc */
#endif
#ifdef __sun
#define BIG_ENDIAN 4321
#define LITTLE_ENDIAN 1234 /* LSB first: i386, vax, all NT risc */
#ifndef __SVR4
/* compat.h is only in 4.1.3 machines. - dp */
#include <compat.h>
#endif
/* XXX - dp
* Need to find a general way of defining endian-ness in SunOS 5.3
* SunOS 5.4 defines _BIG_ENDIAN and _LITTLE_ENDIAN
* SunOS 5.3 does nothing like this.
*/
#ifndef BYTE_ORDER
#if defined(_BIG_ENDIAN)
#define BYTE_ORDER BIG_ENDIAN
#elif defined(_LITTLE_ENDIAN)
#define BYTE_ORDER LITTLE_ENDIAN
#elif !defined(__SVR4)
/* 4.1.3 is always BIG_ENDIAN as it was released only on sparc platforms. */
#define BYTE_ORDER BIG_ENDIAN
#elif !defined(vax) && !defined(ntohl) && !defined(lint) && !defined(i386)
/* 5.3 big endian. Copied this above line from sys/byteorder.h */
/* Now we are in a 5.3 SunOS rather non 5.4 or above SunOS */
#define BYTE_ORDER BIG_ENDIAN
#else
#define BYTE_ORDER LITTLE_ENDIAN
#endif
#endif /* !BYTE_ORDER */
#endif /* __sun */
#if defined(__hpux) || defined(__hppa)
#define BYTE_ORDER BIG_ENDIAN
#define BIG_ENDIAN 4321
#define LITTLE_ENDIAN 1234 /* LSB first: i386, vax, all NT risc */
#endif
#if defined(AIXV3) || defined(AIX)
/* BYTE_ORDER, LITTLE_ENDIAN, BIG_ENDIAN are all defined here */
#include <sys/machine.h>
#endif
/* Digital Unix */
#ifdef __osf__
#include <machine/endian.h>
#endif
#ifdef __alpha
#ifndef WIN32
#else
/* Alpha NT */
#define BYTE_ORDER LITTLE_ENDIAN
#define BIG_ENDIAN 4321
#define LITTLE_ENDIAN 1234
#endif
#endif
#ifdef NCR
#include <sys/endian.h>
#endif
#ifdef __QNX__
#ifdef __QNXNTO__
#include <sys/param.h>
#else
#define LITTLE_ENDIAN 1234
#define BIG_ENDIAN 4321
#define BYTE_ORDER LITTLE_ENDIAN
#endif
#endif
#ifdef SNI
/* #include <sys/hetero.h> */
#define BYTE_ORDER BIG_ENDIAN
#define BIG_ENDIAN 4321
#define LITTLE_ENDIAN 1234
#endif
#if defined(_WINDOWS) || defined(XP_OS2_VACPP)
#ifdef BYTE_ORDER
#undef BYTE_ORDER
#endif
#define BYTE_ORDER LITTLE_ENDIAN
#define LITTLE_ENDIAN 1234 /* LSB first: i386, vax, all NT risc */
#define BIG_ENDIAN 4321
#endif
#ifdef macintosh
#define BIG_ENDIAN 4321
#define LITTLE_ENDIAN 1234
#define BYTE_ORDER BIG_ENDIAN
#endif
#endif /* __DBINTERFACE_PRIVATE */
#ifdef SCO
#define MAXPATHLEN 1024
#endif
#include <fcntl.h>
#if defined(_WINDOWS) || defined(XP_OS2)
#include <stdio.h>
#include <io.h>
#ifndef XP_OS2
#define MAXPATHLEN 1024
#endif
#ifdef XP_OS2_VACPP
#include <os2.h>
#define MAXPATHLEN CCHMAXPATH
#define EPERM EINVAL
#define ENOTDIR EBADPOS
#define S_ISDIR(s) ((s) & S_IFDIR)
#endif
#define EFTYPE EINVAL /* POSIX 1003.1 format errno. */
#ifndef STDERR_FILENO
#define STDIN_FILENO 0 /* ANSI C #defines */
#define STDOUT_FILENO 1
#define STDERR_FILENO 2
#endif
#ifndef O_ACCMODE /* POSIX 1003.1 access mode mask. */
#define O_ACCMODE (O_RDONLY|O_WRONLY|O_RDWR)
#endif
#endif
#ifdef macintosh
#include <stdio.h>
#include "xp_mcom.h"
#define O_ACCMODE 3 /* Mask for file access modes */
#define EFTYPE 2000
PR_BEGIN_EXTERN_C
int mkstemp(const char *path);
PR_END_EXTERN_C
#endif /* MACINTOSH */
#if !defined(_WINDOWS) && !defined(macintosh)
#include <sys/stat.h>
#include <errno.h>
#endif
/* define EFTYPE since most don't */
#ifndef EFTYPE
#define EFTYPE EINVAL /* POSIX 1003.1 format errno. */
#endif
#define RET_ERROR -1 /* Return values. */
#define RET_SUCCESS 0
#define RET_SPECIAL 1
#define MAX_PAGE_NUMBER 0xffffffff /* >= # of pages in a file */
#ifndef __sgi
typedef uint32 pgno_t;
#endif
#define MAX_PAGE_OFFSET 65535 /* >= # of bytes in a page */
typedef uint16 indx_t;
#define MAX_REC_NUMBER 0xffffffff /* >= # of records in a tree */
typedef uint32 recno_t;
/* Key/data structure -- a Data-Base Thang. */
typedef struct {
void *data; /* data */
size_t size; /* data length */
} DBT;
/* Routine flags. */
#define R_CURSOR 1 /* del, put, seq */
#define __R_UNUSED 2 /* UNUSED */
#define R_FIRST 3 /* seq */
#define R_IAFTER 4 /* put (RECNO) */
#define R_IBEFORE 5 /* put (RECNO) */
#define R_LAST 6 /* seq (BTREE, RECNO) */
#define R_NEXT 7 /* seq */
#define R_NOOVERWRITE 8 /* put */
#define R_PREV 9 /* seq (BTREE, RECNO) */
#define R_SETCURSOR 10 /* put (RECNO) */
#define R_RECNOSYNC 11 /* sync (RECNO) */
typedef enum { DB_BTREE, DB_HASH, DB_RECNO } DBTYPE;
typedef enum { LockOutDatabase, UnlockDatabase } DBLockFlagEnum;
/*
* !!!
* The following flags are included in the dbopen(3) call as part of the
* open(2) flags. In order to avoid conflicts with the open flags, start
* at the top of the 16 or 32-bit number space and work our way down. If
* the open flags were significantly expanded in the future, it could be
* a problem. Wish I'd left another flags word in the dbopen call.
*
* !!!
* None of this stuff is implemented yet. The only reason that it's here
* is so that the access methods can skip copying the key/data pair when
* the DB_LOCK flag isn't set.
*/
#if UINT_MAX > 65535
#define DB_LOCK 0x20000000 /* Do locking. */
#define DB_SHMEM 0x40000000 /* Use shared memory. */
#define DB_TXN 0x80000000 /* Do transactions. */
#else
#define DB_LOCK 0x2000 /* Do locking. */
#define DB_SHMEM 0x4000 /* Use shared memory. */
#define DB_TXN 0x8000 /* Do transactions. */
#endif
/* Access method description structure. */
typedef struct __db {
DBTYPE type; /* Underlying db type. */
int (*close) (struct __db *);
int (*del) (const struct __db *, const DBT *, uint);
int (*get) (const struct __db *, const DBT *, DBT *, uint);
int (*put) (const struct __db *, DBT *, const DBT *, uint);
int (*seq) (const struct __db *, DBT *, DBT *, uint);
int (*sync) (const struct __db *, uint);
void *internal; /* Access method private. */
int (*fd) (const struct __db *);
} DB;
#define BTREEMAGIC 0x053162
#define BTREEVERSION 3
/* Structure used to pass parameters to the btree routines. */
typedef struct {
#define R_DUP 0x01 /* duplicate keys */
uint32 flags;
uint cachesize; /* bytes to cache */
int maxkeypage; /* maximum keys per page */
int minkeypage; /* minimum keys per page */
uint psize; /* page size */
int (*compare) /* comparison function */
(const DBT *, const DBT *);
size_t (*prefix) /* prefix function */
(const DBT *, const DBT *);
int lorder; /* byte order */
} BTREEINFO;
#define HASHMAGIC 0x061561
#define HASHVERSION 2
/* Structure used to pass parameters to the hashing routines. */
typedef struct {
uint bsize; /* bucket size */
uint ffactor; /* fill factor */
uint nelem; /* number of elements */
uint cachesize; /* bytes to cache */
uint32 /* hash function */
(*hash) (const void *, size_t);
int lorder; /* byte order */
} HASHINFO;
/* Structure used to pass parameters to the record routines. */
typedef struct {
#define R_FIXEDLEN 0x01 /* fixed-length records */
#define R_NOKEY 0x02 /* key not required */
#define R_SNAPSHOT 0x04 /* snapshot the input */
uint32 flags;
uint cachesize; /* bytes to cache */
uint psize; /* page size */
int lorder; /* byte order */
size_t reclen; /* record length (fixed-length records) */
uint8 bval; /* delimiting byte (variable-length records */
char *bfname; /* btree file name */
} RECNOINFO;
#ifdef __DBINTERFACE_PRIVATE
/*
* Little endian <==> big endian 32-bit swap macros.
* M_32_SWAP swap a memory location
* P_32_SWAP swap a referenced memory location
* P_32_COPY swap from one location to another
*/
#define M_32_SWAP(a) { \
uint32 _tmp = a; \
((char *)&a)[0] = ((char *)&_tmp)[3]; \
((char *)&a)[1] = ((char *)&_tmp)[2]; \
((char *)&a)[2] = ((char *)&_tmp)[1]; \
((char *)&a)[3] = ((char *)&_tmp)[0]; \
}
#define P_32_SWAP(a) { \
uint32 _tmp = *(uint32 *)a; \
((char *)a)[0] = ((char *)&_tmp)[3]; \
((char *)a)[1] = ((char *)&_tmp)[2]; \
((char *)a)[2] = ((char *)&_tmp)[1]; \
((char *)a)[3] = ((char *)&_tmp)[0]; \
}
#define P_32_COPY(a, b) { \
((char *)&(b))[0] = ((char *)&(a))[3]; \
((char *)&(b))[1] = ((char *)&(a))[2]; \
((char *)&(b))[2] = ((char *)&(a))[1]; \
((char *)&(b))[3] = ((char *)&(a))[0]; \
}
/*
* Little endian <==> big endian 16-bit swap macros.
* M_16_SWAP swap a memory location
* P_16_SWAP swap a referenced memory location
* P_16_COPY swap from one location to another
*/
#define M_16_SWAP(a) { \
uint16 _tmp = a; \
((char *)&a)[0] = ((char *)&_tmp)[1]; \
((char *)&a)[1] = ((char *)&_tmp)[0]; \
}
#define P_16_SWAP(a) { \
uint16 _tmp = *(uint16 *)a; \
((char *)a)[0] = ((char *)&_tmp)[1]; \
((char *)a)[1] = ((char *)&_tmp)[0]; \
}
#define P_16_COPY(a, b) { \
((char *)&(b))[0] = ((char *)&(a))[1]; \
((char *)&(b))[1] = ((char *)&(a))[0]; \
}
#endif
PR_BEGIN_EXTERN_C
#if defined(__WATCOMC__) || defined(__WATCOM_CPLUSPLUS__)
extern DB *
#else
PR_EXTERN(DB *)
#endif
dbopen (const char *, int, int, DBTYPE, const void *);
/* set or unset a global lock flag to disable the
* opening of any DBM file
*/
void dbSetOrClearDBLock(DBLockFlagEnum type);
#ifdef __DBINTERFACE_PRIVATE
DB *__bt_open (const char *, int, int, const BTREEINFO *, int);
DB *__hash_open (const char *, int, int, const HASHINFO *, int);
DB *__rec_open (const char *, int, int, const RECNOINFO *, int);
void __dbpanic (DB *dbp);
#endif
PR_END_EXTERN_C
#endif /* !_DB_H_ */

View File

@@ -0,0 +1,99 @@
/*-
* Copyright (c) 1991, 1993, 1994
* The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)mpool.h 8.2 (Berkeley) 7/14/94
*/
#include <sys/queue.h>
/*
* The memory pool scheme is a simple one. Each in-memory page is referenced
* by a bucket which is threaded in up to two of three ways. All active pages
* are threaded on a hash chain (hashed by page number) and an lru chain.
* Inactive pages are threaded on a free chain. Each reference to a memory
* pool is handed an opaque MPOOL cookie which stores all of this information.
*/
#define HASHSIZE 128
#define HASHKEY(pgno) ((pgno - 1) % HASHSIZE)
/* The BKT structures are the elements of the queues. */
typedef struct _bkt {
CIRCLEQ_ENTRY(_bkt) hq; /* hash queue */
CIRCLEQ_ENTRY(_bkt) q; /* lru queue */
void *page; /* page */
pgno_t pgno; /* page number */
#define MPOOL_DIRTY 0x01 /* page needs to be written */
#define MPOOL_PINNED 0x02 /* page is pinned into memory */
uint8 flags; /* flags */
} BKT;
typedef struct MPOOL {
CIRCLEQ_HEAD(_lqh, _bkt) lqh; /* lru queue head */
/* hash queue array */
CIRCLEQ_HEAD(_hqh, _bkt) hqh[HASHSIZE];
pgno_t curcache; /* current number of cached pages */
pgno_t maxcache; /* max number of cached pages */
pgno_t npages; /* number of pages in the file */
uint32 pagesize; /* file page size */
int fd; /* file descriptor */
/* page in conversion routine */
void (*pgin) (void *, pgno_t, void *);
/* page out conversion routine */
void (*pgout) (void *, pgno_t, void *);
void *pgcookie; /* cookie for page in/out routines */
#ifdef STATISTICS
uint32 cachehit;
uint32 cachemiss;
uint32 pagealloc;
uint32 pageflush;
uint32 pageget;
uint32 pagenew;
uint32 pageput;
uint32 pageread;
uint32 pagewrite;
#endif
} MPOOL;
__BEGIN_DECLS
MPOOL *mpool_open (void *, int, pgno_t, pgno_t);
void mpool_filter (MPOOL *, void (*)(void *, pgno_t, void *),
void (*)(void *, pgno_t, void *), void *);
void *mpool_new (MPOOL *, pgno_t *);
void *mpool_get (MPOOL *, pgno_t, uint);
int mpool_put (MPOOL *, void *, uint);
int mpool_sync (MPOOL *);
int mpool_close (MPOOL *);
#ifdef STATISTICS
void mpool_stat (MPOOL *);
#endif
__END_DECLS

View File

@@ -0,0 +1,232 @@
/*-
* Copyright (c) 1991, 1993
* The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)compat.h 8.13 (Berkeley) 2/21/94
*/
#ifndef _COMPAT_H_
#define _COMPAT_H_
#include <sys/types.h>
/*
* If your system doesn't typedef u_long, u_short, or u_char, change
* the 0 to a 1.
*/
#if 0
typedef unsigned char u_char; /* 4.[34]BSD names. */
typedef unsigned int u_int;
typedef unsigned long u_long;
typedef unsigned short u_short;
#endif
/* If your system doesn't typedef size_t, change the 0 to a 1. */
#if 0
typedef unsigned int size_t; /* POSIX, 4.[34]BSD names. */
#endif
/* If your system doesn't typedef ssize_t, change the 0 to a 1. */
#if 0
typedef int ssize_t; /* POSIX names. */
#endif
/*
* If your system doesn't have the POSIX type for a signal mask,
* change the 0 to a 1.
*/
#if 0 /* POSIX 1003.1 signal mask type. */
typedef unsigned int sigset_t;
#endif
/*
* If your system's vsprintf returns a char *, not an int,
* change the 0 to a 1.
*/
#if defined (__sun) && !defined(__SVR4) /* SUNOS */
#define VSPRINTF_CHARSTAR
#endif
/*
* If you don't have POSIX 1003.1 signals, the signal code surrounding the
* temporary file creation is intended to block all of the possible signals
* long enough to create the file and unlink it. All of this stuff is
* intended to use old-style BSD calls to fake POSIX 1003.1 calls.
*/
#ifdef NO_POSIX_SIGNALS
#define sigemptyset(set) (*(set) = 0)
#define sigfillset(set) (*(set) = ~(sigset_t)0, 0)
#define sigaddset(set,signo) (*(set) |= sigmask(signo), 0)
#define sigdelset(set,signo) (*(set) &= ~sigmask(signo), 0)
#define sigismember(set,signo) ((*(set) & sigmask(signo)) != 0)
#define SIG_BLOCK 1
#define SIG_UNBLOCK 2
#define SIG_SETMASK 3
static int __sigtemp; /* For the use of sigprocmask */
/* Repeated test of oset != NULL is to avoid "*0". */
#define sigprocmask(how, set, oset) \
((__sigtemp = \
(((how) == SIG_BLOCK) ? \
sigblock(0) | *(set) : \
(((how) == SIG_UNBLOCK) ? \
sigblock(0) & ~(*(set)) : \
((how) == SIG_SETMASK ? \
*(set) : sigblock(0))))), \
((oset) ? (*(oset ? oset : set) = sigsetmask(__sigtemp)) : \
sigsetmask(__sigtemp)), 0)
#endif
/*
* If your system doesn't have an include file with the appropriate
* byte order set, make sure you specify the correct one.
*/
#ifndef BYTE_ORDER
#define LITTLE_ENDIAN 1234 /* LSB first: i386, vax */
#define BIG_ENDIAN 4321 /* MSB first: 68000, ibm, net */
#define BYTE_ORDER BIG_ENDIAN /* Set for your system. */
#endif
#if defined(SYSV) || defined(SYSTEM5) || defined(__sun)
#define index(a, b) strchr(a, b)
#define rindex(a, b) strrchr(a, b)
#define bzero(a, b) memset(a, 0, b)
#define bcmp(a, b, n) memcmp(a, b, n)
#define bcopy(a, b, n) memmove(b, a, n)
#endif
#if defined(BSD) || defined(BSD4_3)
#define strchr(a, b) index(a, b)
#define strrchr(a, b) rindex(a, b)
#define memcmp(a, b, n) bcmp(a, b, n)
#define memmove(a, b, n) bcopy(b, a, n)
#endif
/*
* 32-bit machine. The db routines are theoretically independent of
* the size of u_shorts and u_longs, but I don't know that anyone has
* ever actually tried it. At a minimum, change the following #define's
* if you are trying to compile on a different type of system.
*/
#ifndef USHRT_MAX
#define USHRT_MAX 0xFFFF
#define ULONG_MAX 0xFFFFFFFF
#endif
#ifndef O_ACCMODE /* POSIX 1003.1 access mode mask. */
#define O_ACCMODE (O_RDONLY|O_WRONLY|O_RDWR)
#endif
#ifndef _POSIX2_RE_DUP_MAX /* POSIX 1003.2 RE limit. */
#define _POSIX2_RE_DUP_MAX 255
#endif
/*
* If you can't provide lock values in the open(2) call. Note, this
* allows races to happen.
*/
#ifndef O_EXLOCK /* 4.4BSD extension. */
#define O_EXLOCK 0
#endif
#ifndef O_SHLOCK /* 4.4BSD extension. */
#define O_SHLOCK 0
#endif
#ifndef EFTYPE
#define EFTYPE EINVAL /* POSIX 1003.1 format errno. */
#endif
#ifndef WCOREDUMP /* 4.4BSD extension */
#define WCOREDUMP(a) 0
#endif
#ifndef STDERR_FILENO
#define STDIN_FILENO 0 /* ANSI C #defines */
#define STDOUT_FILENO 1
#define STDERR_FILENO 2
#endif
#ifndef SEEK_END
#define SEEK_SET 0 /* POSIX 1003.1 seek values */
#define SEEK_CUR 1
#define SEEK_END 2
#endif
#ifndef _POSIX_VDISABLE /* POSIX 1003.1 disabling char. */
#define _POSIX_VDISABLE 0 /* Some systems used 0. */
#endif
#ifndef TCSASOFT /* 4.4BSD extension. */
#define TCSASOFT 0
#endif
#ifndef _POSIX2_RE_DUP_MAX /* POSIX 1003.2 values. */
#define _POSIX2_RE_DUP_MAX 255
#endif
#ifndef NULL /* ANSI C #defines NULL everywhere. */
#define NULL 0
#endif
#ifndef MAX /* Usually found in <sys/param.h>. */
#define MAX(_a,_b) ((_a)<(_b)?(_b):(_a))
#endif
#ifndef MIN /* Usually found in <sys/param.h>. */
#define MIN(_a,_b) ((_a)<(_b)?(_a):(_b))
#endif
/* Default file permissions. */
#ifndef DEFFILEMODE /* 4.4BSD extension. */
#define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)
#endif
#ifndef __sun
#ifndef S_ISDIR /* POSIX 1003.1 file type tests. */
#define S_ISDIR(m) ((m & 0170000) == 0040000) /* directory */
#define S_ISCHR(m) ((m & 0170000) == 0020000) /* char special */
#define S_ISBLK(m) ((m & 0170000) == 0060000) /* block special */
#define S_ISREG(m) ((m & 0170000) == 0100000) /* regular file */
#define S_ISFIFO(m) ((m & 0170000) == 0010000) /* fifo */
#endif
#ifndef S_ISLNK /* BSD POSIX 1003.1 extensions */
#define S_ISLNK(m) ((m & 0170000) == 0120000) /* symbolic link */
#define S_ISSOCK(m) ((m & 0170000) == 0140000) /* socket */
#endif
#endif /* __sun */
/* The type of a va_list. */
#ifndef _BSD_VA_LIST_ /* 4.4BSD #define. */
#define _BSD_VA_LIST_ char *
#endif
#endif /* !_COMPAT_H_ */

View File

@@ -0,0 +1,77 @@
/*-
* Copyright (c) 1990, 1993
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Margo Seltzer.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)ndbm.h 8.1 (Berkeley) 6/2/93
*/
#ifndef _NDBM_H_
#define _NDBM_H_
#include "mcom_db.h"
/* Map dbm interface onto db(3). */
#define DBM_RDONLY O_RDONLY
/* Flags to dbm_store(). */
#define DBM_INSERT 0
#define DBM_REPLACE 1
/*
* The db(3) support for ndbm(3) always appends this suffix to the
* file name to avoid overwriting the user's original database.
*/
#define DBM_SUFFIX ".db"
typedef struct {
char *dptr;
int dsize;
} datum;
typedef DB DBM;
#define dbm_pagfno(a) DBM_PAGFNO_NOT_AVAILABLE
__BEGIN_DECLS
void dbm_close (DBM *);
int dbm_delete (DBM *, datum);
datum dbm_fetch (DBM *, datum);
datum dbm_firstkey (DBM *);
long dbm_forder (DBM *, datum);
datum dbm_nextkey (DBM *);
DBM *dbm_open (const char *, int, int);
int dbm_store (DBM *, datum, datum, int);
int dbm_dirfno (DBM *);
__END_DECLS
#endif /* !_NDBM_H_ */

View File

@@ -0,0 +1,96 @@
/*-
* Copyright (c) 1990, 1993, 1994
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Margo Seltzer.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)page.h 8.2 (Berkeley) 5/31/94
*/
/*
* Definitions for hashing page file format.
*/
/*
* routines dealing with a data page
*
* page format:
* +------------------------------+
* p | n | keyoff | datoff | keyoff |
* +------------+--------+--------+
* | datoff | free | ptr | --> |
* +--------+---------------------+
* | F R E E A R E A |
* +--------------+---------------+
* | <---- - - - | data |
* +--------+-----+----+----------+
* | key | data | key |
* +--------+----------+----------+
*
* Pointer to the free space is always: p[p[0] + 2]
* Amount of free space on the page is: p[p[0] + 1]
*/
/*
* How many bytes required for this pair?
* 2 shorts in the table at the top of the page + room for the
* key and room for the data
*
* We prohibit entering a pair on a page unless there is also room to append
* an overflow page. The reason for this it that you can get in a situation
* where a single key/data pair fits on a page, but you can't append an
* overflow page and later you'd have to split the key/data and handle like
* a big pair.
* You might as well do this up front.
*/
#ifndef PAGE_H
#define PAGE_H
#define PAIRSIZE(K,D) (2*sizeof(uint16) + (K)->size + (D)->size)
#define BIGOVERHEAD (4*sizeof(uint16))
#define KEYSIZE(K) (4*sizeof(uint16) + (K)->size);
#define OVFLSIZE (2*sizeof(uint16))
#define FREESPACE(P) ((P)[(P)[0]+1])
#define OFFSET(P) ((P)[(P)[0]+2])
#define PAIRFITS(P,K,D) \
(((P)[2] >= REAL_KEY) && \
(PAIRSIZE((K),(D)) + OVFLSIZE) <= FREESPACE((P)))
#define PAGE_META(N) (((N)+3) * sizeof(uint16))
typedef struct {
BUFHEAD *newp;
BUFHEAD *oldp;
BUFHEAD *nextp;
uint16 next_addr;
} SPLIT_RETURN;
#endif

245
mozilla/dbm/include/queue.h Normal file
View File

@@ -0,0 +1,245 @@
/*
* Copyright (c) 1991, 1993
* The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)queue.h 8.3 (Berkeley) 12/13/93
*/
#ifndef _QUEUE_H_
#define _QUEUE_H_
/*
* This file defines three types of data structures: lists, tail queues,
* and circular queues.
*
* A list is headed by a single forward pointer (or an array of forward
* pointers for a hash table header). The elements are doubly linked
* so that an arbitrary element can be removed without a need to
* traverse the list. New elements can be added to the list after
* an existing element or at the head of the list. A list may only be
* traversed in the forward direction.
*
* A tail queue is headed by a pair of pointers, one to the head of the
* list and the other to the tail of the list. The elements are doubly
* linked so that an arbitrary element can be removed without a need to
* traverse the list. New elements can be added to the list after
* an existing element, at the head of the list, or at the end of the
* list. A tail queue may only be traversed in the forward direction.
*
* A circle queue is headed by a pair of pointers, one to the head of the
* list and the other to the tail of the list. The elements are doubly
* linked so that an arbitrary element can be removed without a need to
* traverse the list. New elements can be added to the list before or after
* an existing element, at the head of the list, or at the end of the list.
* A circle queue may be traversed in either direction, but has a more
* complex end of list detection.
*
* For details on the use of these macros, see the queue(3) manual page.
*/
/*
* List definitions.
*/
#define LIST_HEAD(name, type) \
struct name { \
struct type *lh_first; /* first element */ \
}
#define LIST_ENTRY(type) \
struct { \
struct type *le_next; /* next element */ \
struct type **le_prev; /* address of previous next element */ \
}
/*
* List functions.
*/
#define LIST_INIT(head) { \
(head)->lh_first = NULL; \
}
#define LIST_INSERT_AFTER(listelm, elm, field) { \
if (((elm)->field.le_next = (listelm)->field.le_next) != NULL) \
(listelm)->field.le_next->field.le_prev = \
&(elm)->field.le_next; \
(listelm)->field.le_next = (elm); \
(elm)->field.le_prev = &(listelm)->field.le_next; \
}
#define LIST_INSERT_HEAD(head, elm, field) { \
if (((elm)->field.le_next = (head)->lh_first) != NULL) \
(head)->lh_first->field.le_prev = &(elm)->field.le_next;\
(head)->lh_first = (elm); \
(elm)->field.le_prev = &(head)->lh_first; \
}
#define LIST_REMOVE(elm, field) { \
if ((elm)->field.le_next != NULL) \
(elm)->field.le_next->field.le_prev = \
(elm)->field.le_prev; \
*(elm)->field.le_prev = (elm)->field.le_next; \
}
/*
* Tail queue definitions.
*/
#define TAILQ_HEAD(name, type) \
struct name { \
struct type *tqh_first; /* first element */ \
struct type **tqh_last; /* addr of last next element */ \
}
#define TAILQ_ENTRY(type) \
struct { \
struct type *tqe_next; /* next element */ \
struct type **tqe_prev; /* address of previous next element */ \
}
/*
* Tail queue functions.
*/
#define TAILQ_INIT(head) { \
(head)->tqh_first = NULL; \
(head)->tqh_last = &(head)->tqh_first; \
}
#define TAILQ_INSERT_HEAD(head, elm, field) { \
if (((elm)->field.tqe_next = (head)->tqh_first) != NULL) \
(elm)->field.tqe_next->field.tqe_prev = \
&(elm)->field.tqe_next; \
else \
(head)->tqh_last = &(elm)->field.tqe_next; \
(head)->tqh_first = (elm); \
(elm)->field.tqe_prev = &(head)->tqh_first; \
}
#define TAILQ_INSERT_TAIL(head, elm, field) { \
(elm)->field.tqe_next = NULL; \
(elm)->field.tqe_prev = (head)->tqh_last; \
*(head)->tqh_last = (elm); \
(head)->tqh_last = &(elm)->field.tqe_next; \
}
#define TAILQ_INSERT_AFTER(head, listelm, elm, field) { \
if (((elm)->field.tqe_next = (listelm)->field.tqe_next) != NULL)\
(elm)->field.tqe_next->field.tqe_prev = \
&(elm)->field.tqe_next; \
else \
(head)->tqh_last = &(elm)->field.tqe_next; \
(listelm)->field.tqe_next = (elm); \
(elm)->field.tqe_prev = &(listelm)->field.tqe_next; \
}
#define TAILQ_REMOVE(head, elm, field) { \
if (((elm)->field.tqe_next) != NULL) \
(elm)->field.tqe_next->field.tqe_prev = \
(elm)->field.tqe_prev; \
else \
(head)->tqh_last = (elm)->field.tqe_prev; \
*(elm)->field.tqe_prev = (elm)->field.tqe_next; \
}
/*
* Circular queue definitions.
*/
#define CIRCLEQ_HEAD(name, type) \
struct name { \
struct type *cqh_first; /* first element */ \
struct type *cqh_last; /* last element */ \
}
#define CIRCLEQ_ENTRY(type) \
struct { \
struct type *cqe_next; /* next element */ \
struct type *cqe_prev; /* previous element */ \
}
/*
* Circular queue functions.
*/
#define CIRCLEQ_INIT(head) { \
(head)->cqh_first = (void *)(head); \
(head)->cqh_last = (void *)(head); \
}
#define CIRCLEQ_INSERT_AFTER(head, listelm, elm, field) { \
(elm)->field.cqe_next = (listelm)->field.cqe_next; \
(elm)->field.cqe_prev = (listelm); \
if ((listelm)->field.cqe_next == (void *)(head)) \
(head)->cqh_last = (elm); \
else \
(listelm)->field.cqe_next->field.cqe_prev = (elm); \
(listelm)->field.cqe_next = (elm); \
}
#define CIRCLEQ_INSERT_BEFORE(head, listelm, elm, field) { \
(elm)->field.cqe_next = (listelm); \
(elm)->field.cqe_prev = (listelm)->field.cqe_prev; \
if ((listelm)->field.cqe_prev == (void *)(head)) \
(head)->cqh_first = (elm); \
else \
(listelm)->field.cqe_prev->field.cqe_next = (elm); \
(listelm)->field.cqe_prev = (elm); \
}
#define CIRCLEQ_INSERT_HEAD(head, elm, field) { \
(elm)->field.cqe_next = (head)->cqh_first; \
(elm)->field.cqe_prev = (void *)(head); \
if ((head)->cqh_last == (void *)(head)) \
(head)->cqh_last = (elm); \
else \
(head)->cqh_first->field.cqe_prev = (elm); \
(head)->cqh_first = (elm); \
}
#define CIRCLEQ_INSERT_TAIL(head, elm, field) { \
(elm)->field.cqe_next = (void *)(head); \
(elm)->field.cqe_prev = (head)->cqh_last; \
if ((head)->cqh_first == (void *)(head)) \
(head)->cqh_first = (elm); \
else \
(head)->cqh_last->field.cqe_next = (elm); \
(head)->cqh_last = (elm); \
}
#define CIRCLEQ_REMOVE(head, elm, field) { \
if ((elm)->field.cqe_next == (void *)(head)) \
(head)->cqh_last = (elm)->field.cqe_prev; \
else \
(elm)->field.cqe_next->field.cqe_prev = \
(elm)->field.cqe_prev; \
if ((elm)->field.cqe_prev == (void *)(head)) \
(head)->cqh_first = (elm)->field.cqe_next; \
else \
(elm)->field.cqe_prev->field.cqe_next = \
(elm)->field.cqe_next; \
}
#endif /* !_QUEUE_H_ */

View File

@@ -0,0 +1,51 @@
/*-
* Copyright (c) 1990, 1993
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Margo Seltzer.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
* @(#)search.h 8.1 (Berkeley) 6/4/93
*/
/* Backward compatibility to hsearch interface. */
typedef struct entry {
char *key;
char *data;
} ENTRY;
typedef enum {
FIND, ENTER
} ACTION;
int hcreate (unsigned int);
void hdestroy (void);
ENTRY *hsearch (ENTRY, ACTION);

View File

@@ -0,0 +1,26 @@
#if defined(__WATCOMC__) || defined(__WATCOM_CPLUSPLUS__)
#ifndef __WATCOM_FIX_H__
#define __WATCOM_FIX_H__ 1
/*
* WATCOM's C compiler doesn't default to "__cdecl" conventions for external
* symbols and functions. Rather than adding an explicit __cdecl modifier to
* every external symbol and function declaration and definition, we use the
* following pragma to (attempt to) change WATCOM c's default to __cdecl.
* These pragmas were taken from pages 180-181, 266 & 269 of the
* Watcom C/C++ version 11 User's Guide, 3rd edition.
*/
#if defined(XP_WIN16) || defined(WIN16)
#pragma aux default "_*" \
parm caller [] \
value struct float struct routine [ax] \
modify [ax bx cx dx es]
#else
#pragma aux default "_*" \
parm caller [] \
value struct float struct routine [eax] \
modify [eax ecx edx]
#endif
#pragma aux default far
#endif /* once */
#endif /* WATCOM compiler */

View File

@@ -0,0 +1,112 @@
/* ---------------------------------------------------------------------------
Stuff to fake unix file I/O on windows boxes
------------------------------------------------------------------------*/
#ifndef WINFILE_H
#define WINFILE_H
#ifdef _WINDOWS
/* hacked out of <dirent.h> on an SGI */
#if defined(XP_WIN32) || defined(_WIN32)
/* 32-bit stuff here */
#include <windows.h>
#include <stdlib.h>
#ifdef __MINGW32__
#include <sys/types.h>
#include <sys/stat.h>
#else
#include <sys\types.h>
#include <sys\stat.h>
#endif
typedef struct DIR_Struct {
void * directoryPtr;
WIN32_FIND_DATA data;
} DIR;
#define _ST_FSTYPSZ 16
#if !defined(__BORLANDC__) && !defined(__GNUC__)
typedef unsigned long mode_t;
typedef long uid_t;
typedef long gid_t;
#ifdef WINCE
typedef long ino_t;
#else
typedef long off_t;
#endif
typedef unsigned long nlink_t;
#endif
typedef struct timestruc {
time_t tv_sec; /* seconds */
long tv_nsec; /* and nanoseconds */
} timestruc_t;
struct dirent { /* data from readdir() */
ino_t d_ino; /* inode number of entry */
off_t d_off; /* offset of disk direntory entry */
unsigned short d_reclen; /* length of this record */
char d_name[_MAX_FNAME]; /* name of file */
};
#if !defined(__BORLANDC__) && !defined (__GNUC__)
#define S_ISDIR(s) ((s) & _S_IFDIR)
#endif
#else /* _WIN32 */
/* 16-bit windows stuff */
#include <sys\types.h>
#include <sys\stat.h>
#include <dos.h>
/* Getting cocky to support multiple file systems */
typedef struct dirStruct_tag {
struct _find_t file_data;
char c_checkdrive;
} dirStruct;
typedef struct DIR_Struct {
void * directoryPtr;
dirStruct data;
} DIR;
#define _ST_FSTYPSZ 16
typedef unsigned long mode_t;
typedef long uid_t;
typedef long gid_t;
typedef long off_t;
typedef unsigned long nlink_t;
typedef struct timestruc {
time_t tv_sec; /* seconds */
long tv_nsec; /* and nanoseconds */
} timestruc_t;
struct dirent { /* data from readdir() */
ino_t d_ino; /* inode number of entry */
off_t d_off; /* offset of disk direntory entry */
unsigned short d_reclen; /* length of this record */
#ifdef XP_WIN32
char d_name[_MAX_FNAME]; /* name of file */
#else
char d_name[20]; /* name of file */
#endif
};
#define S_ISDIR(s) ((s) & _S_IFDIR)
#endif /* 16-bit windows */
#define CONST const
#endif /* _WINDOWS */
#endif /* WINFILE_H */

View File

@@ -0,0 +1,95 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1998
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
DEPTH = ../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
LIBRARY_NAME = mozdbm_s
LIB_IS_C_ONLY = 1
ifeq ($(OS_ARCH),WINNT)
LIBRARY_NAME = dbm$(MOZ_BITS)
endif
CSRCS = \
db.c \
h_bigkey.c \
h_func.c \
h_log2.c \
h_page.c \
hash.c \
hash_buf.c \
hsearch.c \
mktemp.c \
ndbm.c \
strerror.c \
nsres.c \
$(NULL)
ifeq ($(OS_ARCH),WINNT)
CSRCS += memmove.c snprintf.c
else
ifeq (,$(filter -DHAVE_MEMMOVE=1,$(ACDEFINES)))
CSRCS += memmove.c
endif
ifeq (,$(filter -DHAVE_SNPRINTF=1,$(ACDEFINES)))
CSRCS += snprintf.c
endif
endif # WINNT
LOCAL_INCLUDES = -I$(srcdir)/../include
FORCE_STATIC_LIB = 1
FORCE_USE_PIC = 1
include $(topsrcdir)/config/rules.mk
DEFINES += -DMEMMOVE -D__DBINTERFACE_PRIVATE $(SECURITY_FLAG)
ifeq ($(OS_ARCH),WINCE)
DEFINES += -D__STDC__ -DDBM_REOPEN_ON_FLUSH
endif
ifeq ($(OS_ARCH),AIX)
OS_LIBS += -lc_r
endif

View File

@@ -0,0 +1,113 @@
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1998
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
#//------------------------------------------------------------------------
#//
#// Makefile to build the cert library
#//
#//------------------------------------------------------------------------
!if "$(MOZ_BITS)" == "16"
!ifndef MOZ_DEBUG
OPTIMIZER=-Os -UDEBUG -DNDEBUG
!endif
!endif
#//------------------------------------------------------------------------
#//
#// Specify the depth of the current directory relative to the
#// root of NS
#//
#//------------------------------------------------------------------------
DEPTH= ..\..
!ifndef MAKE_OBJ_TYPE
MAKE_OBJ_TYPE=EXE
!endif
#//------------------------------------------------------------------------
#//
#// Define any Public Make Variables here: (ie. PDFFILE, MAPFILE, ...)
#//
#//------------------------------------------------------------------------
LIBNAME=dbm$(MOZ_BITS)
PDBFILE=$(LIBNAME).pdb
#//------------------------------------------------------------------------
#//
#// Define the files necessary to build the target (ie. OBJS)
#//
#//------------------------------------------------------------------------
OBJS= \
.\$(OBJDIR)\db.obj \
.\$(OBJDIR)\h_bigkey.obj \
.\$(OBJDIR)\h_func.obj \
.\$(OBJDIR)\h_log2.obj \
.\$(OBJDIR)\h_page.obj \
.\$(OBJDIR)\hash.obj \
.\$(OBJDIR)\hash_buf.obj \
.\$(OBJDIR)\hsearch.obj \
.\$(OBJDIR)\memmove.obj \
.\$(OBJDIR)\mktemp.obj \
.\$(OBJDIR)\ndbm.obj \
.\$(OBJDIR)\snprintf.obj \
.\$(OBJDIR)\strerror.obj \
.\$(OBJDIR)\nsres.obj \
$(NULL)
#//------------------------------------------------------------------------
#//
#// Define any Public Targets here (ie. PROGRAM, LIBRARY, DLL, ...)
#// (these must be defined before the common makefiles are included)
#//
#//------------------------------------------------------------------------
LIBRARY = .\$(OBJDIR)\$(LIBNAME).lib
LINCS = -I..\include
#//------------------------------------------------------------------------
#//
#// Include the common makefile rules
#//
#//------------------------------------------------------------------------
include <$(DEPTH)/config/rules.mak>
CFLAGS = $(CFLAGS) -DMOZILLA_CLIENT -D__DBINTERFACE_PRIVATE
install:: $(LIBRARY)
$(MAKE_INSTALL) $(LIBRARY) $(DIST)\lib

144
mozilla/dbm/src/db.c Normal file
View File

@@ -0,0 +1,144 @@
/*-
* Copyright (c) 1991, 1993
* The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
#if defined(LIBC_SCCS) && !defined(lint)
static char sccsid[] = "@(#)db.c 8.4 (Berkeley) 2/21/94";
#endif /* LIBC_SCCS and not lint */
#include "watcomfx.h"
#ifndef __DBINTERFACE_PRIVATE
#define __DBINTERFACE_PRIVATE
#endif
#ifdef macintosh
#include <unix.h>
#else
#include <sys/types.h>
#endif
#include <errno.h>
#include <fcntl.h>
#include <stddef.h>
#include <stdio.h>
#include "mcom_db.h"
/* a global flag that locks closed all databases */
int all_databases_locked_closed = 0;
/* set or unset a global lock flag to disable the
* opening of any DBM file
*/
void
dbSetOrClearDBLock(DBLockFlagEnum type)
{
if(type == LockOutDatabase)
all_databases_locked_closed = 1;
else
all_databases_locked_closed = 0;
}
#if defined(__WATCOMC__) || defined(__WATCOM_CPLUSPLUS__)
DB *
#else
PR_IMPLEMENT(DB *)
#endif
dbopen(const char *fname, int flags,int mode, DBTYPE type, const void *openinfo)
{
/* lock out all file databases. Let in-memory databases through
*/
if(all_databases_locked_closed && fname)
{
errno = EINVAL;
return(NULL);
}
#define DB_FLAGS (DB_LOCK | DB_SHMEM | DB_TXN)
#if 0 /* most systems dont have EXLOCK and SHLOCK */
#define USE_OPEN_FLAGS \
(O_CREAT | O_EXCL | O_EXLOCK | O_NONBLOCK | O_RDONLY | \
O_RDWR | O_SHLOCK | O_TRUNC)
#else
#define USE_OPEN_FLAGS \
(O_CREAT | O_EXCL | O_RDONLY | \
O_RDWR | O_TRUNC)
#endif
if ((flags & ~(USE_OPEN_FLAGS | DB_FLAGS)) == 0)
switch (type) {
/* we don't need btree and recno right now */
#if 0
case DB_BTREE:
return (__bt_open(fname, flags & USE_OPEN_FLAGS,
mode, openinfo, flags & DB_FLAGS));
case DB_RECNO:
return (__rec_open(fname, flags & USE_OPEN_FLAGS,
mode, openinfo, flags & DB_FLAGS));
#endif
case DB_HASH:
return (__hash_open(fname, flags & USE_OPEN_FLAGS,
mode, (const HASHINFO *)openinfo, flags & DB_FLAGS));
default:
break;
}
errno = EINVAL;
return (NULL);
}
static int
__dberr()
{
return (RET_ERROR);
}
/*
* __DBPANIC -- Stop.
*
* Parameters:
* dbp: pointer to the DB structure.
*/
void
__dbpanic(DB *dbp)
{
/* The only thing that can succeed is a close. */
dbp->del = (int (*)(const struct __db *, const DBT *, uint))__dberr;
dbp->fd = (int (*)(const struct __db *))__dberr;
dbp->get = (int (*)(const struct __db *, const DBT *, DBT *, uint))__dberr;
dbp->put = (int (*)(const struct __db *, DBT *, const DBT *, uint))__dberr;
dbp->seq = (int (*)(const struct __db *, DBT *, DBT *, uint))__dberr;
dbp->sync = (int (*)(const struct __db *, uint))__dberr;
}

713
mozilla/dbm/src/h_bigkey.c Normal file
View File

@@ -0,0 +1,713 @@
/*-
* Copyright (c) 1990, 1993, 1994
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Margo Seltzer.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
#if defined(LIBC_SCCS) && !defined(lint)
static char sccsid[] = "@(#)hash_bigkey.c 8.3 (Berkeley) 5/31/94";
#endif /* LIBC_SCCS and not lint */
#include "watcomfx.h"
/*
* PACKAGE: hash
* DESCRIPTION:
* Big key/data handling for the hashing package.
*
* ROUTINES:
* External
* __big_keydata
* __big_split
* __big_insert
* __big_return
* __big_delete
* __find_last_page
* Internal
* collect_key
* collect_data
*/
#if !defined(_WIN32) && !defined(_WINDOWS) && !defined(macintosh) && !defined(XP_OS2_VACPP)
#include <sys/param.h>
#endif
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#ifdef DEBUG
#include <assert.h>
#endif
#include "mcom_db.h"
#include "hash.h"
#include "page.h"
/* #include "extern.h" */
static int collect_key __P((HTAB *, BUFHEAD *, int, DBT *, int));
static int collect_data __P((HTAB *, BUFHEAD *, int, int));
/*
* Big_insert
*
* You need to do an insert and the key/data pair is too big
*
* Returns:
* 0 ==> OK
*-1 ==> ERROR
*/
extern int
__big_insert(HTAB *hashp, BUFHEAD *bufp, const DBT *key, const DBT *val)
{
register uint16 *p;
uint key_size, n, val_size;
uint16 space, move_bytes, off;
char *cp, *key_data, *val_data;
cp = bufp->page; /* Character pointer of p. */
p = (uint16 *)cp;
key_data = (char *)key->data;
key_size = key->size;
val_data = (char *)val->data;
val_size = val->size;
/* First move the Key */
for (space = FREESPACE(p) - BIGOVERHEAD; key_size;
space = FREESPACE(p) - BIGOVERHEAD) {
move_bytes = PR_MIN(space, key_size);
off = OFFSET(p) - move_bytes;
memmove(cp + off, key_data, move_bytes);
key_size -= move_bytes;
key_data += move_bytes;
n = p[0];
p[++n] = off;
p[0] = ++n;
FREESPACE(p) = off - PAGE_META(n);
OFFSET(p) = off;
p[n] = PARTIAL_KEY;
bufp = __add_ovflpage(hashp, bufp);
if (!bufp)
return (-1);
n = p[0];
if (!key_size) {
if (FREESPACE(p)) {
move_bytes = PR_MIN(FREESPACE(p), val_size);
off = OFFSET(p) - move_bytes;
p[n] = off;
memmove(cp + off, val_data, move_bytes);
val_data += move_bytes;
val_size -= move_bytes;
p[n - 2] = FULL_KEY_DATA;
FREESPACE(p) = FREESPACE(p) - move_bytes;
OFFSET(p) = off;
} else
p[n - 2] = FULL_KEY;
}
p = (uint16 *)bufp->page;
cp = bufp->page;
bufp->flags |= BUF_MOD;
}
/* Now move the data */
for (space = FREESPACE(p) - BIGOVERHEAD; val_size;
space = FREESPACE(p) - BIGOVERHEAD) {
move_bytes = PR_MIN(space, val_size);
/*
* Here's the hack to make sure that if the data ends on the
* same page as the key ends, FREESPACE is at least one.
*/
if (space == val_size && val_size == val->size)
move_bytes--;
off = OFFSET(p) - move_bytes;
memmove(cp + off, val_data, move_bytes);
val_size -= move_bytes;
val_data += move_bytes;
n = p[0];
p[++n] = off;
p[0] = ++n;
FREESPACE(p) = off - PAGE_META(n);
OFFSET(p) = off;
if (val_size) {
p[n] = FULL_KEY;
bufp = __add_ovflpage(hashp, bufp);
if (!bufp)
return (-1);
cp = bufp->page;
p = (uint16 *)cp;
} else
p[n] = FULL_KEY_DATA;
bufp->flags |= BUF_MOD;
}
return (0);
}
/*
* Called when bufp's page contains a partial key (index should be 1)
*
* All pages in the big key/data pair except bufp are freed. We cannot
* free bufp because the page pointing to it is lost and we can't get rid
* of its pointer.
*
* Returns:
* 0 => OK
*-1 => ERROR
*/
extern int
__big_delete(HTAB *hashp, BUFHEAD *bufp)
{
register BUFHEAD *last_bfp, *rbufp;
uint16 *bp, pageno;
int key_done, n;
rbufp = bufp;
last_bfp = NULL;
bp = (uint16 *)bufp->page;
pageno = 0;
key_done = 0;
while (!key_done || (bp[2] != FULL_KEY_DATA)) {
if (bp[2] == FULL_KEY || bp[2] == FULL_KEY_DATA)
key_done = 1;
/*
* If there is freespace left on a FULL_KEY_DATA page, then
* the data is short and fits entirely on this page, and this
* is the last page.
*/
if (bp[2] == FULL_KEY_DATA && FREESPACE(bp))
break;
pageno = bp[bp[0] - 1];
rbufp->flags |= BUF_MOD;
rbufp = __get_buf(hashp, pageno, rbufp, 0);
if (last_bfp)
__free_ovflpage(hashp, last_bfp);
last_bfp = rbufp;
if (!rbufp)
return (-1); /* Error. */
bp = (uint16 *)rbufp->page;
}
/*
* If we get here then rbufp points to the last page of the big
* key/data pair. Bufp points to the first one -- it should now be
* empty pointing to the next page after this pair. Can't free it
* because we don't have the page pointing to it.
*/
/* This is information from the last page of the pair. */
n = bp[0];
pageno = bp[n - 1];
/* Now, bp is the first page of the pair. */
bp = (uint16 *)bufp->page;
if (n > 2) {
/* There is an overflow page. */
bp[1] = pageno;
bp[2] = OVFLPAGE;
bufp->ovfl = rbufp->ovfl;
} else
/* This is the last page. */
bufp->ovfl = NULL;
n -= 2;
bp[0] = n;
FREESPACE(bp) = hashp->BSIZE - PAGE_META(n);
OFFSET(bp) = hashp->BSIZE - 1;
bufp->flags |= BUF_MOD;
if (rbufp)
__free_ovflpage(hashp, rbufp);
if (last_bfp != rbufp)
__free_ovflpage(hashp, last_bfp);
hashp->NKEYS--;
return (0);
}
/*
* Returns:
* 0 = key not found
* -1 = get next overflow page
* -2 means key not found and this is big key/data
* -3 error
*/
extern int
__find_bigpair(HTAB *hashp, BUFHEAD *bufp, int ndx, char *key, int size)
{
register uint16 *bp;
register char *p;
int ksize;
uint16 bytes;
char *kkey;
bp = (uint16 *)bufp->page;
p = bufp->page;
ksize = size;
kkey = key;
for (bytes = hashp->BSIZE - bp[ndx];
bytes <= size && bp[ndx + 1] == PARTIAL_KEY;
bytes = hashp->BSIZE - bp[ndx]) {
if (memcmp(p + bp[ndx], kkey, bytes))
return (-2);
kkey += bytes;
ksize -= bytes;
bufp = __get_buf(hashp, bp[ndx + 2], bufp, 0);
if (!bufp)
return (-3);
p = bufp->page;
bp = (uint16 *)p;
ndx = 1;
}
if (bytes != ksize || memcmp(p + bp[ndx], kkey, bytes)) {
#ifdef HASH_STATISTICS
++hash_collisions;
#endif
return (-2);
} else
return (ndx);
}
/*
* Given the buffer pointer of the first overflow page of a big pair,
* find the end of the big pair
*
* This will set bpp to the buffer header of the last page of the big pair.
* It will return the pageno of the overflow page following the last page
* of the pair; 0 if there isn't any (i.e. big pair is the last key in the
* bucket)
*/
extern uint16
__find_last_page(HTAB *hashp, BUFHEAD **bpp)
{
BUFHEAD *bufp;
uint16 *bp, pageno;
uint n;
bufp = *bpp;
bp = (uint16 *)bufp->page;
for (;;) {
n = bp[0];
/*
* This is the last page if: the tag is FULL_KEY_DATA and
* either only 2 entries OVFLPAGE marker is explicit there
* is freespace on the page.
*/
if (bp[2] == FULL_KEY_DATA &&
((n == 2) || (bp[n] == OVFLPAGE) || (FREESPACE(bp))))
break;
/* LJM bound the size of n to reasonable limits
*/
if(n > hashp->BSIZE/sizeof(uint16))
return(0);
pageno = bp[n - 1];
bufp = __get_buf(hashp, pageno, bufp, 0);
if (!bufp)
return (0); /* Need to indicate an error! */
bp = (uint16 *)bufp->page;
}
*bpp = bufp;
if (bp[0] > 2)
return (bp[3]);
else
return (0);
}
/*
* Return the data for the key/data pair that begins on this page at this
* index (index should always be 1).
*/
extern int
__big_return(
HTAB *hashp,
BUFHEAD *bufp,
int ndx,
DBT *val,
int set_current)
{
BUFHEAD *save_p;
uint16 *bp, len, off, save_addr;
char *tp;
int save_flags;
bp = (uint16 *)bufp->page;
while (bp[ndx + 1] == PARTIAL_KEY) {
bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
if (!bufp)
return (-1);
bp = (uint16 *)bufp->page;
ndx = 1;
}
if (bp[ndx + 1] == FULL_KEY) {
bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
if (!bufp)
return (-1);
bp = (uint16 *)bufp->page;
save_p = bufp;
save_addr = save_p->addr;
off = bp[1];
len = 0;
} else
if (!FREESPACE(bp)) {
/*
* This is a hack. We can't distinguish between
* FULL_KEY_DATA that contains complete data or
* incomplete data, so we require that if the data
* is complete, there is at least 1 byte of free
* space left.
*/
off = bp[bp[0]];
len = bp[1] - off;
save_p = bufp;
save_addr = bufp->addr;
bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
if (!bufp)
return (-1);
bp = (uint16 *)bufp->page;
} else {
/* The data is all on one page. */
tp = (char *)bp;
off = bp[bp[0]];
val->data = (uint8 *)tp + off;
val->size = bp[1] - off;
if (set_current) {
if (bp[0] == 2) { /* No more buckets in
* chain */
hashp->cpage = NULL;
hashp->cbucket++;
hashp->cndx = 1;
} else {
hashp->cpage = __get_buf(hashp,
bp[bp[0] - 1], bufp, 0);
if (!hashp->cpage)
return (-1);
hashp->cndx = 1;
if (!((uint16 *)
hashp->cpage->page)[0]) {
hashp->cbucket++;
hashp->cpage = NULL;
}
}
}
return (0);
}
/* pin our saved buf so that we don't lose if
* we run out of buffers */
save_flags = save_p->flags;
save_p->flags |= BUF_PIN;
val->size = collect_data(hashp, bufp, (int)len, set_current);
save_p->flags = save_flags;
if (val->size == (size_t)-1)
return (-1);
if (save_p->addr != save_addr) {
/* We are pretty short on buffers. */
errno = EINVAL; /* OUT OF BUFFERS */
return (-1);
}
memmove(hashp->tmp_buf, (save_p->page) + off, len);
val->data = (uint8 *)hashp->tmp_buf;
return (0);
}
/*
* Count how big the total datasize is by looping through the pages. Then
* allocate a buffer and copy the data in the second loop. NOTE: Our caller
* may already have a bp which it is holding onto. The caller is
* responsible for copying that bp into our temp buffer. 'len' is how much
* space to reserve for that buffer.
*/
static int
collect_data(
HTAB *hashp,
BUFHEAD *bufp,
int len, int set)
{
register uint16 *bp;
BUFHEAD *save_bufp;
int save_flags;
int mylen, totlen;
/*
* save the input buf head because we need to walk the list twice.
* pin it to make sure it doesn't leave the buffer pool.
* This has the effect of growing the buffer pool if necessary.
*/
save_bufp = bufp;
save_flags = save_bufp->flags;
save_bufp->flags |= BUF_PIN;
/* read the length of the buffer */
for (totlen = len; bufp ; bufp = __get_buf(hashp, bp[bp[0]-1], bufp, 0)) {
bp = (uint16 *)bufp->page;
mylen = hashp->BSIZE - bp[1];
/* if mylen ever goes negative it means that the
* page is screwed up.
*/
if (mylen < 0) {
save_bufp->flags = save_flags;
return (-1);
}
totlen += mylen;
if (bp[2] == FULL_KEY_DATA) { /* End of Data */
break;
}
}
if (!bufp) {
save_bufp->flags = save_flags;
return (-1);
}
/* allocate a temp buf */
if (hashp->tmp_buf)
free(hashp->tmp_buf);
if ((hashp->tmp_buf = (char *)malloc((size_t)totlen)) == NULL) {
save_bufp->flags = save_flags;
return (-1);
}
/* copy the buffers back into temp buf */
for (bufp = save_bufp; bufp ;
bufp = __get_buf(hashp, bp[bp[0]-1], bufp, 0)) {
bp = (uint16 *)bufp->page;
mylen = hashp->BSIZE - bp[1];
memmove(&hashp->tmp_buf[len], (bufp->page) + bp[1], (size_t)mylen);
len += mylen;
if (bp[2] == FULL_KEY_DATA) {
break;
}
}
/* 'clear' the pin flags */
save_bufp->flags = save_flags;
/* update the database cursor */
if (set) {
hashp->cndx = 1;
if (bp[0] == 2) { /* No more buckets in chain */
hashp->cpage = NULL;
hashp->cbucket++;
} else {
hashp->cpage = __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
if (!hashp->cpage)
return (-1);
else if (!((uint16 *)hashp->cpage->page)[0]) {
hashp->cbucket++;
hashp->cpage = NULL;
}
}
}
return (totlen);
}
/*
* Fill in the key and data for this big pair.
*/
extern int
__big_keydata(
HTAB *hashp,
BUFHEAD *bufp,
DBT *key, DBT *val,
int set)
{
key->size = collect_key(hashp, bufp, 0, val, set);
if (key->size == (size_t)-1)
return (-1);
key->data = (uint8 *)hashp->tmp_key;
return (0);
}
/*
* Count how big the total key size is by recursing through the pages. Then
* collect the data, allocate a buffer and copy the key as you recurse up.
*/
static int
collect_key(
HTAB *hashp,
BUFHEAD *bufp,
int len,
DBT *val,
int set)
{
BUFHEAD *xbp;
char *p;
int mylen, totlen;
uint16 *bp, save_addr;
p = bufp->page;
bp = (uint16 *)p;
mylen = hashp->BSIZE - bp[1];
save_addr = bufp->addr;
totlen = len + mylen;
if (bp[2] == FULL_KEY || bp[2] == FULL_KEY_DATA) { /* End of Key. */
if (hashp->tmp_key != NULL)
free(hashp->tmp_key);
if ((hashp->tmp_key = (char *)malloc((size_t)totlen)) == NULL)
return (-1);
if (__big_return(hashp, bufp, 1, val, set))
return (-1);
} else {
xbp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
if (!xbp || ((totlen =
collect_key(hashp, xbp, totlen, val, set)) < 1))
return (-1);
}
if (bufp->addr != save_addr) {
errno = EINVAL; /* MIS -- OUT OF BUFFERS */
return (-1);
}
memmove(&hashp->tmp_key[len], (bufp->page) + bp[1], (size_t)mylen);
return (totlen);
}
/*
* Returns:
* 0 => OK
* -1 => error
*/
extern int
__big_split(
HTAB *hashp,
BUFHEAD *op, /* Pointer to where to put keys that go in old bucket */
BUFHEAD *np, /* Pointer to new bucket page */
/* Pointer to first page containing the big key/data */
BUFHEAD *big_keyp,
uint32 addr, /* Address of big_keyp */
uint32 obucket,/* Old Bucket */
SPLIT_RETURN *ret)
{
register BUFHEAD *tmpp;
register uint16 *tp;
BUFHEAD *bp;
DBT key, val;
uint32 change;
uint16 free_space, n, off;
bp = big_keyp;
/* Now figure out where the big key/data goes */
if (__big_keydata(hashp, big_keyp, &key, &val, 0))
return (-1);
change = (__call_hash(hashp,(char*) key.data, key.size) != obucket);
if ((ret->next_addr = __find_last_page(hashp, &big_keyp))) {
if (!(ret->nextp =
__get_buf(hashp, ret->next_addr, big_keyp, 0)))
return (-1);;
} else
ret->nextp = NULL;
/* Now make one of np/op point to the big key/data pair */
#ifdef DEBUG
assert(np->ovfl == NULL);
#endif
if (change)
tmpp = np;
else
tmpp = op;
tmpp->flags |= BUF_MOD;
#ifdef DEBUG1
(void)fprintf(stderr,
"BIG_SPLIT: %d->ovfl was %d is now %d\n", tmpp->addr,
(tmpp->ovfl ? tmpp->ovfl->addr : 0), (bp ? bp->addr : 0));
#endif
tmpp->ovfl = bp; /* one of op/np point to big_keyp */
tp = (uint16 *)tmpp->page;
#if 0 /* this get's tripped on database corrupted error */
assert(FREESPACE(tp) >= OVFLSIZE);
#endif
if(FREESPACE(tp) < OVFLSIZE)
return(DATABASE_CORRUPTED_ERROR);
n = tp[0];
off = OFFSET(tp);
free_space = FREESPACE(tp);
tp[++n] = (uint16)addr;
tp[++n] = OVFLPAGE;
tp[0] = n;
OFFSET(tp) = off;
FREESPACE(tp) = free_space - OVFLSIZE;
/*
* Finally, set the new and old return values. BIG_KEYP contains a
* pointer to the last page of the big key_data pair. Make sure that
* big_keyp has no following page (2 elements) or create an empty
* following page.
*/
ret->newp = np;
ret->oldp = op;
tp = (uint16 *)big_keyp->page;
big_keyp->flags |= BUF_MOD;
if (tp[0] > 2) {
/*
* There may be either one or two offsets on this page. If
* there is one, then the overflow page is linked on normally
* and tp[4] is OVFLPAGE. If there are two, tp[4] contains
* the second offset and needs to get stuffed in after the
* next overflow page is added.
*/
n = tp[4];
free_space = FREESPACE(tp);
off = OFFSET(tp);
tp[0] -= 2;
FREESPACE(tp) = free_space + OVFLSIZE;
OFFSET(tp) = off;
tmpp = __add_ovflpage(hashp, big_keyp);
if (!tmpp)
return (-1);
tp[4] = n;
} else
tmpp = big_keyp;
if (change)
ret->newp = tmpp;
else
ret->oldp = tmpp;
return (0);
}

211
mozilla/dbm/src/h_func.c Normal file
View File

@@ -0,0 +1,211 @@
/*-
* Copyright (c) 1990, 1993
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Margo Seltzer.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
#if defined(LIBC_SCCS) && !defined(lint)
static char sccsid[] = "@(#)hash_func.c 8.2 (Berkeley) 2/21/94";
#endif /* LIBC_SCCS and not lint */
#include "watcomfx.h"
#ifndef macintosh
#include <sys/types.h>
#endif
#include "mcom_db.h"
#include "hash.h"
#include "page.h"
/* #include "extern.h" */
#if 0
static uint32 hash1 __P((const void *, size_t));
static uint32 hash2 __P((const void *, size_t));
static uint32 hash3 __P((const void *, size_t));
#endif
static uint32 hash4 __P((const void *, size_t));
/* Global default hash function */
uint32 (*__default_hash) __P((const void *, size_t)) = hash4;
/*
* HASH FUNCTIONS
*
* Assume that we've already split the bucket to which this key hashes,
* calculate that bucket, and check that in fact we did already split it.
*
* This came from ejb's hsearch.
*/
#define PRIME1 37
#define PRIME2 1048583
#if 0
static uint32
hash1(const void *keyarg, register size_t len)
{
register const uint8 *key;
register uint32 h;
/* Convert string to integer */
for (key = (const uint8 *)keyarg, h = 0; len--;)
h = h * PRIME1 ^ (*key++ - ' ');
h %= PRIME2;
return (h);
}
/*
* Phong's linear congruential hash
*/
#define dcharhash(h, c) ((h) = 0x63c63cd9*(h) + 0x9c39c33d + (c))
static uint32
hash2(const void *keyarg, size_t len)
{
register const uint8 *e, *key;
register uint32 h;
register uint8 c;
key = (const uint8 *)keyarg;
e = key + len;
for (h = 0; key != e;) {
c = *key++;
if (!c && key > e)
break;
dcharhash(h, c);
}
return (h);
}
/*
* This is INCREDIBLY ugly, but fast. We break the string up into 8 byte
* units. On the first time through the loop we get the "leftover bytes"
* (strlen % 8). On every other iteration, we perform 8 HASHC's so we handle
* all 8 bytes. Essentially, this saves us 7 cmp & branch instructions. If
* this routine is heavily used enough, it's worth the ugly coding.
*
* OZ's original sdbm hash
*/
static uint32
hash3(const void *keyarg, register size_t len)
{
register const uint8 *key;
register size_t loop;
register uint32 h;
#define HASHC h = *key++ + 65599 * h
h = 0;
key = (const uint8 *)keyarg;
if (len > 0) {
loop = (len + 8 - 1) >> 3;
switch (len & (8 - 1)) {
case 0:
do {
HASHC;
/* FALLTHROUGH */
case 7:
HASHC;
/* FALLTHROUGH */
case 6:
HASHC;
/* FALLTHROUGH */
case 5:
HASHC;
/* FALLTHROUGH */
case 4:
HASHC;
/* FALLTHROUGH */
case 3:
HASHC;
/* FALLTHROUGH */
case 2:
HASHC;
/* FALLTHROUGH */
case 1:
HASHC;
} while (--loop);
}
}
return (h);
}
#endif /* 0 */
/* Hash function from Chris Torek. */
static uint32
hash4(const void *keyarg, register size_t len)
{
register const uint8 *key;
register size_t loop;
register uint32 h;
#define HASH4a h = (h << 5) - h + *key++;
#define HASH4b h = (h << 5) + h + *key++;
#define HASH4 HASH4b
h = 0;
key = (const uint8 *)keyarg;
if (len > 0) {
loop = (len + 8 - 1) >> 3;
switch (len & (8 - 1)) {
case 0:
do {
HASH4;
/* FALLTHROUGH */
case 7:
HASH4;
/* FALLTHROUGH */
case 6:
HASH4;
/* FALLTHROUGH */
case 5:
HASH4;
/* FALLTHROUGH */
case 4:
HASH4;
/* FALLTHROUGH */
case 3:
HASH4;
/* FALLTHROUGH */
case 2:
HASH4;
/* FALLTHROUGH */
case 1:
HASH4;
} while (--loop);
}
}
return (h);
}

56
mozilla/dbm/src/h_log2.c Normal file
View File

@@ -0,0 +1,56 @@
/*-
* Copyright (c) 1990, 1993, 1994
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Margo Seltzer.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
#if defined(LIBC_SCCS) && !defined(lint)
static char sccsid[] = "@(#)hash_log2.c 8.2 (Berkeley) 5/31/94";
#endif /* LIBC_SCCS and not lint */
#include "watcomfx.h"
#include <stdio.h>
#ifndef macintosh
#include <sys/types.h>
#endif
#include "mcom_db.h"
uint32 __log2(uint32 num)
{
register uint32 i, limit;
limit = 1;
for (i = 0; limit < num; limit = limit << 1, i++) {}
return (i);
}

1290
mozilla/dbm/src/h_page.c Normal file

File diff suppressed because it is too large Load Diff

1179
mozilla/dbm/src/hash.c Normal file

File diff suppressed because it is too large Load Diff

414
mozilla/dbm/src/hash_buf.c Normal file
View File

@@ -0,0 +1,414 @@
/*-
* Copyright (c) 1990, 1993, 1994
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Margo Seltzer.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
#if defined(LIBC_SCCS) && !defined(lint)
static char sccsid[] = "@(#)hash_buf.c 8.5 (Berkeley) 7/15/94";
#endif /* LIBC_SCCS and not lint */
#include "watcomfx.h"
/*
* PACKAGE: hash
*
* DESCRIPTION:
* Contains buffer management
*
* ROUTINES:
* External
* __buf_init
* __get_buf
* __buf_free
* __reclaim_buf
* Internal
* newbuf
*/
#if !defined(_WIN32) && !defined(_WINDOWS) && !defined(macintosh) && !defined(XP_OS2_VACPP)
#include <sys/param.h>
#endif
#include <errno.h>
#include <stddef.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#ifdef DEBUG
#include <assert.h>
#endif
#include "mcom_db.h"
#include "hash.h"
#include "page.h"
/* #include "extern.h" */
static BUFHEAD *newbuf __P((HTAB *, uint32, BUFHEAD *));
/* Unlink B from its place in the lru */
#define BUF_REMOVE(B) { \
(B)->prev->next = (B)->next; \
(B)->next->prev = (B)->prev; \
}
/* Insert B after P */
#define BUF_INSERT(B, P) { \
(B)->next = (P)->next; \
(B)->prev = (P); \
(P)->next = (B); \
(B)->next->prev = (B); \
}
#define MRU hashp->bufhead.next
#define LRU hashp->bufhead.prev
#define MRU_INSERT(B) BUF_INSERT((B), &hashp->bufhead)
#define LRU_INSERT(B) BUF_INSERT((B), LRU)
/*
* We are looking for a buffer with address "addr". If prev_bp is NULL, then
* address is a bucket index. If prev_bp is not NULL, then it points to the
* page previous to an overflow page that we are trying to find.
*
* CAVEAT: The buffer header accessed via prev_bp's ovfl field may no longer
* be valid. Therefore, you must always verify that its address matches the
* address you are seeking.
*/
extern BUFHEAD *
__get_buf(HTAB *hashp, uint32 addr, BUFHEAD *prev_bp, int newpage)
/* If prev_bp set, indicates a new overflow page. */
{
register BUFHEAD *bp;
register uint32 is_disk_mask;
register int is_disk, segment_ndx = 0;
SEGMENT segp = 0;
is_disk = 0;
is_disk_mask = 0;
if (prev_bp) {
bp = prev_bp->ovfl;
if (!bp || (bp->addr != addr))
bp = NULL;
if (!newpage)
is_disk = BUF_DISK;
} else {
/* Grab buffer out of directory */
segment_ndx = addr & (hashp->SGSIZE - 1);
/* valid segment ensured by __call_hash() */
segp = hashp->dir[addr >> hashp->SSHIFT];
#ifdef DEBUG
assert(segp != NULL);
#endif
bp = PTROF(segp[segment_ndx]);
is_disk_mask = ISDISK(segp[segment_ndx]);
is_disk = is_disk_mask || !hashp->new_file;
}
if (!bp) {
bp = newbuf(hashp, addr, prev_bp);
if (!bp)
return(NULL);
if(__get_page(hashp, bp->page, addr, !prev_bp, is_disk, 0))
{
/* free bp and its page */
if(prev_bp)
{
/* if prev_bp is set then the new page that
* failed is hooked onto prev_bp as an overflow page.
* if we don't remove the pointer to the bad page
* we may try and access it later and we will die
* horribly because it will have already been
* free'd and overwritten with bogus data.
*/
prev_bp->ovfl = NULL;
}
BUF_REMOVE(bp);
free(bp->page);
free(bp);
return (NULL);
}
if (!prev_bp)
{
#if 0
/* 16 bit windows and mac can't handle the
* oring of the is disk flag.
*/
segp[segment_ndx] =
(BUFHEAD *)((ptrdiff_t)bp | is_disk_mask);
#else
/* set the is_disk thing inside the structure
*/
bp->is_disk = is_disk_mask;
segp[segment_ndx] = bp;
#endif
}
} else {
BUF_REMOVE(bp);
MRU_INSERT(bp);
}
return (bp);
}
/*
* We need a buffer for this page. Either allocate one, or evict a resident
* one (if we have as many buffers as we're allowed) and put this one in.
*
* If newbuf finds an error (returning NULL), it also sets errno.
*/
static BUFHEAD *
newbuf(HTAB *hashp, uint32 addr, BUFHEAD *prev_bp)
{
register BUFHEAD *bp; /* The buffer we're going to use */
register BUFHEAD *xbp; /* Temp pointer */
register BUFHEAD *next_xbp;
SEGMENT segp;
int segment_ndx;
uint16 oaddr, *shortp;
oaddr = 0;
bp = LRU;
/*
* If LRU buffer is pinned, the buffer pool is too small. We need to
* allocate more buffers.
*/
if (hashp->nbufs || (bp->flags & BUF_PIN)) {
/* Allocate a new one */
if ((bp = (BUFHEAD *)malloc(sizeof(BUFHEAD))) == NULL)
return (NULL);
/* this memset is supposedly unnecessary but lets add
* it anyways.
*/
memset(bp, 0xff, sizeof(BUFHEAD));
if ((bp->page = (char *)malloc((size_t)hashp->BSIZE)) == NULL) {
free(bp);
return (NULL);
}
/* this memset is supposedly unnecessary but lets add
* it anyways.
*/
memset(bp->page, 0xff, (size_t)hashp->BSIZE);
if (hashp->nbufs)
hashp->nbufs--;
} else {
/* Kick someone out */
BUF_REMOVE(bp);
/*
* If this is an overflow page with addr 0, it's already been
* flushed back in an overflow chain and initialized.
*/
if ((bp->addr != 0) || (bp->flags & BUF_BUCKET)) {
/*
* Set oaddr before __put_page so that you get it
* before bytes are swapped.
*/
shortp = (uint16 *)bp->page;
if (shortp[0])
{
if(shortp[0] > (hashp->BSIZE / sizeof(uint16)))
{
return(NULL);
}
oaddr = shortp[shortp[0] - 1];
}
if ((bp->flags & BUF_MOD) && __put_page(hashp, bp->page,
bp->addr, (int)IS_BUCKET(bp->flags), 0))
return (NULL);
/*
* Update the pointer to this page (i.e. invalidate it).
*
* If this is a new file (i.e. we created it at open
* time), make sure that we mark pages which have been
* written to disk so we retrieve them from disk later,
* rather than allocating new pages.
*/
if (IS_BUCKET(bp->flags)) {
segment_ndx = bp->addr & (hashp->SGSIZE - 1);
segp = hashp->dir[bp->addr >> hashp->SSHIFT];
#ifdef DEBUG
assert(segp != NULL);
#endif
if (hashp->new_file &&
((bp->flags & BUF_MOD) ||
ISDISK(segp[segment_ndx])))
segp[segment_ndx] = (BUFHEAD *)BUF_DISK;
else
segp[segment_ndx] = NULL;
}
/*
* Since overflow pages can only be access by means of
* their bucket, free overflow pages associated with
* this bucket.
*/
for (xbp = bp; xbp->ovfl;) {
next_xbp = xbp->ovfl;
xbp->ovfl = 0;
xbp = next_xbp;
/* leave pinned pages alone, we are still using
* them. */
if (xbp->flags & BUF_PIN) {
continue;
}
/* Check that ovfl pointer is up date. */
if (IS_BUCKET(xbp->flags) ||
(oaddr != xbp->addr))
break;
shortp = (uint16 *)xbp->page;
if (shortp[0])
{
/* LJM is the number of reported
* pages way too much?
*/
if(shortp[0] > hashp->BSIZE/sizeof(uint16))
return NULL;
/* set before __put_page */
oaddr = shortp[shortp[0] - 1];
}
if ((xbp->flags & BUF_MOD) && __put_page(hashp,
xbp->page, xbp->addr, 0, 0))
return (NULL);
xbp->addr = 0;
xbp->flags = 0;
BUF_REMOVE(xbp);
LRU_INSERT(xbp);
}
}
}
/* Now assign this buffer */
bp->addr = addr;
#ifdef DEBUG1
(void)fprintf(stderr, "NEWBUF1: %d->ovfl was %d is now %d\n",
bp->addr, (bp->ovfl ? bp->ovfl->addr : 0), 0);
#endif
bp->ovfl = NULL;
if (prev_bp) {
/*
* If prev_bp is set, this is an overflow page, hook it in to
* the buffer overflow links.
*/
#ifdef DEBUG1
(void)fprintf(stderr, "NEWBUF2: %d->ovfl was %d is now %d\n",
prev_bp->addr, (prev_bp->ovfl ? bp->ovfl->addr : 0),
(bp ? bp->addr : 0));
#endif
prev_bp->ovfl = bp;
bp->flags = 0;
} else
bp->flags = BUF_BUCKET;
MRU_INSERT(bp);
return (bp);
}
extern void __buf_init(HTAB *hashp, int32 nbytes)
{
BUFHEAD *bfp;
int npages;
bfp = &(hashp->bufhead);
npages = (nbytes + hashp->BSIZE - 1) >> hashp->BSHIFT;
npages = PR_MAX(npages, MIN_BUFFERS);
hashp->nbufs = npages;
bfp->next = bfp;
bfp->prev = bfp;
/*
* This space is calloc'd so these are already null.
*
* bfp->ovfl = NULL;
* bfp->flags = 0;
* bfp->page = NULL;
* bfp->addr = 0;
*/
}
extern int
__buf_free(HTAB *hashp, int do_free, int to_disk)
{
BUFHEAD *bp;
int status = -1;
/* Need to make sure that buffer manager has been initialized */
if (!LRU)
return (0);
for (bp = LRU; bp != &hashp->bufhead;) {
/* Check that the buffer is valid */
if (bp->addr || IS_BUCKET(bp->flags)) {
if (to_disk && (bp->flags & BUF_MOD) &&
(status = __put_page(hashp, bp->page,
bp->addr, IS_BUCKET(bp->flags), 0))) {
if (do_free) {
if (bp->page)
free(bp->page);
BUF_REMOVE(bp);
free(bp);
}
return (status);
}
}
/* Check if we are freeing stuff */
if (do_free) {
if (bp->page)
free(bp->page);
BUF_REMOVE(bp);
free(bp);
bp = LRU;
} else
bp = bp->prev;
}
return (0);
}
extern void
__reclaim_buf(HTAB *hashp, BUFHEAD *bp)
{
bp->ovfl = 0;
bp->addr = 0;
bp->flags = 0;
BUF_REMOVE(bp);
LRU_INSERT(bp);
}

108
mozilla/dbm/src/hsearch.c Normal file
View File

@@ -0,0 +1,108 @@
/*-
* Copyright (c) 1990, 1993
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Margo Seltzer.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
#if defined(LIBC_SCCS) && !defined(lint)
static char sccsid[] = "@(#)hsearch.c 8.4 (Berkeley) 7/21/94";
#endif /* LIBC_SCCS and not lint */
#include "watcomfx.h"
#ifndef macintosh
#include <sys/types.h>
#endif
#include <fcntl.h>
#include <string.h>
#include "mcom_db.h"
#include "hsearch.h"
static DB *dbp = NULL;
static ENTRY retval;
extern int
hcreate(uint nel)
{
HASHINFO info;
info.nelem = nel;
info.bsize = 256;
info.ffactor = 8;
info.cachesize = 0;
info.hash = NULL;
info.lorder = 0;
dbp = (DB *)__hash_open(NULL, O_CREAT | O_RDWR, 0600, &info, 0);
return ((int)dbp);
}
extern ENTRY *
hsearch(ENTRY item, ACTION action)
{
DBT key, val;
int status;
if (!dbp)
return (NULL);
key.data = (uint8 *)item.key;
key.size = strlen(item.key) + 1;
if (action == ENTER) {
val.data = (uint8 *)item.data;
val.size = strlen(item.data) + 1;
status = (dbp->put)(dbp, &key, &val, R_NOOVERWRITE);
if (status)
return (NULL);
} else {
/* FIND */
status = (dbp->get)(dbp, &key, &val, 0);
if (status)
return (NULL);
else
item.data = (char *)val.data;
}
retval.key = item.key;
retval.data = item.data;
return (&retval);
}
extern void
hdestroy()
{
if (dbp) {
(void)(dbp->close)(dbp);
dbp = NULL;
}
}

150
mozilla/dbm/src/memmove.c Normal file
View File

@@ -0,0 +1,150 @@
#if defined(__sun) && !defined(__SVR4)
/*-
* Copyright (c) 1990, 1993
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Chris Torek.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
#if defined(LIBC_SCCS) && !defined(lint)
static char sccsid[] = "@(#)bcopy.c 8.1 (Berkeley) 6/4/93";
#endif /* LIBC_SCCS and not lint */
#include "watcomfx.h"
#ifdef HAVE_SYS_CDEFS_H
#include <sys/cdefs.h>
#else
#include "cdefs.h"
#endif
#include <string.h>
/*
* sizeof(word) MUST BE A POWER OF TWO
* SO THAT wmask BELOW IS ALL ONES
*/
typedef int word; /* "word" used for optimal copy speed */
#define wsize sizeof(word)
#define wmask (wsize - 1)
/*
* Copy a block of memory, handling overlap.
* This is the routine that actually implements
* (the portable versions of) bcopy, memcpy, and memmove.
*/
#ifdef MEMCOPY
void *
memcpy(dst0, src0, length)
#else
#ifdef MEMMOVE
void *
memmove(dst0, src0, length)
#else
void
bcopy(src0, dst0, length)
#endif
#endif
void *dst0;
const void *src0;
register size_t length;
{
register char *dst = dst0;
register const char *src = src0;
register size_t t;
if (length == 0 || dst == src) /* nothing to do */
goto done;
/*
* Macros: loop-t-times; and loop-t-times, t>0
*/
#define TLOOP(s) if (t) TLOOP1(s)
#define TLOOP1(s) do { s; } while (--t)
if ((unsigned long)dst < (unsigned long)src) {
/*
* Copy forward.
*/
t = (int)src; /* only need low bits */
if ((t | (int)dst) & wmask) {
/*
* Try to align operands. This cannot be done
* unless the low bits match.
*/
if ((t ^ (int)dst) & wmask || length < wsize)
t = length;
else
t = wsize - (t & wmask);
length -= t;
TLOOP1(*dst++ = *src++);
}
/*
* Copy whole words, then mop up any trailing bytes.
*/
t = length / wsize;
TLOOP(*(word *)dst = *(word *)src; src += wsize; dst += wsize);
t = length & wmask;
TLOOP(*dst++ = *src++);
} else {
/*
* Copy backwards. Otherwise essentially the same.
* Alignment works as before, except that it takes
* (t&wmask) bytes to align, not wsize-(t&wmask).
*/
src += length;
dst += length;
t = (int)src;
if ((t | (int)dst) & wmask) {
if ((t ^ (int)dst) & wmask || length <= wsize)
t = length;
else
t &= wmask;
length -= t;
TLOOP1(*--dst = *--src);
}
t = length / wsize;
TLOOP(src -= wsize; dst -= wsize; *(word *)dst = *(word *)src);
t = length & wmask;
TLOOP(*--dst = *--src);
}
done:
#if defined(MEMCOPY) || defined(MEMMOVE)
return (dst0);
#else
return;
#endif
}
#endif /* no __sgi */
/* Some compilers don't like an empty source file. */
static int dummy = 0;

166
mozilla/dbm/src/mktemp.c Normal file
View File

@@ -0,0 +1,166 @@
/*
* Copyright (c) 1987, 1993
* The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
#if defined(LIBC_SCCS) && !defined(lint)
static char sccsid[] = "@(#)mktemp.c 8.1 (Berkeley) 6/4/93";
#endif /* LIBC_SCCS and not lint */
#include "watcomfx.h"
#ifdef macintosh
#include <unix.h>
#else
#include <sys/types.h>
#include <sys/stat.h>
#endif
#include <fcntl.h>
#include <errno.h>
#include <stdio.h>
#include <ctype.h>
#include "mcom_db.h"
#if !defined(_WINDOWS) && !defined(XP_OS2_VACPP)
#include <unistd.h>
#endif
#ifdef XP_OS2_VACPP
#include <process.h>
#endif
#ifdef _WINDOWS
#include <process.h>
#include "winfile.h"
#endif
static int _gettemp(char *path, register int *doopen, int extraFlags);
int
mkstemp(char *path)
{
#ifdef XP_OS2
FILE *temp = tmpfile();
return (temp ? fileno(temp) : -1);
#else
int fd;
return (_gettemp(path, &fd, 0) ? fd : -1);
#endif
}
int
mkstempflags(char *path, int extraFlags)
{
int fd;
return (_gettemp(path, &fd, extraFlags) ? fd : -1);
}
char *
mktemp(char *path)
{
return(_gettemp(path, (int *)NULL, 0) ? path : (char *)NULL);
}
/* NB: This routine modifies its input string, and does not always restore it.
** returns 1 on success, 0 on failure.
*/
static int
_gettemp(char *path, register int *doopen, int extraFlags)
{
#if !defined(_WINDOWS) || defined(_WIN32)
extern int errno;
#endif
register char *start, *trv;
struct stat sbuf;
unsigned int pid;
pid = getpid();
for (trv = path; *trv; ++trv); /* extra X's get set to 0's */
while (*--trv == 'X') {
*trv = (pid % 10) + '0';
pid /= 10;
}
/*
* check the target directory; if you have six X's and it
* doesn't exist this runs for a *very* long time.
*/
for (start = trv + 1;; --trv) {
char saved;
if (trv <= path)
break;
saved = *trv;
if (saved == '/' || saved == '\\') {
int rv;
*trv = '\0';
rv = stat(path, &sbuf);
*trv = saved;
if (rv)
return(0);
if (!S_ISDIR(sbuf.st_mode)) {
errno = ENOTDIR;
return(0);
}
break;
}
}
for (;;) {
if (doopen) {
if ((*doopen =
open(path, O_CREAT|O_EXCL|O_RDWR|extraFlags, 0600)) >= 0)
return(1);
if (errno != EEXIST)
return(0);
}
else if (stat(path, &sbuf))
return(errno == ENOENT ? 1 : 0);
/* tricky little algorithm for backward compatibility */
for (trv = start;;) {
if (!*trv)
return(0);
if (*trv == 'z')
*trv++ = 'a';
else {
if (isdigit(*trv))
*trv = 'a';
else
++*trv;
break;
}
}
}
/*NOTREACHED*/
}

195
mozilla/dbm/src/ndbm.c Normal file
View File

@@ -0,0 +1,195 @@
/*-
* Copyright (c) 1990, 1993
* The Regents of the University of California. All rights reserved.
*
* This code is derived from software contributed to Berkeley by
* Margo Seltzer.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
#if defined(LIBC_SCCS) && !defined(lint)
static char sccsid[] = "@(#)ndbm.c 8.4 (Berkeley) 7/21/94";
#endif /* LIBC_SCCS and not lint */
#include "watcomfx.h"
/*
* This package provides a dbm compatible interface to the new hashing
* package described in db(3).
*/
#if !defined(_WIN32) && !defined(_WINDOWS) && !defined(XP_OS2_VACPP)
#include <sys/param.h>
#endif
#if defined(__linux)
#include <linux/limits.h>
#endif
#include <stdio.h>
#include <string.h>
#include "ndbm.h"
#include "hash.h"
/*
* Returns:
* *DBM on success
* NULL on failure
*/
extern DBM *
dbm_open(const char *file, int flags, int mode)
{
HASHINFO info;
char path[MAXPATHLEN];
info.bsize = 4096;
info.ffactor = 40;
info.nelem = 1;
info.cachesize = 0;
info.hash = NULL;
info.lorder = 0;
(void)strcpy(path, file);
(void)strcat(path, DBM_SUFFIX);
return ((DBM *)__hash_open(path, flags, mode, &info, 0));
}
extern void
dbm_close(DBM *db)
{
(void)(db->close)(db);
}
/*
* Returns:
* DATUM on success
* NULL on failure
*/
extern datum
dbm_fetch(DBM *db, datum key)
{
datum retval;
int status;
status = (db->get)(db, (DBT *)&key, (DBT *)&retval, 0);
if (status) {
retval.dptr = NULL;
retval.dsize = 0;
}
return (retval);
}
/*
* Returns:
* DATUM on success
* NULL on failure
*/
extern datum
dbm_firstkey(DBM *db)
{
int status;
datum retdata, retkey;
status = (db->seq)(db, (DBT *)&retkey, (DBT *)&retdata, R_FIRST);
if (status)
retkey.dptr = NULL;
return (retkey);
}
/*
* Returns:
* DATUM on success
* NULL on failure
*/
extern datum
dbm_nextkey(DBM *db)
{
int status;
datum retdata, retkey;
status = (db->seq)(db, (DBT *)&retkey, (DBT *)&retdata, R_NEXT);
if (status)
retkey.dptr = NULL;
return (retkey);
}
/*
* Returns:
* 0 on success
* <0 failure
*/
extern int
dbm_delete(DBM *db, datum key)
{
int status;
status = (db->del)(db, (DBT *)&key, 0);
if (status)
return (-1);
else
return (0);
}
/*
* Returns:
* 0 on success
* <0 failure
* 1 if DBM_INSERT and entry exists
*/
extern int
dbm_store(DBM *db, datum key, datum content, int flags)
{
return ((db->put)(db, (DBT *)&key, (DBT *)&content,
(flags == DBM_INSERT) ? R_NOOVERWRITE : 0));
}
extern int
dbm_error(DBM *db)
{
HTAB *hp;
hp = (HTAB *)db->internal;
return (hp->dbmerrno);
}
extern int
dbm_clearerr(DBM *db)
{
HTAB *hp;
hp = (HTAB *)db->internal;
hp->dbmerrno = 0;
return (0);
}
extern int
dbm_dirfno(DBM *db)
{
return(((HTAB *)db->internal)->fp);
}

View File

@@ -0,0 +1,75 @@
#ifndef HAVE_SNPRINTF
#include "watcomfx.h"
#include <sys/types.h>
#include <stddef.h>
#include <stdio.h>
#ifdef HAVE_SYS_CDEFS_H
#include <sys/cdefs.h>
#else
#include "cdefs.h"
#endif
#include "prtypes.h"
#include <ncompat.h>
/* The OS/2 VAC compiler doesn't appear to define __STDC__ and won't let us define it either */
#if defined(__STDC__) || defined(XP_OS2_VACPP)
#include <stdarg.h>
#else
#include <varargs.h>
#endif
int
#if defined(__STDC__) || defined(XP_OS2_VACPP)
snprintf(char *str, size_t n, const char *fmt, ...)
#else
snprintf(str, n, fmt, va_alist)
char *str;
size_t n;
const char *fmt;
va_dcl
#endif
{
va_list ap;
#ifdef VSPRINTF_CHARSTAR
char *rp;
#else
int rval;
#endif
#if defined(__STDC__) || defined(XP_OS2_VACPP)
va_start(ap, fmt);
#else
va_start(ap);
#endif
#ifdef VSPRINTF_CHARSTAR
rp = vsprintf(str, fmt, ap);
va_end(ap);
return (strlen(rp));
#else
rval = vsprintf(str, fmt, ap);
va_end(ap);
return (rval);
#endif
}
int
vsnprintf(str, n, fmt, ap)
char *str;
size_t n;
const char *fmt;
va_list ap;
{
#ifdef VSPRINTF_CHARSTAR
return (strlen(vsprintf(str, fmt, ap)));
#else
return (vsprintf(str, fmt, ap));
#endif
}
#endif /* HAVE_SNPRINTF */
/* Some compilers don't like an empty source file. */
static int dummy = 0;

View File

@@ -0,0 +1,78 @@
/*
* Copyright (c) 1988, 1993
* The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
* This product includes software developed by the University of
* California, Berkeley and its contributors.
* 4. Neither the name of the University nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
#if defined(LIBC_SCCS) && !defined(lint)
static char sccsid[] = "@(#)strerror.c 8.1 (Berkeley) 6/4/93";
#endif /* LIBC_SCCS and not lint */
#include "watcomfx.h"
#include <string.h>
#ifdef _DLL
#define sys_nerr (*_sys_nerr_dll)
#endif
#ifndef HAVE_STRERROR
#ifndef _AFXDLL
char *
strerror(num)
int num;
{
extern int sys_nerr;
extern char *sys_errlist[];
#define UPREFIX "Unknown error: "
static char ebuf[40] = UPREFIX; /* 64-bit number + slop */
register unsigned int errnum;
register char *p, *t;
char tmp[40];
errnum = num; /* convert to unsigned */
if (errnum < sys_nerr)
return(sys_errlist[errnum]);
/* Do this by hand, so we don't include stdio(3). */
t = tmp;
do {
*t++ = "0123456789"[errnum % 10];
} while (errnum /= 10);
for (p = ebuf + sizeof(UPREFIX) - 1;;) {
*p++ = *--t;
if (t <= tmp)
break;
}
return(ebuf);
}
#endif
#endif /* !HAVE_STRERROR */

View File

@@ -0,0 +1,62 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1998
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
DEPTH = ../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
MODULE = dbm
PACKAGE_FILE = dbmtest.pkg
PROGRAM = lots$(BIN_SUFFIX)
CSRCS = lots.c
ifeq ($(OS_ARCH),WINNT)
EXTRA_DSO_LIBS = dbm$(MOZ_BITS)
else
EXTRA_DSO_LIBS = mozdbm_s
endif
LIBS = $(EXTRA_DSO_LIBS)
include $(topsrcdir)/config/rules.mk

View File

@@ -0,0 +1,2 @@
[gecko-tests]
dist/bin/lots@BINS@

638
mozilla/dbm/tests/lots.c Normal file
View File

@@ -0,0 +1,638 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* ***** BEGIN LICENSE BLOCK *****
* Version: MPL 1.1/GPL 2.0/LGPL 2.1
*
* The contents of this file are subject to the Mozilla Public License Version
* 1.1 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS" basis,
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
* for the specific language governing rights and limitations under the
* License.
*
* The Original Code is mozilla.org code.
*
* The Initial Developer of the Original Code is
* Netscape Communications Corporation.
* Portions created by the Initial Developer are Copyright (C) 1998
* the Initial Developer. All Rights Reserved.
*
* Contributor(s):
*
* Alternatively, the contents of this file may be used under the terms of
* either the GNU General Public License Version 2 or later (the "GPL"), or
* the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
* in which case the provisions of the GPL or the LGPL are applicable instead
* of those above. If you wish to allow use of your version of this file only
* under the terms of either the GPL or the LGPL, and not to allow others to
* use your version of this file under the terms of the MPL, indicate your
* decision by deleting the provisions above and replace them with the notice
* and other provisions required by the GPL or the LGPL. If you do not delete
* the provisions above, a recipient may use your version of this file under
* the terms of any one of the MPL, the GPL or the LGPL.
*
* ***** END LICENSE BLOCK ***** */
/* use sequental numbers printed to strings
* to store lots and lots of entries in the
* database.
*
* Start with 100 entries, put them and then
* read them out. Then delete the first
* half and verify that all of the first half
* is gone and then verify that the second
* half is still there.
* Then add the first half back and verify
* again. Then delete the middle third
* and verify again.
* Then increase the size by 1000 and do
* the whole add delete thing again.
*
* The data for each object is the number string translated
* to hex and replicated a random number of times. The
* number of times that the data is replicated is the first
* int32 in the data.
*/
#include <stdio.h>
#include <stdlib.h>
#ifdef STDC_HEADERS
#include <stdarg.h>
#else
#include <varargs.h>
#endif
#ifdef HAVE_MEMORY_H
#include <memory.h>
#endif
#include <string.h>
#include <assert.h>
#include "mcom_db.h"
DB *database=0;
int MsgPriority=5;
#if defined(_WINDOWS) && !defined(WIN32)
#define int32 long
#define uint32 unsigned long
#else
#define int32 int
#define uint32 unsigned int
#endif
typedef enum {
USE_LARGE_KEY,
USE_SMALL_KEY
} key_type_enum;
#define TraceMe(priority, msg) \
do { \
if(priority <= MsgPriority) \
{ \
ReportStatus msg; \
} \
} while(0)
int
ReportStatus(char *string, ...)
{
va_list args;
#ifdef STDC_HEADERS
va_start(args, string);
#else
va_start(args);
#endif
vfprintf(stderr, string, args);
va_end(args);
fprintf (stderr, "\n");
return(0);
}
int
ReportError(char *string, ...)
{
va_list args;
#ifdef STDC_HEADERS
va_start(args, string);
#else
va_start(args);
#endif
fprintf (stderr, "\n ");
vfprintf(stderr, string, args);
fprintf (stderr, "\n");
va_end(args);
return(0);
}
DBT * MakeLargeKey(int32 num)
{
int32 low_bits;
static DBT rv;
static char *string_rv=0;
int rep_char;
size_t size;
if(string_rv)
free(string_rv);
/* generate a really large text key derived from
* an int32
*/
low_bits = (num % 10000) + 1;
/* get the repeat char from the low 26 */
rep_char = (char) ((low_bits % 26) + 'a');
/* malloc a string low_bits wide */
size = low_bits*sizeof(char);
string_rv = (char *)malloc(size);
memset(string_rv, rep_char, size);
rv.data = string_rv;
rv.size = size;
return(&rv);
}
DBT * MakeSmallKey(int32 num)
{
static DBT rv;
static char data_string[64];
rv.data = data_string;
sprintf(data_string, "%ld", (long)num);
rv.size = strlen(data_string);
return(&rv);
}
DBT * GenKey(int32 num, key_type_enum key_type)
{
DBT *key;
switch(key_type)
{
case USE_LARGE_KEY:
key = MakeLargeKey(num);
break;
case USE_SMALL_KEY:
key = MakeSmallKey(num);
break;
default:
abort();
break;
}
return(key);
}
int
SeqDatabase()
{
int status;
DBT key, data;
ReportStatus("SEQuencing through database...");
/* seq throught the whole database */
if(!(status = (*database->seq)(database, &key, &data, R_FIRST)))
{
while(!(status = (database->seq) (database, &key, &data, R_NEXT)));
; /* null body */
}
if(status < 0)
ReportError("Error seq'ing database");
return(status);
}
int
VerifyData(DBT *data, int32 num, key_type_enum key_type)
{
int32 count, compare_num;
size_t size;
int32 *int32_array;
/* The first int32 is count
* The other n entries should
* all equal num
*/
if(data->size < sizeof(int32))
{
ReportError("Data size corrupted");
return -1;
}
memcpy(&count, data->data, sizeof(int32));
size = sizeof(int32)*(count+1);
if(size != data->size)
{
ReportError("Data size corrupted");
return -1;
}
int32_array = (int32*)data->data;
for(;count > 0; count--)
{
memcpy(&compare_num, &int32_array[count], sizeof(int32));
if(compare_num != num)
{
ReportError("Data corrupted");
return -1;
}
}
return(0);
}
/* verify that a range of number strings exist
* or don't exist. And that the data is valid
*/
#define SHOULD_EXIST 1
#define SHOULD_NOT_EXIST 0
int
VerifyRange(int32 low, int32 high, int32 should_exist, key_type_enum key_type)
{
DBT *key, data;
int32 num;
int status;
TraceMe(1, ("Verifying: %ld to %ld, using %s keys",
low, high, key_type == USE_SMALL_KEY ? "SMALL" : "LARGE"));
for(num = low; num <= high; num++)
{
key = GenKey(num, key_type);
status = (*database->get)(database, key, &data, 0);
if(status == 0)
{
/* got the item */
if(!should_exist)
{
ReportError("Item exists but shouldn't: %ld", num);
}
else
{
/* else verify the data */
VerifyData(&data, num, key_type);
}
}
else if(status > 0)
{
/* item not found */
if(should_exist)
{
ReportError("Item not found but should be: %ld", num);
}
}
else
{
/* database error */
ReportError("Database error");
return(-1);
}
}
TraceMe(1, ("Correctly verified: %ld to %ld", low, high));
return(0);
}
DBT *
GenData(int32 num)
{
int32 n;
static DBT *data=0;
int32 *int32_array;
size_t size;
if(!data)
{
data = (DBT*)malloc(sizeof(DBT));
data->size = 0;
data->data = 0;
}
else if(data->data)
{
free(data->data);
}
n = rand();
n = n % 512; /* bound to a 2K size */
size = sizeof(int32)*(n+1);
int32_array = (int32 *) malloc(size);
memcpy(&int32_array[0], &n, sizeof(int32));
for(; n > 0; n--)
{
memcpy(&int32_array[n], &num, sizeof(int32));
}
data->data = (void*)int32_array;
data->size = size;
return(data);
}
#define ADD_RANGE 1
#define DELETE_RANGE 2
int
AddOrDelRange(int32 low, int32 high, int action, key_type_enum key_type)
{
DBT *key, *data;
#if 0 /* only do this if your really analy checking the puts */
DBT tmp_data;
#endif
int32 num;
int status;
if(action != ADD_RANGE && action != DELETE_RANGE)
assert(0);
if(action == ADD_RANGE)
{
TraceMe(1, ("Adding: %ld to %ld: %s keys", low, high,
key_type == USE_SMALL_KEY ? "SMALL" : "LARGE"));
}
else
{
TraceMe(1, ("Deleting: %ld to %ld: %s keys", low, high,
key_type == USE_SMALL_KEY ? "SMALL" : "LARGE"));
}
for(num = low; num <= high; num++)
{
key = GenKey(num, key_type);
if(action == ADD_RANGE)
{
data = GenData(num);
status = (*database->put)(database, key, data, 0);
}
else
{
status = (*database->del)(database, key, 0);
}
if(status < 0)
{
ReportError("Database error %s item: %ld",
action == ADD_RANGE ? "ADDING" : "DELETING",
num);
}
else if(status > 0)
{
ReportError("Could not %s item: %ld",
action == ADD_RANGE ? "ADD" : "DELETE",
num);
}
else if(action == ADD_RANGE)
{
#define SYNC_EVERY_TIME
#ifdef SYNC_EVERY_TIME
status = (*database->sync)(database, 0);
if(status != 0)
ReportError("Database error syncing after add");
#endif
#if 0 /* only do this if your really analy checking the puts */
/* make sure we can still get it
*/
status = (*database->get)(database, key, &tmp_data, 0);
if(status != 0)
{
ReportError("Database error checking item just added: %d",
num);
}
else
{
/* now verify that none of the ones we already
* put in have disappeared
*/
VerifyRange(low, num, SHOULD_EXIST, key_type);
}
#endif
}
}
if(action == ADD_RANGE)
{
TraceMe(1, ("Successfully added: %ld to %ld", low, high));
}
else
{
TraceMe(1, ("Successfully deleted: %ld to %ld", low, high));
}
return(0);
}
int
TestRange(int32 low, int32 range, key_type_enum key_type)
{
int status; int32 low_of_range1, high_of_range1; int32 low_of_range2, high_of_range2;
int32 low_of_range3, high_of_range3;
status = AddOrDelRange(low, low+range, ADD_RANGE, key_type);
status = VerifyRange(low, low+range, SHOULD_EXIST, key_type);
TraceMe(1, ("Finished with sub test 1"));
SeqDatabase();
low_of_range1 = low;
high_of_range1 = low+(range/2);
low_of_range2 = high_of_range1+1;
high_of_range2 = low+range;
status = AddOrDelRange(low_of_range1, high_of_range1, DELETE_RANGE, key_type);
status = VerifyRange(low_of_range1, high_of_range1, SHOULD_NOT_EXIST, key_type);
status = VerifyRange(low_of_range2, low_of_range2, SHOULD_EXIST, key_type);
TraceMe(1, ("Finished with sub test 2"));
SeqDatabase();
status = AddOrDelRange(low_of_range1, high_of_range1, ADD_RANGE, key_type);
/* the whole thing should exist now */
status = VerifyRange(low, low+range, SHOULD_EXIST, key_type);
TraceMe(1, ("Finished with sub test 3"));
SeqDatabase();
status = AddOrDelRange(low_of_range2, high_of_range2, DELETE_RANGE, key_type);
status = VerifyRange(low_of_range1, high_of_range1, SHOULD_EXIST, key_type);
status = VerifyRange(low_of_range2, high_of_range2, SHOULD_NOT_EXIST, key_type);
TraceMe(1, ("Finished with sub test 4"));
SeqDatabase();
status = AddOrDelRange(low_of_range2, high_of_range2, ADD_RANGE, key_type);
/* the whole thing should exist now */
status = VerifyRange(low, low+range, SHOULD_EXIST, key_type);
TraceMe(1, ("Finished with sub test 5"));
SeqDatabase();
low_of_range1 = low;
high_of_range1 = low+(range/3);
low_of_range2 = high_of_range1+1;
high_of_range2 = high_of_range1+(range/3);
low_of_range3 = high_of_range2+1;
high_of_range3 = low+range;
/* delete range 2 */
status = AddOrDelRange(low_of_range2, high_of_range2, DELETE_RANGE, key_type);
status = VerifyRange(low_of_range1, high_of_range1, SHOULD_EXIST, key_type);
status = VerifyRange(low_of_range2, low_of_range2, SHOULD_NOT_EXIST, key_type);
status = VerifyRange(low_of_range3, low_of_range2, SHOULD_EXIST, key_type);
TraceMe(1, ("Finished with sub test 6"));
SeqDatabase();
status = AddOrDelRange(low_of_range2, high_of_range2, ADD_RANGE, key_type);
/* the whole thing should exist now */
status = VerifyRange(low, low+range, SHOULD_EXIST, key_type);
TraceMe(1, ("Finished with sub test 7"));
return(0);
}
#define START_RANGE 109876
int
main(int argc, char **argv)
{
int32 i, j=0;
int quick_exit = 0;
int large_keys = 0;
HASHINFO hash_info = {
16*1024,
0,
0,
0,
0,
0};
if(argc > 1)
{
while(argc > 1)
{
if(!strcmp(argv[argc-1], "-quick"))
quick_exit = 1;
else if(!strcmp(argv[argc-1], "-large"))
{
large_keys = 1;
}
argc--;
}
}
database = dbopen("test.db", O_RDWR | O_CREAT, 0644, DB_HASH, &hash_info);
if(!database)
{
ReportError("Could not open database");
#ifdef unix
perror("");
#endif
exit(1);
}
if(quick_exit)
{
if(large_keys)
TestRange(START_RANGE, 200, USE_LARGE_KEY);
else
TestRange(START_RANGE, 200, USE_SMALL_KEY);
(*database->sync)(database, 0);
(*database->close)(database);
exit(0);
}
for(i=100; i < 10000000; i+=200)
{
if(1 || j)
{
TestRange(START_RANGE, i, USE_LARGE_KEY);
j = 0;
}
else
{
TestRange(START_RANGE, i, USE_SMALL_KEY);
j = 1;
}
if(1 == rand() % 3)
{
(*database->sync)(database, 0);
}
if(1 == rand() % 3)
{
/* close and reopen */
(*database->close)(database);
database = dbopen("test.db", O_RDWR | O_CREAT, 0644, DB_HASH, 0);
if(!database)
{
ReportError("Could not reopen database");
#ifdef unix
perror("");
#endif
exit(1);
}
}
else
{
/* reopen database without closeing the other */
database = dbopen("test.db", O_RDWR | O_CREAT, 0644, DB_HASH, 0);
if(!database)
{
ReportError("Could not reopen database "
"after not closing the other");
#ifdef unix
perror("");
#endif
exit(1);
}
}
}
return(0);
}

View File

@@ -0,0 +1,99 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# Config stuff for AIX.
include $(CORE_DEPTH)/coreconf/UNIX.mk
#
# There are two implementation strategies available on AIX:
# pthreads, and pthreads-user. The default is pthreads.
# In both strategies, we need to use pthread_user.c, instead of
# aix.c. The fact that aix.c is never used is somewhat strange.
#
# So we need to do the following:
# - Default (PTHREADS_USER not defined in the environment or on
# the command line):
# Set PTHREADS_USER=1, USE_PTHREADS=1
# - PTHREADS_USER=1 set in the environment or on the command line:
# Do nothing.
#
ifeq ($(PTHREADS_USER),1)
USE_PTHREADS = # just to be safe
IMPL_STRATEGY = _PTH_USER
else
USE_PTHREADS = 1
PTHREADS_USER = 1
endif
DEFAULT_COMPILER = xlc_r
CC = xlc_r
CCC = xlC_r
CPU_ARCH = rs6000
RANLIB = ranlib
OS_CFLAGS = -DAIX -DSYSV
OS_LIBS += -blibpath:/usr/lib:/lib -lc -lm
DSO_LDOPTS = -brtl -bnortllib -bM:SRE -bnoentry
MKSHLIB = $(LD) $(DSO_LDOPTS) -blibpath:/usr/lib:/lib -lc -lm
AIX_WRAP = $(DIST)/lib/aixwrap.o
AIX_TMP = $(OBJDIR)/_aix_tmp.o
ifdef MAPFILE
DSO_LDOPTS += -bexport:$(MAPFILE)
else
DSO_LDOPTS += -bexpall
endif
PROCESS_MAP_FILE = grep -v ';+' $< | grep -v ';-' | \
sed -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,,' > $@
ifdef BUILD_OPT
OPTIMIZER += -qmaxmem=-1
endif
ifeq ($(USE_64), 1)
OS_CFLAGS += -DAIX_64BIT
OBJECT_MODE=64
export OBJECT_MODE
endif

View File

@@ -0,0 +1,91 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
# Kurt J. Lidl
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/UNIX.mk
DEFAULT_COMPILER = gcc
CC = gcc
CCC = g++
RANLIB = ranlib
ifeq ($(OS_TEST),i386)
OS_REL_CFLAGS = -D__i386__
CPU_ARCH = x86
else
ifeq ($(OS_TEST),ppc)
OS_REL_CFLAGS = -D__ppc__
CPU_ARCH = ppc
else
ifeq ($(OS_TEST),sparc)
OS_REL_CFLAGS = -D__sparc__
CPU_ARCH = sparc
else
# treat the ultrasparc like a regular sparc, at least for now!
ifeq ($(OS_TEST),sparc_v9)
OS_REL_CFLAGS = -D__sparc__
CPU_ARCH = sparc
endif
endif
endif
endif
DLL_SUFFIX = so
OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) -Wall -DBSD_OS -DBSDI -Dunix -DHAVE_STRERROR -DHAVE_BSD_FLOCK
ARCH = bsdos
DSO_CFLAGS = -fPIC -DPIC
DSO_LDOPTS = -shared
DSO_LDFLAGS =
DSO_LDOPTS += -Wl,-soname,lib$(LIBRARY_NAME)$(LIBRARY_VERSION).$(DLL_SUFFIX)
ifdef LIBRUNPATH
DSO_LDOPTS += -Wl,-R$(LIBRUNPATH)
endif
MKSHLIB = $(CC) $(DSO_LDOPTS)
ifdef MAPFILE
# Add LD options to restrict exported symbols to those in the map file
endif
# Change PROCESS to put the mapfile in the correct format for this platform
PROCESS_MAP_FILE = cp $< $@
G++INCLUDES = -I/usr/include/g++
INCLUDES += -I/usr/X11R6/include

View File

@@ -0,0 +1,81 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 2002
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/UNIX.mk
XP_DEFINE := $(XP_DEFINE:-DXP_UNIX=-DXP_BEOS)
USE_PTHREADS =
ifeq ($(USE_PTHREADS),1)
IMPL_STRATEGY = _PTH
endif
CC = gcc
CCC = g++
RANLIB = ranlib
DEFAULT_COMPILER = gcc
ifeq ($(OS_TEST),ppc)
OS_REL_CFLAGS = -Dppc
CPU_ARCH = ppc
else
OS_REL_CFLAGS = -Di386
CPU_ARCH = x86
endif
MKSHLIB = $(CC) -nostart -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
ifdef BUILD_OPT
OPTIMIZER = -O2
endif
OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) -Wall -pipe
OS_LIBS = -lbe
DEFINES += -DBEOS
ifdef USE_PTHREADS
DEFINES += -D_REENTRANT
endif
ARCH = beos
DSO_CFLAGS = -fPIC
DSO_LDOPTS =
DSO_LDFLAGS =

View File

@@ -0,0 +1,121 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/UNIX.mk
DEFAULT_COMPILER = cc
CC = cc
CCC = c++
RANLIB = ranlib
ifndef CPU_ARCH
# When cross-compiling, CPU_ARCH should already be defined as the target
# architecture, set to powerpc or i386.
CPU_ARCH := $(shell uname -p)
endif
ifeq (,$(filter-out i%86,$(CPU_ARCH)))
OS_REL_CFLAGS = -Di386
else
OS_REL_CFLAGS = -Dppc
endif
ifneq (,$(MACOS_SDK_DIR))
GCC_VERSION_FULL := $(shell $(CC) -v 2>&1 | grep "gcc version" | sed -e "s/^.*gcc version[ ]*//" | awk '{ print $$1 }')
GCC_VERSION_MAJOR := $(shell echo $(GCC_VERSION_FULL) | awk -F. '{ print $$1 }')
GCC_VERSION_MINOR := $(shell echo $(GCC_VERSION_FULL) | awk -F. '{ print $$2 }')
GCC_VERSION = $(GCC_VERSION_MAJOR).$(GCC_VERSION_MINOR)
ifeq (,$(filter-out 2 3,$(GCC_VERSION_MAJOR)))
# GCC <= 3
DARWIN_SDK_FRAMEWORKS = -F$(MACOS_SDK_DIR)/System/Library/Frameworks
ifneq (,$(shell find $(MACOS_SDK_DIR)/Library/Frameworks -maxdepth 0))
DARWIN_SDK_FRAMEWORKS += -F$(MACOS_SDK_DIR)/Library/Frameworks
endif
DARWIN_SDK_CFLAGS = -nostdinc -isystem $(MACOS_SDK_DIR)/usr/include/gcc/darwin/$(GCC_VERSION) -isystem $(MACOS_SDK_DIR)/usr/include $(DARWIN_SDK_FRAMEWORKS)
DARWIN_SDK_LDFLAGS = -L$(MACOS_SDK_DIR)/usr/lib/gcc/darwin -L$(MACOS_SDK_DIR)/usr/lib/gcc/darwin/$(GCC_VERSION_FULL) -L$(MACOS_SDK_DIR)/usr/lib
DARWIN_SDK_SHLIBFLAGS = $(DARWIN_SDK_LDFLAGS) $(DARWIN_SDK_FRAMEWORKS)
NEXT_ROOT = $(MACOS_SDK_DIR)
export NEXT_ROOT
else
# GCC >= 4
DARWIN_SDK_CFLAGS = -isysroot $(MACOS_SDK_DIR)
ifneq (4.0.0,$(GCC_VERSION_FULL))
# gcc > 4.0.0 passes -syslibroot to ld based on -isysroot.
# Don't add -isysroot to DARWIN_SDK_LDFLAGS, because the programs
# that are linked with those flags also get DARWIN_SDK_CFLAGS.
DARWIN_SDK_SHLIBFLAGS = -isysroot $(MACOS_SDK_DIR)
else
# gcc 4.0.0 doesn't pass -syslibroot to ld, it needs to be
# explicit.
DARWIN_SDK_LDFLAGS = -Wl,-syslibroot,$(MACOS_SDK_DIR)
DARWIN_SDK_SHLIBFLAGS = $(DARWIN_SDK_LDFLAGS)
endif
endif
LDFLAGS += $(DARWIN_SDK_LDFLAGS)
endif
# "Commons" are tentative definitions in a global scope, like this:
# int x;
# The meaning of a common is ambiguous. It may be a true definition:
# int x = 0;
# or it may be a declaration of a symbol defined in another file:
# extern int x;
# Use the -fno-common option to force all commons to become true
# definitions so that the linker can catch multiply-defined symbols.
# Also, common symbols are not allowed with Darwin dynamic libraries.
OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) -Wmost -fpascal-strings -no-cpp-precomp -fno-common -pipe -DDARWIN -DHAVE_STRERROR -DHAVE_BSD_FLOCK $(DARWIN_SDK_CFLAGS)
ifdef BUILD_OPT
OPTIMIZER = -O2
endif
ARCH = darwin
DSO_CFLAGS = -fPIC
# May override this with -bundle to create a loadable module.
DSO_LDOPTS = -dynamiclib -compatibility_version 1 -current_version 1 -install_name @executable_path/$(notdir $@) -headerpad_max_install_names
MKSHLIB = $(CC) $(DSO_LDOPTS) $(DARWIN_SDK_SHLIBFLAGS)
DLL_SUFFIX = dylib
PROCESS_MAP_FILE = grep -v ';+' $< | grep -v ';-' | \
sed -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,,' -e 's,^,_,' > $@
G++INCLUDES = -I/usr/include/g++

View File

@@ -0,0 +1,85 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/UNIX.mk
DEFAULT_COMPILER = gcc
CC = gcc
CCC = g++
RANLIB = ranlib
ifeq ($(OS_TEST),alpha)
CPU_ARCH = alpha
else
CPU_ARCH = x86
endif
OS_CFLAGS = $(DSO_CFLAGS) -ansi -Wall -DFREEBSD -DHAVE_STRERROR -DHAVE_BSD_FLOCK
DSO_CFLAGS = -fPIC
DSO_LDOPTS = -shared -Wl,-soname -Wl,$(notdir $@)
#
# The default implementation strategy for FreeBSD is pthreads.
#
ifndef CLASSIC_NSPR
USE_PTHREADS = 1
DEFINES += -D_THREAD_SAFE -D_REENTRANT
OS_LIBS += -pthread
DSO_LDOPTS += -pthread
endif
ARCH = freebsd
MOZ_OBJFORMAT := $(shell test -x /usr/bin/objformat && /usr/bin/objformat || echo aout)
ifeq ($(MOZ_OBJFORMAT),elf)
DLL_SUFFIX = so
else
DLL_SUFFIX = so.1.0
endif
MKSHLIB = $(CC) $(DSO_LDOPTS)
ifdef MAPFILE
MKSHLIB += -Wl,--version-script,$(MAPFILE)
endif
PROCESS_MAP_FILE = grep -v ';-' $< | \
sed -e 's,;+,,' -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,;,' > $@
G++INCLUDES = -I/usr/include/g++
INCLUDES += -I/usr/X11R6/include

View File

@@ -0,0 +1,93 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
#
# Config stuff for HP-UX
#
include $(CORE_DEPTH)/coreconf/UNIX.mk
DEFAULT_COMPILER = cc
ifeq ($(OS_TEST),ia64)
CPU_ARCH = ia64
CPU_TAG = _$(CPU_ARCH)
ifneq ($(USE_64),1)
64BIT_TAG = _32
endif
DLL_SUFFIX = so
else
CPU_ARCH = hppa
DLL_SUFFIX = sl
endif
CC = cc
CCC = CC
OS_CFLAGS += -Ae $(DSO_CFLAGS) -DHPUX -D$(CPU_ARCH) -D_HPUX_SOURCE -D_USE_BIG_FDS
ifeq ($(DEFAULT_IMPL_STRATEGY),_PTH)
USE_PTHREADS = 1
ifeq ($(CLASSIC_NSPR),1)
USE_PTHREADS =
IMPL_STRATEGY = _CLASSIC
endif
ifeq ($(PTHREADS_USER),1)
USE_PTHREADS =
IMPL_STRATEGY = _PTH_USER
endif
endif
ifdef PTHREADS_USER
OS_CFLAGS += -D_POSIX_C_SOURCE=199506L
endif
LDFLAGS = -z -Wl,+s
MKSHLIB = $(LD) $(DSO_LDOPTS)
ifdef MAPFILE
MKSHLIB += -c $(MAPFILE)
endif
PROCESS_MAP_FILE = grep -v ';+' $< | grep -v ';-' | \
sed -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,,' -e 's,^,+e ,' > $@
DSO_LDOPTS = -b +h $(notdir $@)
ifeq ($(OS_TEST),ia64)
DSO_LDOPTS += +b '$$ORIGIN'
endif
DSO_LDFLAGS =
# +Z generates position independent code for use in shared libraries.
DSO_CFLAGS = +Z

View File

@@ -0,0 +1,49 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
#
# On HP-UX 9, the default (and only) implementation strategy is
# classic nspr.
#
ifeq ($(OS_RELEASE),A.09.03)
DEFAULT_IMPL_STRATEGY = _CLASSIC
endif
#
# Config stuff for HP-UXA.09.03
#
include $(CORE_DEPTH)/coreconf/HP-UXA.09.mk

View File

@@ -0,0 +1,48 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# On HP-UX 9, the default (and only) implementation strategy is
# classic nspr.
ifeq ($(OS_RELEASE),A.09.07)
DEFAULT_IMPL_STRATEGY = _CLASSIC
endif
#
# Config stuff for HP-UXA.09.07
#
include $(CORE_DEPTH)/coreconf/HP-UXA.09.mk

View File

@@ -0,0 +1,43 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
#
# Config stuff for HP-UXA.09
#
include $(CORE_DEPTH)/coreconf/HP-UX.mk
OS_CFLAGS += -DHPUX9

View File

@@ -0,0 +1,44 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
ifeq ($(OS_RELEASE),B.10.01)
DEFAULT_IMPL_STRATEGY = _CLASSIC
endif
#
# Config stuff for HP-UXB.10.01
#
include $(CORE_DEPTH)/coreconf/HP-UXB.10.mk

View File

@@ -0,0 +1,54 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# On HP-UX 10.10 and 10.20, the default implementation strategy is
# pthreads (actually DCE threads). Classic nspr is also available.
ifeq ($(OS_RELEASE),B.10.10)
DEFAULT_IMPL_STRATEGY = _PTH
endif
#
# Config stuff for HP-UXB.10.10
#
include $(CORE_DEPTH)/coreconf/HP-UXB.10.mk
OS_CFLAGS += -DHPUX10_10
ifeq ($(USE_PTHREADS),1)
OS_CFLAGS += -D_REENTRANT
endif

View File

@@ -0,0 +1,54 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# On HP-UX 10.10 and 10.20, the default implementation strategy is
# pthreads (actually DCE threads). Classic nspr is also available.
ifeq ($(OS_RELEASE),B.10.20)
DEFAULT_IMPL_STRATEGY = _PTH
endif
#
# Config stuff for HP-UXB.10.20
#
include $(CORE_DEPTH)/coreconf/HP-UXB.10.mk
OS_CFLAGS += -DHPUX10_20
ifeq ($(USE_PTHREADS),1)
OS_CFLAGS += -D_REENTRANT
endif

View File

@@ -0,0 +1,60 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# On HP-UX 10.30 and 11.00, the default implementation strategy is
# pthreads. Classic nspr and pthreads-user are also available.
ifeq ($(OS_RELEASE),B.10.30)
DEFAULT_IMPL_STRATEGY = _PTH
endif
#
# Config stuff for HP-UXB.10.30.
#
include $(CORE_DEPTH)/coreconf/HP-UXB.10.mk
OS_CFLAGS += -DHPUX10_30
#
# To use the true pthread (kernel thread) library on 10.30 and
# 11.00, we should define _POSIX_C_SOURCE to be 199506L.
# The _REENTRANT macro is deprecated.
#
ifdef USE_PTHREADS
OS_CFLAGS += -D_POSIX_C_SOURCE=199506L
endif

View File

@@ -0,0 +1,40 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/HP-UX.mk
OS_CFLAGS += -DHPUX10
OS_LIBS += -lpthread -lm

View File

@@ -0,0 +1,59 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# On HP-UX 10.30 and 11.00, the default implementation strategy is
# pthreads. Classic nspr and pthreads-user are also available.
ifeq ($(OS_RELEASE),B.11.00)
OS_CFLAGS += -DHPUX10
DEFAULT_IMPL_STRATEGY = _PTH
endif
#
# To use the true pthread (kernel thread) library on 10.30 and
# 11.00, we should define _POSIX_C_SOURCE to be 199506L.
# The _REENTRANT macro is deprecated.
#
ifdef USE_PTHREADS
OS_CFLAGS += -D_POSIX_C_SOURCE=199506L
endif
#
# Config stuff for HP-UXB.11.00.
#
include $(CORE_DEPTH)/coreconf/HP-UXB.11.mk

View File

@@ -0,0 +1,59 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 2001
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# On HP-UX 10.30 and 11.x, the default implementation strategy is
# pthreads. Classic nspr and pthreads-user are also available.
ifeq ($(OS_RELEASE),B.11.11)
OS_CFLAGS += -DHPUX10
DEFAULT_IMPL_STRATEGY = _PTH
endif
#
# To use the true pthread (kernel thread) library on 10.30 and
# 11.x, we should define _POSIX_C_SOURCE to be 199506L.
# The _REENTRANT macro is deprecated.
#
ifdef USE_PTHREADS
OS_CFLAGS += -D_POSIX_C_SOURCE=199506L
endif
#
# Config stuff for HP-UXB.11.11.
#
include $(CORE_DEPTH)/coreconf/HP-UXB.11.mk

View File

@@ -0,0 +1,59 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 2002
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# On HP-UX 10.30 and 11.x, the default implementation strategy is
# pthreads. Classic nspr and pthreads-user are also available.
ifeq ($(OS_RELEASE),B.11.20)
OS_CFLAGS += -DHPUX10
DEFAULT_IMPL_STRATEGY = _PTH
endif
#
# To use the true pthread (kernel thread) library on 10.30 and
# 11.x, we should define _POSIX_C_SOURCE to be 199506L.
# The _REENTRANT macro is deprecated.
#
ifdef USE_PTHREADS
OS_CFLAGS += -D_POSIX_C_SOURCE=199506L
endif
#
# Config stuff for HP-UXB.11.x.
#
include $(CORE_DEPTH)/coreconf/HP-UXB.11.mk

View File

@@ -0,0 +1,59 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 2002
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# On HP-UX 10.30 and 11.x, the default implementation strategy is
# pthreads. Classic nspr and pthreads-user are also available.
ifeq ($(OS_RELEASE),B.11.22)
OS_CFLAGS += -DHPUX10
DEFAULT_IMPL_STRATEGY = _PTH
endif
#
# To use the true pthread (kernel thread) library on 10.30 and
# 11.x, we should define _POSIX_C_SOURCE to be 199506L.
# The _REENTRANT macro is deprecated.
#
ifdef USE_PTHREADS
OS_CFLAGS += -D_POSIX_C_SOURCE=199506L
endif
#
# Config stuff for HP-UXB.11.x.
#
include $(CORE_DEPTH)/coreconf/HP-UXB.11.mk

View File

@@ -0,0 +1,59 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 2002
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# On HP-UX 10.30 and 11.x, the default implementation strategy is
# pthreads. Classic nspr and pthreads-user are also available.
ifeq ($(OS_RELEASE),B.11.23)
OS_CFLAGS += -DHPUX10
DEFAULT_IMPL_STRATEGY = _PTH
endif
#
# To use the true pthread (kernel thread) library on 10.30 and
# 11.x, we should define _POSIX_C_SOURCE to be 199506L.
# The _REENTRANT macro is deprecated.
#
ifdef USE_PTHREADS
OS_CFLAGS += -D_POSIX_C_SOURCE=199506L
endif
#
# Config stuff for HP-UXB.11.x.
#
include $(CORE_DEPTH)/coreconf/HP-UXB.11.mk

View File

@@ -0,0 +1,79 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/HP-UX.mk
ifndef NS_USE_GCC
CCC = /opt/aCC/bin/aCC -ext
ifeq ($(USE_64), 1)
ifeq ($(OS_TEST), ia64)
ARCHFLAG = -Aa +e +p +DD64
else
# Our HP-UX build machine has a strange problem. If
# a 64-bit PA-RISC executable calls getcwd() in a
# network-mounted directory, it fails with ENOENT.
# We don't know why. Since nsinstall calls getcwd(),
# this breaks our 64-bit HP-UX nightly builds. None
# of our other HP-UX machines have this problem.
#
# We worked around this problem by building nsinstall
# as a 32-bit PA-RISC executable for 64-bit PA-RISC
# builds. -- wtc 2003-06-03
ifdef INTERNAL_TOOLS
ARCHFLAG = +DAportable +DS2.0
else
ARCHFLAG = -Aa +e +DA2.0W +DS2.0 +DChpux
endif
endif
else
ifeq ($(OS_TEST), ia64)
ARCHFLAG = -Aa +e +p +DD32
else
ARCHFLAG = +DAportable +DS2.0
endif
endif
else
CCC = aCC
endif
OS_CFLAGS += $(ARCHFLAG) -DHPUX11
OS_LIBS += -lpthread -lm -lrt
#ifeq ($(USE_64), 1)
#OS_LIBS += -ldl
#else
#OS_LIBS += -ldld
#endif
HPUX11 = 1

View File

@@ -0,0 +1,126 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/UNIX.mk
#
# The default implementation strategy for Irix is classic nspr.
#
ifeq ($(USE_PTHREADS),1)
ifeq ($(USE_N32),1)
IMPL_STRATEGY = _n32_PTH
else
IMPL_STRATEGY = _PTH
endif
endif
DEFAULT_COMPILER = cc
ifdef NS_USE_GCC
CC = gcc
AS = $(CC) -x assembler-with-cpp
ODD_CFLAGS = -Wall -Wno-format
ifdef BUILD_OPT
OPTIMIZER = -O6
endif
else
CC = cc
CCC = CC
ODD_CFLAGS = -fullwarn -xansi -woff 1209
ifdef BUILD_OPT
ifeq ($(USE_N32),1)
OPTIMIZER = -O -OPT:Olimit=4000
else
OPTIMIZER = -O -Olimit 4000
endif
endif
# For 6.x machines, include this flag
ifeq (6., $(findstring 6., $(OS_RELEASE)))
ifeq ($(USE_N32),1)
ODD_CFLAGS += -n32 -mips3 -exceptions
else
ODD_CFLAGS += -32 -multigot
endif
else
ODD_CFLAGS += -xgot
endif
ifeq ($(USE_N32),1)
OS_CFLAGS += -dollar
endif
endif
ODD_CFLAGS += -DSVR4 -DIRIX
CPU_ARCH = mips
RANLIB = /bin/true
# For purify
# NOTE: should always define _SGI_MP_SOURCE
NOMD_OS_CFLAGS += $(ODD_CFLAGS) -D_SGI_MP_SOURCE
OS_CFLAGS += $(NOMD_OS_CFLAGS)
ifdef USE_MDUPDATE
OS_CFLAGS += -MDupdate $(DEPENDENCIES)
endif
ifeq ($(USE_N32),1)
SHLIB_LD_OPTS += -n32 -mips3
endif
MKSHLIB += $(LD) $(SHLIB_LD_OPTS) -shared -soname $(@:$(OBJDIR)/%.so=%.so)
ifdef MAPFILE
# Add LD options to restrict exported symbols to those in the map file
endif
# Change PROCESS to put the mapfile in the correct format for this platform
PROCESS_MAP_FILE = cp $< $@
DSO_LDOPTS = -elf -shared -all
ifdef DSO_BACKEND
DSO_LDOPTS += -soname $(DSO_NAME)
endif
#
# Revision notes:
#
# In the IRIX compilers prior to version 7.2, -n32 implied -mips3.
# Beginning in the 7.2 compilers, -n32 implies -mips4 when the compiler
# is running on a system with a mips4 CPU (e.g. R8K, R10K).
# We want our code to explicitly be mips3 code, so we now explicitly
# set -mips3 whenever we set -n32.
#

View File

@@ -0,0 +1,37 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/IRIX5.mk

View File

@@ -0,0 +1,39 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/IRIX5.mk
OS_CFLAGS += -DIRIX5_3

View File

@@ -0,0 +1,42 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/IRIX.mk
ifndef NS_USE_GCC
ODD_CFLAGS += -xgot
endif

View File

@@ -0,0 +1,45 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# catch unresolved symbols
SHLIB_LD_OPTS += -no_unresolved
include $(CORE_DEPTH)/coreconf/IRIX6.mk
OS_CFLAGS += -DIRIX6_2

View File

@@ -0,0 +1,44 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# catch unresolved symbols
SHLIB_LD_OPTS += -no_unresolved
include $(CORE_DEPTH)/coreconf/IRIX6.mk
OS_CFLAGS += -DIRIX6_3

View File

@@ -0,0 +1,47 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# catch unresolved symbols
SHLIB_LD_OPTS += -no_unresolved
include $(CORE_DEPTH)/coreconf/IRIX6.mk
OS_CFLAGS += -DIRIX6_5
ifndef NS_USE_GCC
OS_CFLAGS += -mips3
endif

View File

@@ -0,0 +1,49 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/IRIX.mk
ifndef NS_USE_GCC
ifneq ($(USE_N32),1)
OS_CFLAGS += -32
endif
ODD_CFLAGS += -multigot
endif
ifeq ($(USE_PTHREADS),1)
OS_LIBS += -lpthread
endif

View File

@@ -0,0 +1,178 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/UNIX.mk
#
# The default implementation strategy for Linux is now pthreads
#
USE_PTHREADS = 1
ifeq ($(USE_PTHREADS),1)
IMPL_STRATEGY = _PTH
endif
CC = gcc
CCC = g++
RANLIB = ranlib
DEFAULT_COMPILER = gcc
ifeq ($(OS_TEST),m68k)
OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
CPU_ARCH = m68k
else
ifeq ($(OS_TEST),ppc64)
OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
CPU_ARCH = ppc
ifeq ($(USE_64),1)
ARCHFLAG = -m64
endif
else
ifeq ($(OS_TEST),ppc)
OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
CPU_ARCH = ppc
else
ifeq ($(OS_TEST),alpha)
OS_REL_CFLAGS = -D_ALPHA_ -DLINUX1_2 -D_XOPEN_SOURCE
CPU_ARCH = alpha
else
ifeq ($(OS_TEST),ia64)
OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
CPU_ARCH = ia64
else
ifeq ($(OS_TEST),x86_64)
ifeq ($(USE_64),1)
OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
CPU_ARCH = x86_64
else
OS_REL_CFLAGS = -DLINUX1_2 -Di386 -D_XOPEN_SOURCE
CPU_ARCH = x86
ARCHFLAG = -m32
endif
else
ifeq ($(OS_TEST),sparc)
OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
CPU_ARCH = sparc
else
ifeq ($(OS_TEST),sparc64)
OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
CPU_ARCH = sparc
else
ifeq (,$(filter-out arm% sa110,$(OS_TEST)))
OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
CPU_ARCH = arm
else
ifeq ($(OS_TEST),parisc)
OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
CPU_ARCH = hppa
else
ifeq ($(OS_TEST),parisc64)
OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
CPU_ARCH = hppa
else
ifeq ($(OS_TEST),s390)
OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
CPU_ARCH = s390
else
ifeq ($(OS_TEST),s390x)
OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
CPU_ARCH = s390x
else
ifeq ($(OS_TEST),mips)
OS_REL_CFLAGS = -DLINUX1_2 -D_XOPEN_SOURCE
CPU_ARCH = mips
else
OS_REL_CFLAGS = -DLINUX1_2 -Di386 -D_XOPEN_SOURCE
CPU_ARCH = x86
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
endif
LIBC_TAG = _glibc
ifeq ($(OS_RELEASE),2.0)
OS_REL_CFLAGS += -DLINUX2_0
MKSHLIB = $(CC) -shared -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
ifdef MAPFILE
MKSHLIB += -Wl,--version-script,$(MAPFILE)
endif
PROCESS_MAP_FILE = grep -v ';-' $< | \
sed -e 's,;+,,' -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,;,' > $@
endif
ifdef BUILD_OPT
OPTIMIZER = -O2
endif
ifeq ($(USE_PTHREADS),1)
OS_PTHREAD = -lpthread
endif
OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) $(ARCHFLAG) -ansi -Wall -pipe -DLINUX -Dlinux -D_POSIX_SOURCE -D_BSD_SOURCE -DHAVE_STRERROR
OS_LIBS = $(OS_PTHREAD) -ldl -lc
ifdef USE_PTHREADS
DEFINES += -D_REENTRANT
endif
ARCH = linux
DSO_CFLAGS = -fPIC
DSO_LDOPTS = -shared $(ARCHFLAG)
DSO_LDFLAGS =
LDFLAGS += $(ARCHFLAG)
# INCLUDES += -I/usr/include -Y/usr/include/linux
G++INCLUDES = -I/usr/include/g++
#
# Always set CPU_TAG on Linux, OpenVMS, WINCE.
#
CPU_TAG = _$(CPU_ARCH)

View File

@@ -0,0 +1,48 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/Linux.mk
ifeq ($(OS_RELEASE),2.1)
OS_REL_CFLAGS += -DLINUX2_1
MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
ifdef MAPFILE
MKSHLIB += -Wl,--version-script,$(MAPFILE)
endif
PROCESS_MAP_FILE = grep -v ';-' $< | \
sed -e 's,;+,,' -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,;,' > $@
endif

View File

@@ -0,0 +1,48 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/Linux.mk
OS_REL_CFLAGS += -DLINUX2_1
MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
ifdef MAPFILE
MKSHLIB += -Wl,--version-script,$(MAPFILE)
endif
PROCESS_MAP_FILE = grep -v ';-' $< | \
sed -e 's,;+,,' -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,;,' > $@

View File

@@ -0,0 +1,48 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/Linux.mk
OS_REL_CFLAGS += -DLINUX2_1
MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
ifdef MAPFILE
MKSHLIB += -Wl,--version-script,$(MAPFILE)
endif
PROCESS_MAP_FILE = grep -v ';-' $< | \
sed -e 's,;+,,' -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,;,' > $@

View File

@@ -0,0 +1,48 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/Linux.mk
OS_REL_CFLAGS += -DLINUX2_1
MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
ifdef MAPFILE
MKSHLIB += -Wl,--version-script,$(MAPFILE)
endif
PROCESS_MAP_FILE = grep -v ';-' $< | \
sed -e 's,;+,,' -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,;,' > $@

View File

@@ -0,0 +1,50 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/Linux.mk
DSO_LDOPTS += -Wl,-z,defs
OS_REL_CFLAGS += -DLINUX2_1
MKSHLIB = $(CC) $(DSO_LDOPTS) -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
ifdef MAPFILE
MKSHLIB += -Wl,--version-script,$(MAPFILE)
endif
PROCESS_MAP_FILE = grep -v ';-' $< | \
sed -e 's,;+,,' -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,;,' > $@

View File

@@ -0,0 +1,38 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/Linux.mk

View File

@@ -0,0 +1,38 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/Linux.mk

View File

@@ -0,0 +1,47 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
DEPTH = ..
CORE_DEPTH = ..
MODULE = coreconf
DIRS = nsinstall
include $(DEPTH)/coreconf/config.mk
include $(DEPTH)/coreconf/rules.mk
export:: libs

View File

@@ -0,0 +1,97 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/UNIX.mk
DEFAULT_COMPILER = cc
###
NS_USE_NATIVE = 1
# NS_USE_GCC = 1
export PATH:=$(PATH):/opt/ncc/bin
###
RANLIB = true
GCC_FLAGS_EXTRA += -pipe
DEFINES += -DSVR4 -DSYSV -DHAVE_STRERROR -DNCR
OS_CFLAGS += -Hnocopyr -DSVR4 -DSYSV -DHAVE_STRERROR -DNCR -DPRFSTREAMS_BROKEN
ifdef NS_USE_NATIVE
CC = cc
CCC = ncc
CXX = ncc
# OS_LIBS += -L/opt/ncc/lib
else
# OS_LIBS +=
endif
#OS_LIBS += -lsocket -lnsl -ldl -lc
MKSHLIB += $(LD) $(DSO_LDOPTS)
#DSO_LDOPTS += -G -z defs
DSO_LDOPTS += -G
ifdef MAPFILE
# Add LD options to restrict exported symbols to those in the map file
endif
# Change PROCESS to put the mapfile in the correct format for this platform
PROCESS_MAP_FILE = cp $< $@
CPU_ARCH = x86
ARCH = ncr
NOSUCHFILE = /solaris-rm-f-sucks
# now take care of default GCC (rus@5/5/97)
ifdef NS_USE_GCC
# if gcc-settings are redefined already - don't touch it
#
ifeq (,$(findstring gcc, $(CC)))
CC = gcc
CCC = g++
CXX = g++
# always use -fPIC - some makefiles are still broken and don't distinguish
# situation when they build shared and static libraries
CFLAGS += -fPIC -Wall $(GCC_FLAGS_EXTRA)
# OS_LIBS += -L/usr/local/lib -lstdc++ -lg++ -lgcc
endif
endif
###

View File

@@ -0,0 +1,68 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/UNIX.mk
DEFAULT_COMPILER = $(CORE_DEPTH)/build/hcc
CPU_ARCH = mips
ifdef NS_USE_GCC
CC = gcc
CCC = g++
else
CC = $(CORE_DEPTH)/build/hcc
OS_CFLAGS = -Xa -KGnum=0 -KOlimit=4000
CCC = g++
endif
MKSHLIB = $(LD) $(DSO_LDOPTS)
ifdef MAPFILE
# Add LD options to restrict exported symbols to those in the map file
endif
# Change PROCESS to put the mapfile in the correct format for this platform
PROCESS_MAP_FILE = cp $< $@
RANLIB = /bin/true
OS_CFLAGS += $(ODD_CFLAGS) -DSVR4 -D__SVR4 -DNEC -Dnec_ews -DHAVE_STRERROR
OS_LIBS = -lsocket -lnsl -ldl $(LDOPTIONS)
LDOPTIONS = -lc -L/usr/ucblib -lucb
NOSUCHFILE = /nec-rm-f-sucks
DSO_LDOPTS = -G

View File

@@ -0,0 +1,88 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/UNIX.mk
DEFAULT_COMPILER = gcc
CC = gcc
CCC = g++
RANLIB = ranlib
CPU_ARCH := $(shell uname -p)
ifeq ($(CPU_ARCH),i386)
OS_REL_CFLAGS = -Di386
CPU_ARCH = x86
endif
ifndef OBJECT_FMT
OBJECT_FMT := $(shell if echo __ELF__ | $${CC:-cc} -E - | grep -q __ELF__ ; then echo a.out ; else echo ELF ; fi)
endif
ifeq ($(OBJECT_FMT),ELF)
DLL_SUFFIX = so
else
DLL_SUFFIX = so.1.0
endif
OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) -ansi -Wall -pipe -DNETBSD -Dunix -DHAVE_STRERROR -DHAVE_BSD_FLOCK
OS_LIBS = -lcompat
ARCH = netbsd
DSO_CFLAGS = -fPIC -DPIC
DSO_LDOPTS = -shared
DSO_LDFLAGS =
ifeq ($(OBJECT_FMT),ELF)
DSO_LDOPTS += -Wl,-soname,lib$(LIBRARY_NAME)$(LIBRARY_VERSION).$(DLL_SUFFIX)
endif
ifdef LIBRUNPATH
DSO_LDOPTS += -Wl,-R$(LIBRUNPATH)
endif
MKSHLIB = $(CC) $(DSO_LDOPTS)
ifdef MAPFILE
# Add LD options to restrict exported symbols to those in the map file
endif
# Change PROCESS to put the mapfile in the correct format for this platform
PROCESS_MAP_FILE = cp $< $@
G++INCLUDES = -I/usr/include/g++
INCLUDES += -I/usr/X11R6/include

View File

@@ -0,0 +1,270 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
MOZ_WIDGET_TOOLKIT = os2
# Specify toolset. Default to EMX.
ifeq ($(MOZ_OS2_TOOLS),VACPP)
XP_OS2_VACPP = 1
else
ifeq ($(MOZ_OS2_TOOLS),PGCC)
XP_OS2_EMX = 1
else
MOZ_OS2_TOOLS = EMX
XP_OS2_EMX = 1
endif
endif
# XP_PC is for Window and OS2 on Intel X86
# XP_OS2 is strictly for OS2 only
XP_DEFINE += -DXP_PC=1 -DXP_OS2=1
# Override prefix
LIB_PREFIX = $(NULL)
# Override suffix in suffix.mk
LIB_SUFFIX = lib
# the DLL_SUFFIX must be uppercase for FIPS mode to work. bugzilla 240784
DLL_SUFFIX = DLL
PROG_SUFFIX = .exe
ifdef XP_OS2_EMX
CCC = gcc
LINK = gcc
AR = emxomfar r $@
# Keep AR_FLAGS blank so that we do not have to change rules.mk
AR_FLAGS =
RANLIB = @echo OS2 RANLIB
BSDECHO = @echo OS2 BSDECHO
IMPLIB = emximp -o
FILTER = emxexp -o
# GCC for OS/2 currently predefines these, but we don't want them
DEFINES += -Uunix -U__unix -U__unix__
DEFINES += -DXP_OS2_EMX -DTCPV40HDRS
ifeq ($(MOZ_OS2_HIGH_MEMORY),1)
HIGHMEM_LDFLAG = -Zhigh-mem
endif
ifndef NO_SHARED_LIB
WRAP_MALLOC_LIB =
WRAP_MALLOC_CFLAGS =
DSO_CFLAGS =
DSO_PIC_CFLAGS =
MKSHLIB = $(CXX) $(CXXFLAGS) $(DSO_LDOPTS) -o $@
MKCSHLIB = $(CC) $(CFLAGS) $(DSO_LDOPTS) -o $@
MKSHLIB_FORCE_ALL =
MKSHLIB_UNFORCE_ALL =
DSO_LDOPTS = -Zomf -Zdll -Zmap $(HIGHMEM_LDFLAG)
SHLIB_LDSTARTFILE =
SHLIB_LDENDFILE =
ifdef MAPFILE
MKSHLIB += $(MAPFILE)
endif
PROCESS_MAP_FILE = \
echo LIBRARY $(LIBRARY_NAME)$(LIBRARY_VERSION) INITINSTANCE TERMINSTANCE > $@; \
echo PROTMODE >> $@; \
echo CODE LOADONCALL MOVEABLE DISCARDABLE >> $@; \
echo DATA PRELOAD MOVEABLE MULTIPLE NONSHARED >> $@; \
echo EXPORTS >> $@; \
grep -v ';+' $< | grep -v ';-' | \
sed -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,,' -e 's,\([\t ]*\),\1_,' | \
awk 'BEGIN {ord=1;} { print($$0 " @" ord " RESIDENTNAME"); ord++;}' >> $@
endif #NO_SHARED_LIB
OS_CFLAGS = -Wall -W -Wno-unused -Wpointer-arith -Wcast-align -Zomf -DDEBUG -DTRACING -g
ifdef BUILD_OPT
OPTIMIZER = -O2 -s
DEFINES += -UDEBUG -U_DEBUG -DNDEBUG
DLLFLAGS = -DLL -OUT:$@ -MAP:$(@:.dll=.map) $(HIGHMEM_LDFLAG)
EXEFLAGS = -PMTYPE:VIO -OUT:$@ -MAP:$(@:.exe=.map) -nologo -NOE $(HIGHMEM_LDFLAG)
OBJDIR_TAG = _OPT
else
#OPTIMIZER = -O+ -Oi
DEFINES += -DDEBUG -D_DEBUG -DDEBUGPRINTS #HCT Need += to avoid overidding manifest.mn
DLLFLAGS = -DEBUG -DLL -OUT:$@ -MAP:$(@:.dll=.map) $(HIGHMEM_LDFLAG)
EXEFLAGS = -DEBUG -PMTYPE:VIO -OUT:$@ -MAP:$(@:.exe=.map) -nologo -NOE $(HIGHMEM_LDFLAG)
OBJDIR_TAG = _DBG
LDFLAGS = -DEBUG $(HIGHMEM_LDFLAG)
endif # BUILD_OPT
else # XP_OS2_VACPP
# Override suffix in suffix.mk
OBJ_SUFFIX = .obj
ASM_SUFFIX = .asm
AS = alp.exe
ifdef BUILD_OPT
ASFLAGS = -Od
else
ASFLAGS = +Od
endif
CCC = icc -q -DXP_OS2 -DOS2=4 -N10
LINK = -ilink
AR = -ilib /NOL /NOI /O:$(subst /,\\,$@)
# Keep AR_FLAGS blank so that we do not have to change rules.mk
AR_FLAGS =
RANLIB = @echo OS2 RANLIB
BSDECHO = @echo OS2 BSDECHO
IMPLIB = implib /NOL /NOI
FILTER = cppfilt -b -p -q
ifndef NO_SHARED_LIB
WRAP_MALLOC_LIB =
WRAP_MALLOC_CFLAGS =
DSO_CFLAGS =
DSO_PIC_CFLAGS =
MKSHLIB = $(LD) $(DSO_LDOPTS)
MKCSHLIB = $(LD) $(DSO_LDOPTS)
MKSHLIB_FORCE_ALL =
MKSHLIB_UNFORCE_ALL =
DSO_LDOPTS =
# DLL_SUFFIX = .dll
SHLIB_LDSTARTFILE =
SHLIB_LDENDFILE =
ifdef MAPFILE
MKSHLIB += $(MAPFILE)
endif
PROCESS_MAP_FILE = \
echo LIBRARY $(LIBRARY_NAME)$(LIBRARY_VERSION) INITINSTANCE TERMINSTANCE > $@; \
echo PROTMODE >> $@; \
echo CODE LOADONCALL MOVEABLE DISCARDABLE >> $@; \
echo DATA PRELOAD MOVEABLE MULTIPLE NONSHARED >> $@; \
echo EXPORTS >> $@; \
grep -v ';+' $< | grep -v ';-' | \
sed -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,,' >> $@
endif #NO_SHARED_LIB
OS_CFLAGS = /Q /qlibansi /Gd /Gm /Su4 /Mp /Tl-
INCLUDES += -I$(CORE_DEPTH)/../dist/include
DEFINES += -DXP_OS2_VACPP -DTCPV40HDRS
DLLFLAGS = /DLL /O:$@ /INC:_dllentry /MAP:$(@:.dll=.map)
EXEFLAGS = -PMTYPE:VIO -OUT:$@ -MAP:$(@:.exe=.map) -nologo -NOE
LDFLAGS = /FREE /NOE /LINENUMBERS /nologo
ifdef BUILD_OPT
OPTIMIZER = /O+ /Gl+ /G5 /qarch=pentium
DEFINES += -UDEBUG -U_DEBUG -DNDEBUG
OBJDIR_TAG = _OPT
LDFLAGS += /NODEBUG /OPTFUNC /EXEPACK:2 /PACKCODE /PACKDATA
else
OS_CFLAGS += /Ti+
DEFINES += -DDEBUG -D_DEBUG -DDEBUGPRINTS #HCT Need += to avoid overidding manifest.mn
DLLFLAGS += /DE
EXEFLAGS += /DE
OBJDIR_TAG = _DBG
LDFLAGS += /DE
endif # BUILD_OPT
endif # XP_OS2_VACPP
# OS/2 use nsinstall that is included in the toolkit.
# since we do not wish to support and maintain 3 version of nsinstall in mozilla, nspr and nss
ifdef BUILD_TREE
NSINSTALL_DIR = $(BUILD_TREE)/nss
else
NSINSTALL_DIR = $(CORE_DEPTH)/coreconf/nsinstall
endif
# NSINSTALL = $(NSINSTALL_DIR)/$(OBJDIR_NAME)/nsinstall
NSINSTALL = nsinstall # HCT4OS2
INSTALL = $(NSINSTALL)
MKDEPEND_DIR = $(CORE_DEPTH)/coreconf/mkdepend
MKDEPEND = $(MKDEPEND_DIR)/$(OBJDIR_NAME)/mkdepend
MKDEPENDENCIES = $(OBJDIR_NAME)/depend.mk
####################################################################
#
# One can define the makefile variable NSDISTMODE to control
# how files are published to the 'dist' directory. If not
# defined, the default is "install using relative symbolic
# links". The two possible values are "copy", which copies files
# but preserves source mtime, and "absolute_symlink", which
# installs using absolute symbolic links.
# - THIS IS NOT PART OF THE NEW BINARY RELEASE PLAN for 9/30/97
# - WE'RE KEEPING IT ONLY FOR BACKWARDS COMPATIBILITY
####################################################################
ifeq ($(NSDISTMODE),copy)
# copy files, but preserve source mtime
INSTALL = $(NSINSTALL)
INSTALL += -t
else
ifeq ($(NSDISTMODE),absolute_symlink)
# install using absolute symbolic links
INSTALL = $(NSINSTALL)
INSTALL += -L `pwd`
else
# install using relative symbolic links
INSTALL = $(NSINSTALL)
INSTALL += -R
endif
endif
define MAKE_OBJDIR
if test ! -d $(@D); then rm -rf $(@D); $(NSINSTALL) -D $(@D); fi
endef
#
# override the definition of DLL_PREFIX in prefix.mk
#
ifndef DLL_PREFIX
DLL_PREFIX = $(NULL)
endif
#
# override the TARGETS defined in ruleset.mk, adding IMPORT_LIBRARY
#
ifndef TARGETS
TARGETS = $(LIBRARY) $(SHARED_LIBRARY) $(IMPORT_LIBRARY) $(PROGRAM)
endif
ifdef LIBRARY_NAME
IMPORT_LIBRARY = $(OBJDIR)/$(LIBRARY_NAME)$(LIBRARY_VERSION)$(JDK_DEBUG_SUFFIX).lib
endif

View File

@@ -0,0 +1,74 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
#
# The Bourne shell (sh) on OSF1 doesn't handle "set -e" correctly,
# which we use to stop LOOP_OVER_DIRS submakes as soon as any
# submake fails. So we use the Korn shell instead.
#
SHELL = /usr/bin/ksh
include $(CORE_DEPTH)/coreconf/UNIX.mk
DEFAULT_COMPILER = cc
CC = cc
OS_CFLAGS += $(NON_LD_FLAGS) -std1
CCC = cxx
RANLIB = /bin/true
CPU_ARCH = alpha
ifdef BUILD_OPT
OPTIMIZER += -Olimit 4000
endif
NON_LD_FLAGS += -ieee_with_inexact
OS_CFLAGS += -DOSF1 -D_REENTRANT
ifeq ($(USE_PTHREADS),1)
OS_CFLAGS += -pthread
endif
# The command to build a shared library on OSF1.
MKSHLIB += ld -shared -expect_unresolved "*" -soname $(notdir $@)
ifdef MAPFILE
MKSHLIB += -hidden -input $(MAPFILE)
endif
PROCESS_MAP_FILE = grep -v ';+' $< | grep -v ';-' | \
sed -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,,' -e 's,^,-exported_symbol ,' > $@
DSO_LDOPTS += -shared

View File

@@ -0,0 +1,37 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/OSF1.mk

View File

@@ -0,0 +1,37 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/OSF1.mk

View File

@@ -0,0 +1,48 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# On OSF1 V3.2, classic nspr is the default (and only) implementation
# strategy.
#
# Config stuff for DEC OSF/1 V3.2
#
include $(CORE_DEPTH)/coreconf/OSF1.mk
ifeq ($(OS_RELEASE),V3.2)
OS_CFLAGS += -DOSF1V3
endif

View File

@@ -0,0 +1,56 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# On OSF1 V4.0, pthreads is the default implementation strategy.
# Classic nspr is also available.
ifneq ($(OS_RELEASE),V3.2)
USE_PTHREADS = 1
ifeq ($(CLASSIC_NSPR), 1)
USE_PTHREADS =
IMPL_STRATEGY := _CLASSIC
endif
endif
#
# Config stuff for DEC OSF/1 V4.0
#
include $(CORE_DEPTH)/coreconf/OSF1.mk
ifeq ($(OS_RELEASE),V4.0)
OS_CFLAGS += -DOSF1V4
endif

View File

@@ -0,0 +1,37 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/OSF1V4.0.mk

View File

@@ -0,0 +1,41 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/OSF1V4.0.mk
DEFINES += -DOSF1V4D
OS_LIBS += -lpthread -lrt

View File

@@ -0,0 +1,52 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# On OSF1 V5.0, pthreads is the default implementation strategy.
# Classic nspr is also available.
ifneq ($(OS_RELEASE),V3.2)
USE_PTHREADS = 1
ifeq ($(CLASSIC_NSPR), 1)
USE_PTHREADS =
IMPL_STRATEGY := _CLASSIC
endif
endif
#
# Config stuff for DEC OSF/1 V5.0
#
include $(CORE_DEPTH)/coreconf/OSF1.mk

View File

@@ -0,0 +1,52 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 2001
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
# On OSF1 V5.0, pthreads is the default implementation strategy.
# Classic nspr is also available.
ifneq ($(OS_RELEASE),V3.2)
USE_PTHREADS = 1
ifeq ($(CLASSIC_NSPR), 1)
USE_PTHREADS =
IMPL_STRATEGY := _CLASSIC
endif
endif
#
# Config stuff for DEC OSF/1 V5.1
#
include $(CORE_DEPTH)/coreconf/OSF1.mk

View File

@@ -0,0 +1,74 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/UNIX.mk
CC ?= gcc
CXX ?= g++
DEFAULT_COMPILER = ${CC}
CCC = ${CXX}
RANLIB = ranlib
CPU_ARCH := $(shell arch -s)
ifeq ($(CPU_ARCH),i386)
OS_REL_CFLAGS = -Di386
CPU_ARCH = x86
endif
ifndef CLASSIC_NSPR
USE_PTHREADS = 1
DEFINES += -pthread
OS_LIBS += -pthread
DSO_LDOPTS += -pthread
endif
DLL_SUFFIX = so.1.0
OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) -ansi -Wall -pipe -DOPENBSD
OS_LIBS =
ARCH = openbsd
DSO_CFLAGS = -fPIC -DPIC
DSO_LDOPTS = -shared -fPIC -Wl,-soname,lib$(LIBRARY_NAME)$(LIBRARY_VERSION).$(DLL_SUFFIX)
DSO_LDFLAGS =
MKSHLIB = $(CC) $(DSO_LDOPTS)
USE_SYSTEM_ZLIB = 1
ZLIB_LIBS = -lz

View File

@@ -0,0 +1,93 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/UNIX.mk
DEFAULT_COMPILER = gcc
CC = gcc
OS_CFLAGS += -fPIC
CCC = g++
CCC += -DPRFSTREAMS_BROKEN -I/usr/gnu/lib/g++-include
# CCC = $(CORE_DEPTH)/build/hcpp
# CCC += +.cpp +w
RANLIB = /bin/true
#
# -DSCO_PM - Policy Manager AKA: SCO Licensing
# -DSCO - Changes to Netscape source (consistent with AIX, LINUX, etc..)
# -Dsco - Needed for /usr/include/X11/*
#
OS_CFLAGS += -DSCO_SV -DSYSV -D_SVID3 -DHAVE_STRERROR -DSW_THREADS -DSCO_PM -DSCO -Dsco
#OS_LIBS += -lpmapi -lsocket -lc
MKSHLIB = $(LD)
MKSHLIB += $(DSO_LDOPTS)
XINC = /usr/include/X11
MOTIFLIB += -lXm
INCLUDES += -I$(XINC)
CPU_ARCH = x86
GFX_ARCH = x
ARCH = sco
LOCALE_MAP = $(CORE_DEPTH)/cmd/xfe/intl/sco.lm
EN_LOCALE = C
DE_LOCALE = de_DE.ISO8859-1
FR_LOCALE = fr_FR.ISO8859-1
JP_LOCALE = ja
SJIS_LOCALE = ja_JP.SJIS
KR_LOCALE = ko_KR.EUC
CN_LOCALE = zh
TW_LOCALE = zh
I2_LOCALE = i2
LOC_LIB_DIR = /usr/lib/X11
NOSUCHFILE = /solaris-rm-f-sucks
BSDECHO = /bin/echo
ifdef MAPFILE
# Add LD options to restrict exported symbols to those in the map file
endif
# Change PROCESS to put the mapfile in the correct format for this platform
PROCESS_MAP_FILE = cp $< $@
#
# These defines are for building unix plugins
#
BUILD_UNIX_PLUGINS = 1
#DSO_LDOPTS += -b elf -G -z defs
DSO_LDOPTS += -G
DSO_LDFLAGS += -nostdlib -L/lib -L/usr/lib -lXm -lXt -lX11 -lgen
# Used for Java compiler
EXPORT_FLAGS += -W l,-Bexport

View File

@@ -0,0 +1,75 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org Code.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1998
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
#
# Config stuff for Compaq OpenVMS
#
include $(CORE_DEPTH)/coreconf/UNIX.mk
CC = cc
CCC = cxx
RANLIB = /gnu/bin/true
CPU_ARCH := $(shell uname -Wh)
OS_CFLAGS = -DVMS
OS_CXXFLAGS = -DVMS
#
# XCFLAGS are the only CFLAGS that are used during a link operation. Defining
# OPTIMIZER in XCFLAGS means that each compilation line gets OPTIMIZER
# included twice, but at least we get OPTIMIZER included in the link
# operations; and OpenVMS needs it!
#
XCFLAGS += $(OPTIMIZER)
DSO_LDOPTS = -shared -auto_symvec
MKSHLIB = $(CC) $(OPTIMIZER) $(LDFLAGS) $(DSO_LDOPTS)
ifdef MAPFILE
# Add LD options to restrict exported symbols to those in the map file
endif
# Change PROCESS to put the mapfile in the correct format for this platform
PROCESS_MAP_FILE = cp $< $@
#
# Always set CPU_TAG on Linux, OpenVMS, WINCE.
#
CPU_TAG = _$(CPU_ARCH)

View File

@@ -0,0 +1,42 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org Code.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1998
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
#
# Config stuff for Compaq OpenVMS
#
include $(CORE_DEPTH)/coreconf/OpenVMS.mk

View File

@@ -0,0 +1,72 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 2001
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/UNIX.mk
USE_PTHREADS = 1
ifeq ($(USE_PTHREADS),1)
IMPL_STRATEGY = _PTH
endif
CC = qcc
CCC = qcc
RANLIB = ranlib
DEFAULT_COMPILER = qcc
ifeq ($(OS_TEST),mips)
CPU_ARCH = mips
else
CPU_ARCH = x86
endif
MKSHLIB = $(CC) -shared -Wl,-soname -Wl,$(@:$(OBJDIR)/%.so=%.so)
ifdef BUILD_OPT
OPTIMIZER = -O2
endif
OS_CFLAGS = $(DSO_CFLAGS) $(OS_REL_CFLAGS) -Vgcc_ntox86 -Wall -pipe -DNTO -DHAVE_STRERROR -D_QNX_SOURCE -D_POSIX_C_SOURCE=199506 -D_XOPEN_SOURCE=500
ifdef USE_PTHREADS
DEFINES += -D_REENTRANT
endif
ARCH = QNX
DSO_CFLAGS = -Wc,-fPIC
DSO_LDOPTS = -shared
DSO_LDFLAGS =

View File

@@ -0,0 +1,561 @@
OVERVIEW of "ns/coreconf":
This README file is an attempt to provide the reader with a simple
synopsis of the "ns/coreconf" build system which was originally
fundamentally designed and built to accomodate Netscape's binary
release model. Wherever possible, an attempt has been made to
comply with the NSPR 2.0 build system, including mimicing the
compiler/linker flags, and directory naming structure. The reader
should keep in mind that the system builds binary releases of
header files, class files, libraries, and executables on numerous
flavors of UNIX and Windows operating systems. Unfortunately,
no serious attempt has ever been made to incorporate an ability to
generate cross-platform binaries on an Apple MacIntosh platform.
Note that this file will not attempt to redefine or document the
architecture of this system. However, documents on this subject
are available at the following URL:
http://warp/hardcore/prj-ttools/specs/release/index.html
DEPENDENCIES of "ns/coreconf":
The "ns/coreconf" build system requires the specified versions of
the following platform-dependent tools:
UNIX Platforms:
--------------
gmake (version 3.74 or later)
perl 4.0 (NOTE: perl 5.003 or later recommended)
uname
Windows Platforms:
-----------------
gmake 3.74 (must use hacked Netscape version)
shmsdos.exe (contained in Netscape gmake.exe)
nsinstall.exe (contained in Netscape gmake.exe)
perl.exe (version 4.0 for everything except testing;
NOTE: MKS toolkit perl 5.002 is broken)
perl5.exe (for testing;
NOTE: perl 5.003 or later recommended;
MKS toolkit perl 5.002 is broken)
uname.exe (use nstools version)
ENHANCEMENTS to "ns/coreconf":
With the advent of Certificate Server 4.0 using the ns/coreconf
build system, several changes had to be made to enhance
ns/coreconf support for building Java/JNI classes/programs, as
well as libraries slated to be released as binaries. While the
following may not represent an exhaustive list of these changes,
it does attempt to be at least somewhat comprehensive:
(1) During the course of these enhancements, a total of
four files have been modified, and four new files have
been added.
The following files have been modified:
- command.mk: removed old definition of JAR
- config.mk: added include statement of new
"jdk.mk" file
- ruleset.mk: allowed the $(MKPROG) variable to be
overridden by supplying it with a
default value of $(CC); augmented
numerous definitions to enhance
ability of ns/coreconf to produce
a more robust set of libraries;
added some JNI definitions; PACKAGE
definition may be overridden by new
"jdk.mk" file
- rules.mk: separated the compile phase of a
program from the link phase of a
program such that a developer can
now strictly override program linkage
by simply supplying a $(MKPROG)
variable; augmented NETLIBDEPTH
to use CORE_DEPTH but retain backward
compatibility; added JNI section;
modified .PRECIOUS rule;
The following files have been added:
- README: this file; an ASCII-based text
document used to summarize the
ns/coreconf build system and
suitable (paginated) for printing
- jdk.mk: a file comprising most (if not all)
of the default Java related build
information; the definitions in this
file are only included if NS_USE_JDK
has been defined
- jniregen.pl: a perl script used to create a
dependency for when JNI files should
be regenerated (based upon any change
to the ".class" file from which the
".h" file was originally generated)
- outofdate.pl: a perl script used to create a
dependency for when ".class" files
should be regenerated (based upon
any change to the ".java" file
from which the ".class" file was
originally generated)
(2) As stated above, the ns/coreconf build system now separates
the link phase of a program from its compilation phase.
While ns/coreconf still works exactly as it used to because
the $(MKPROG) variable is assigned $(CC) by default, a developer
may now override this behavior by simply supplying their
own unique value for $(MKPROG) on every platform. This allows
a program compiled with $(CC) to link with external libraries
that may contain "C++" linkage. Before this change, a
programmer would need to reference their own local copy of
rules.mk (see the ns/sectools/cmd/pk12util program for
an example of how this used to be accomplished).
(3) Currently, the ns/coreconf build system differs from the
NSPR 2.0 build system which utilizes an "_s" to denote
static libraries from import libraries. In fact, the
ns/coreconf build system adds no prefixes or suffixes to
distinguish one version of static libraries from another.
Note that both the ns/coreconf build system as well as the
NSPR 2.0 build system do nothing to provide a method of
distinguishing 16-bit from 32-bit static libraries on the
same machine, either, since:
a) this might only provide difficulty during
development, since static libraries always
need to be embedded within a program
(note this is highly unlikely, since libraries
for different platforms are subdivided via
a well-known subdirectory structure, and
a developer may use multiple trees for
development),
b) this maintains backwards compatibility,
something very important since no legacy
programs will need to change their link phase, and
c) Netscape as a company has dropped any plans
of future development of 16-bit products.
(4) Since several members of the Hardcore Security group did
not favor NSPR 2.0's solution of adding an "_s" to static
libraries on Windows platforms as a method to distinguish
them from their import library cousins, a different solution
was proposed and has been recently implemented for ns/coreconf:
- a 16 has been added as a suffix to both dynamic and
import libraries built on 16-bit Windows platforms
- a 32 has been added as a suffix to both dynamic and
import libraries built on 32-bit Windows platforms
Since the HCL release process currently only contains a
single instance of building a dynamic library,
ns/security/lib/fortcrypt/fort12.dll, the impact of this
change should be relatively small. (Note: HCL was the
old name of NSS.)
It should be noted that although this would additionally
limit the 8.3 namespace on 16-bit platforms, it is highly
unlikely that any future development will be performed on
this platform.
(5) The $(LIBRARY_VERSION) tag has been added to all non-static
libraries created on UNIX operating systems to alleviate
any future confusion for binary releases which utilize this
tag. Again, it should be noted that this tag is only
utilized on non-static libraries, since more than one
version of the library may need to exist simultaneously
if multiple products are utilized.
Currently, only one HCL released library utilizes this tag:
ns/security/lib/fortcrypt/fort12.a
(e. g. - in this library, the tag has been set to '12')
Again, it should be noted that although this would
additionally limit the 8.3 namespace on 16-bit platforms,
it is highly unlikely that any future development will be
performed on this platform.
(6) The $(JDK_DEBUG_SUFFIX) extension has been added to all
library and program names to support debug versions of
Java programs (e. g. - java_g, javac_g, etc).
Once again, it should be noted that although this would
additionally limit the 8.3 namespace on 16-bit platforms,
it is highly unlikely that any future Java development
will be performed on this platform.
(7) Most (if not all) default definitions for java have been
encapsulated within their own file, jdk.mk, which is
always included by default in ns/coreconf/config.mk.
However, the definitions within this file are only ever
activated if NS_USE_JDK has been set to be 1.
(8) Two perl scripts (jniregen.pl and outofdate.pl) have been
added to the system to foster a more robust development
environment for composing Java and JNI programs
utilizing the ns/coreconf build system. Both of these
perl scripts are related to resolving dependencies which
can not be accomplished through normal makefile dependencies.
(9) This file, README, was created in an attempt to allow
developers who have familiarity with ns/coreconf a simple
roadmap for what has changed, as well as a top-level view of
what comprises ns/coreconf. This file was written in
ASCII (rather than HTML) primarily to promote simple
paginated printing.
OVERVIEW of "config.mk":
This file contains the configuration information necessary to
build each "Core Components" source module:
include file name Purpose
=================== =======================================
arch.mk source and release <architecture> tags
command.mk default command macros
(NOTE: may be overridden in $(OS_CONFIG).mk)
$(OS_CONFIG).mk <architecture>-specific macros
(dependent upon <architecture> tags)
tree.mk release <tree> tags
(dependent upon <architecture> tags)
module.mk source and release <component> tags
(NOTE: A component is also called a module
or a subsystem. This file is dependent upon
$(MODULE) being defined on the command
line, as an environment variable, or in
individual makefiles, or more
appropriately, manifest.mn)
version.mk release <version> tags
(dependent upon $(MODULE) being defined on
the command line, as an environment variable,
or in individual makefiles, or more
appropriately, manifest.mn)
location.mk macros to figure out binary code location
(dependent upon <platform> tags)
source.mk <component>-specific source path
(dependent upon <user_source_tree>,
<source_component>, <version>, and
<platform> tags)
headers.mk include switch for support header files
(dependent upon <tree>, <component>, <version>,
and <platform> tags)
prefix.mk compute program prefixes
suffix.mk compute program suffixes
(dependent upon <architecture> tags)
jdk.mk define JDK
(dependent upon <architecture>,
<source>, and <suffix> tags)
ruleset.mk Master "Core Components" rule set
(should always be the last file
included by config.mk)
OVERVIEW of "rules.mk":
The "rules.mk" file consists of four sections. The first section
contains the "master" build rules for all binary releases. While
this section can (and should) largely be thought of as "language"
independent, it does utilize the "perl" scripting language to
perform both the "import" and "release" of binary modules.
The rules which dwell in this section and their purpose:
CATEGORY/rule:: Purpose
=================== =======================================
GENERAL
-------
all:: "default" all-encompassing rule which
performs "export libs program install"
export:: recursively copy specified
cross-platform header files to the
$(SOURCE_XPHEADERS_DIR) directory;
recursively copy specified
machine-dependent header files to the
$(SOURCE_MDHEADERS_DIR) directory;
although all rules can be written to
repetively "chain" into other sections,
this rule is the most commonly used
rule to "chain" into other sections
such as Java providing a simple
mechanism which allows no need for
developers to memorize specialized
rules
libs:: recursively build
static (archival) $(LIBRARY), shared
(dynamic link) $(SHARED_LIBRARY),
and/or import $(IMPORT_LIBRARY)
libraries
program:: recursively build $(PROGRAM)
executable
install:: recursively copy all libraries to
$(SOURCE_LIB_DIR) directory;
recursively copy all executables to
$(SOURCE_BIN_DIR) directory
clean:: remove all files specified in the
$(ALL_TRASH) variable
clobber:: synonym for "clean::" rule
realclean:: remove all files specified by
$(wildcard *.OBJ), dist, and in
the $(ALL_TRASH) variable
clobber_all:: synonym for "realclean::" rule
private_export:: recursively copy specified
cross-platform header files to the
$(SOURCE_XPPRIVATE_DIR) directory
IMPORT
------
import:: uses perl script to retrieve specified
VERSION of the binary release from
$(RELEASE_TREE)
RELEASE
-------
release_clean:: remove all files from the
$(SOURCE_RELEASE_PREFIX) directory
release:: place specified VERSION of the
binary release in the appropriate
$(RELEASE_TREE) directory
release_export:: recursively copy specified
cross-platform header files to the
$(SOURCE_XPHEADERS_DIR)/include
directory
release_md:: recursively copy all libraries to
$(SOURCE_RELEASE_PREFIX)/
$(SOURCE_RELEASE_LIB_DIR) directory;
recursively copy all executables to
$(SOURCE_RELEASE_PREFIX)/
$(SOURCE_RELEASE_BIN_DIR) directory
release_jars:: use perl script to package appropriate
files in the $(XPCLASS_JAR),
$(XPHEADER_JAR), $(MDHEADER_JAR), and
$(MDBINARY_JAR) jar files
release_cpdistdir:: use perl script to copy the
$(XPCLASS_JAR), $(XPHEADER_JAR),
$(MDHEADER_JAR), and $(MDBINARY_JAR)
jar files to the specified VERSION
of the $(RELEASE_TREE) directory
TOOLS and AUTOMATION
--------------------
platform:: tool used to display the platform name
as composed within the "arch.mk" file
autobuild:: automation rule used by "Bonsai" and
"Tinderbox" to automatically generate
binary releases on various platforms
tests:: automation tool used to run the
"regress" and "reporter" tools
on various regression test suites
The second section of "rules.mk" primarily contains several
"language" dependent build rules for binary releases. These are
generally "computed" rules (created on the "fly"), and include
rules used by "C", "C++", assembly, the preprocessor, perl, and
the shell.
The rules which dwell in this section and their purpose:
CATEGORY/rule:: Purpose
=================== =============================
LIBRARIES
---------
$(LIBRARY): build the static library
specified by the $(LIBRARY)
variable
$(IMPORT_LIBRARY): build the import library
specified by the
$(IMPORT_LIBRARY) variable
$(SHARED_LIBRARY): build the shared
(dynamic link) library
specified by the
$(SHARED_LIBRARY) variable
PROGRAMS
--------
$(PROGRAM): build the binary executable
specified by the $(PROGRAM)
rule
$(OBJDIR)/
$(PROG_PREFIX)%.pure: build the "purified" binary
executable specified by this
rule
OBJECTS
-------
$(OBJDIR)/
$(PROG_PREFIX)%$(OBJ_SUFFIX): build the object file
associated with the
makefile rule dependency:
%.c = C file
%.cpp = C++ file
%.cc = C++ file
%.s = assembly file
%.S = assembly file
$(OBJDIR)/
$(PROG_PREFIX)%: (NOTE: deprecated rule)
build the object file
associated with the
makefile rule dependency:
%.cpp = C++ file
MISCELLANEOUS
-------------
$(DIRS):: specifies a helper method
used by $(LOOP_THROUGH_DIRS)
to recursively change
directories and invoke
$(MAKE)
%.i: build the preprocessor file
associated with the
makefile rule dependency:
%.c = C file
%.cpp = C++ file
%: process the specified file
using the method associated
with the makefile rule
dependency:
%.pl = perl script
%.sh = shell script
alltags: tool used to recursively
create a "ctags"-style
file for reference
The third section of "rules.mk' primarily contains several JAVA
"language" build rules for binary releases. These are also
generally "computed" rules (created on the "fly").
The rules which dwell in this section and their purpose:
CATEGORY/rule:: Purpose
=================== =============================
$(JAVA_DESTPATH):: create directory specified
as the Java destination path
for where classes are
deposited
$(JAVA_DESTPATH)/$(PACKAGE):: create directories specified
within the $(PACKAGE)
variable
$(JMCSRCDIR):: create directory specified
as the JMC destination path
$(JRI_HEADER_CFILES): used to generate/regenerate
JRI header files for "C"
$(JRI_STUB_CFILES): used to generate/regenerate
JRI stub files for "C"
$(JNI_HEADERS): used to generate/regenerate
JNI header files for "C"
The fourth section of "rules.mk" primarily contains miscellaneous
build rules for binary releases. Many of these rules are here to
create new subdirectories, manage dependencies, and/or override
standard gmake "Makefile" rules.
The rules which dwell in this section and their purpose:
CATEGORY/rule:: Purpose
=================== =============================
$(PUBLIC_EXPORT_DIR):: create directory used to
house public "C" header files
$(PRIVATE_EXPORT_DIR):: create directory used to
house private "C" header
files
$(SOURCE_XP_DIR)/
release/include:: create directory used to
house "C" header files
contained in a release
$(MKDEPENDENCIES):: for UNIX systems, create
a directory used to house
dependencies and utilize
the $(MKDEPEND) rule to
create them
$(MKDEPEND):: cd to the dependency
directory and create them
depend:: if $(OBJS) exist, perform the
$(MKDEPEND) rule followed by
the $(MKDEPENDENCIES) rule
dependclean:: remove all files contained
in the dependency repository
.DEFAULT: standard gmake rule
.SUFFIXES: standard gmake rule
.PRECIOUS: standard gmake rule
.PHONY: standard gmake rule

View File

@@ -0,0 +1,90 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/UNIX.mk
DEFAULT_COMPILER = cc
ifdef NS_USE_GCC
## gcc-2.7.2 homebrewn
CC = gcc
CCC = g++
AS = $(CC)
ASFLAGS += -x assembler-with-cpp
LD = gld
ODD_CFLAGS = -pipe -Wall -Wno-format
ifdef BUILD_OPT
OPTIMIZER += -O6
endif
MKSHLIB = $(LD)
MKSHLIB += -G -h $(@:$(OBJDIR)/%.so=%.so)
DSO_LDOPTS += -G -Xlinker -Blargedynsym
else
## native compiler (CDS++ 1.0)
# CC = /usr/bin/cc
CC = cc
CCC = /usr/bin/CC
AS = /usr/bin/cc
ODD_CFLAGS =
ifdef BUILD_OPT
OPTIMIZER += -O -F Olimit,4000
endif
MKSHLIB = $(CC)
MKSHLIB += -G -h $(@:$(OBJDIR)/%.so=%.so)
DSO_LDOPTS += -G -W l,-Blargedynsym
endif
ifdef MAPFILE
# Add LD options to restrict exported symbols to those in the map file
endif
# Change PROCESS to put the mapfile in the correct format for this platform
PROCESS_MAP_FILE = cp $< $@
NOSUCHFILE = /sni-rm-f-sucks
ODD_CFLAGS += -DSVR4 -DSNI -DRELIANTUNIX
CPU_ARCH = mips
RANLIB = /bin/true
# For purify
NOMD_OS_CFLAGS += $(ODD_CFLAGS)
# we do not have -MDupdate ...
OS_CFLAGS += $(NOMD_OS_CFLAGS)
OS_LIBS += -lsocket -lnsl -lresolv -lgen -ldl -lc /usr/ucblib/libucb.a
ifdef DSO_BACKEND
DSO_LDOPTS += -h $(DSO_NAME)
endif

View File

@@ -0,0 +1,37 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/ReliantUNIX.mk

View File

@@ -0,0 +1,38 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/SCO_SV3.2.mk

View File

@@ -0,0 +1,93 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/UNIX.mk
DEFAULT_COMPILER = cc
CC = cc
OS_CFLAGS += -b elf -KPIC
CCC = g++
CCC += -b elf -DPRFSTREAMS_BROKEN -I/usr/local/lib/g++-include
# CCC = $(CORE_DEPTH)/build/hcpp
# CCC += +.cpp +w
RANLIB = /bin/true
#
# -DSCO_PM - Policy Manager AKA: SCO Licensing
# -DSCO - Changes to Netscape source (consistent with AIX, LINUX, etc..)
# -Dsco - Needed for /usr/include/X11/*
#
OS_CFLAGS += -DSCO_SV -DSYSV -D_SVID3 -DHAVE_STRERROR -DSW_THREADS -DSCO_PM -DSCO -Dsco
#OS_LIBS += -lpmapi -lsocket -lc
MKSHLIB = $(LD)
MKSHLIB += $(DSO_LDOPTS)
XINC = /usr/include/X11
MOTIFLIB += -lXm
INCLUDES += -I$(XINC)
CPU_ARCH = x86
GFX_ARCH = x
ARCH = sco
LOCALE_MAP = $(CORE_DEPTH)/cmd/xfe/intl/sco.lm
EN_LOCALE = C
DE_LOCALE = de_DE.ISO8859-1
FR_LOCALE = fr_FR.ISO8859-1
JP_LOCALE = ja
SJIS_LOCALE = ja_JP.SJIS
KR_LOCALE = ko_KR.EUC
CN_LOCALE = zh
TW_LOCALE = zh
I2_LOCALE = i2
LOC_LIB_DIR = /usr/lib/X11
NOSUCHFILE = /solaris-rm-f-sucks
BSDECHO = /bin/echo
ifdef MAPFILE
# Add LD options to restrict exported symbols to those in the map file
endif
# Change PROCESS to put the mapfile in the correct format for this platform
PROCESS_MAP_FILE = cp $< $@
#
# These defines are for building unix plugins
#
BUILD_UNIX_PLUGINS = 1
#DSO_LDOPTS += -b elf -G -z defs
DSO_LDOPTS += -b elf -G
DSO_LDFLAGS += -nostdlib -L/lib -L/usr/lib -lXm -lXt -lX11 -lgen
# Used for Java compiler
EXPORT_FLAGS += -W l,-Bexport

View File

@@ -0,0 +1,60 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
include $(CORE_DEPTH)/coreconf/UNIX.mk
DEFAULT_COMPILER = cc
INCLUDES += -I/usr/dt/include -I/usr/openwin/include -I/home/motif/usr/include
# SunOS 4 _requires_ that shared libs have a version number.
# XXX FIXME: Version number should use NSPR_VERSION_NUMBER?
DLL_SUFFIX = so.1.0
CC = gcc
RANLIB = ranlib
CPU_ARCH = sparc
# Purify doesn't like -MDupdate
NOMD_OS_CFLAGS += -Wall -Wno-format -DSUNOS4
OS_CFLAGS += $(DSO_CFLAGS) $(NOMD_OS_CFLAGS) -MDupdate $(DEPENDENCIES)
MKSHLIB = $(LD)
MKSHLIB += $(DSO_LDOPTS)
NOSUCHFILE = /solaris-rm-f-sucks
DSO_LDOPTS =
# -fPIC generates position-independent code for use in a shared library.
DSO_CFLAGS += -fPIC

View File

@@ -0,0 +1,46 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
SOL_CFLAGS += -D_SVID_GETTOD
include $(CORE_DEPTH)/coreconf/SunOS5.mk
ifeq ($(OS_RELEASE),5.10)
OS_DEFINES += -DSOLARIS2_10
endif
OS_LIBS += -lthread -lnsl -lsocket -lposix4 -ldl -lc

View File

@@ -0,0 +1,53 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
SOL_CFLAGS = -D_SVID_GETTOD
include $(CORE_DEPTH)/coreconf/SunOS5.mk
ifeq ($(USE_64),1)
CPU_ARCH = x86_64
else
CPU_ARCH = x86
OS_DEFINES += -Di386
endif
ifeq ($(OS_RELEASE),5.10_i86pc)
OS_DEFINES += -DSOLARIS2_10
endif
OS_LIBS += -lthread -lnsl -lsocket -lposix4 -ldl -lc

View File

@@ -0,0 +1,46 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
SOL_CFLAGS += -D_SVID_GETTOD
include $(CORE_DEPTH)/coreconf/SunOS5.mk
ifeq ($(OS_RELEASE),5.11)
OS_DEFINES += -DSOLARIS2_11
endif
OS_LIBS += -lthread -lnsl -lsocket -lposix4 -ldl -lc

View File

@@ -0,0 +1,53 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
SOL_CFLAGS = -D_SVID_GETTOD
include $(CORE_DEPTH)/coreconf/SunOS5.mk
ifeq ($(USE_64),1)
CPU_ARCH = x86_64
else
CPU_ARCH = x86
OS_DEFINES += -Di386
endif
ifeq ($(OS_RELEASE),5.11_i86pc)
OS_DEFINES += -DSOLARIS2_11
endif
OS_LIBS += -lthread -lnsl -lsocket -lposix4 -ldl -lc

View File

@@ -0,0 +1,40 @@
#
# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is the Netscape security libraries.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 1994-2000
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#
# Alternatively, the contents of this file may be used under the terms of
# either the GNU General Public License Version 2 or later (the "GPL"), or
# the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
SOL_CFLAGS =
include $(CORE_DEPTH)/coreconf/SunOS5.mk

Some files were not shown because too many files have changed in this diff Show More