summaryrefslogtreecommitdiff
path: root/libs/nss/src
diff options
context:
space:
mode:
authorMatt A. Tobin <email@mattatobin.com>2022-04-09 00:18:24 -0500
committerMatt A. Tobin <email@mattatobin.com>2022-04-09 00:18:24 -0500
commitada71aafb27f74be912b7f78ccc6e29072a352dc (patch)
treec71f1d992091dee673edfa5c95ecacf6a9463164 /libs/nss/src
parent3b4e35955133ddf388b1c67ef3b7bf7d3e624c71 (diff)
downloadaura-central-ada71aafb27f74be912b7f78ccc6e29072a352dc.tar.gz
Update NSS to NSS_3_64_RTM (m-r89)
Diffstat (limited to 'libs/nss/src')
-rw-r--r--libs/nss/src/.hg_archival.txt8
-rw-r--r--libs/nss/src/.hgtags1622
-rw-r--r--libs/nss/src/TAG-INFO2
-rw-r--r--libs/nss/src/automation/abi-check/previous-nss-release2
-rw-r--r--libs/nss/src/cmd/bltest/blapitest.c85
-rw-r--r--libs/nss/src/coreconf/Linux.mk5
-rw-r--r--libs/nss/src/coreconf/config.gypi1
-rw-r--r--libs/nss/src/coreconf/config.mk7
-rw-r--r--libs/nss/src/coreconf/detect_host_arch.py2
-rw-r--r--libs/nss/src/lib/ckfw/builtins/certdata.txt4
-rw-r--r--libs/nss/src/lib/freebl/Makefile24
-rw-r--r--libs/nss/src/lib/freebl/blapi.h20
-rw-r--r--libs/nss/src/lib/freebl/blapit.h2
-rw-r--r--libs/nss/src/lib/freebl/chacha20-ppc64le.S668
-rw-r--r--libs/nss/src/lib/freebl/chacha20poly1305-ppc.c588
-rw-r--r--libs/nss/src/lib/freebl/chacha20poly1305.c107
-rw-r--r--libs/nss/src/lib/freebl/chacha20poly1305.h6
-rw-r--r--libs/nss/src/lib/freebl/freebl.gyp138
-rw-r--r--libs/nss/src/lib/freebl/freebl_base.gypi6
-rw-r--r--libs/nss/src/lib/freebl/ldvector.c7
-rw-r--r--libs/nss/src/lib/freebl/loader.c30
-rw-r--r--libs/nss/src/lib/freebl/loader.h19
-rw-r--r--libs/nss/src/lib/nss/nss.h6
-rw-r--r--libs/nss/src/lib/softoken/softkver.h6
-rw-r--r--libs/nss/src/lib/util/nssutil.h6
25 files changed, 3290 insertions, 81 deletions
diff --git a/libs/nss/src/.hg_archival.txt b/libs/nss/src/.hg_archival.txt
index 51126b017..c9da8cc3e 100644
--- a/libs/nss/src/.hg_archival.txt
+++ b/libs/nss/src/.hg_archival.txt
@@ -1,4 +1,6 @@
repo: 9949429068caa6bb8827a8ceeaa7c605d722f47f
-node: a0b4e357816b6371b2ce7e3897974ac597293698
-branch: NSS_3_63_BRANCH
-tag: NSS_3_63_1_RTM
+node: 1911de31ad9cda0f9c5a80cdab7eb3ef38429582
+branch: NSS_3_64_BRANCH
+latesttag: NSS_3_64_RTM
+latesttagdistance: 1
+changessincelatesttag: 1
diff --git a/libs/nss/src/.hgtags b/libs/nss/src/.hgtags
new file mode 100644
index 000000000..ff5974cb3
--- /dev/null
+++ b/libs/nss/src/.hgtags
@@ -0,0 +1,1622 @@
+cbdae69e88df1d3416cc2dcbad51f94139512920 NSS_3_14_2_BETA1
+2869c9a3a09dd40c6611c611d55e022b49a98e5f PHT_20030825N10_WIN_MAC
+93210e171b70831707e60d8611281b854697f6f2 NSS_3_14_BETA1
+0108ab5b8b56b2f4dc0dbd2061c864167b36d2be WEB_CONTENT_HANDLING_20070621_POSTMERGE_20070719_FIXED
+54d733bca9955ff9b37b328974a9b2f10cbc61a1 NSS_CLENT_TAG
+cc5b48c8ecdda09f1389ad1eea2817104ba2da80 MOZILLA_0_9_6_BASE
+1551f1c621c856a1eb417b4a9f86c5db074024b5 THUNDERBIRD_0_6_RELEASE
+4d855a9ea29e8edfbaa04d85d76d960b1d307efe MOZILLA_1_1_BASE
+5aa1cb317607b8e95d78a5d2f45e3def56d46f48 JSS_3_1_2_BETA2
+91e5b1727c2a4bdea3399dc9d4c52f9616fdea47 TEMPLATE_19990726_BASE
+822fe872a7d640d88b4d9a9b3edcdf41529cdb57 MOZILLA_1_9a1_RELEASE
+c21f1272e771b990620a6506f0f3726323b42575 NSS_3_13_6_WITH_CKBI_1_93_RTM
+2a1a6cd1c7674417f36d88f9407b726e3ddfa8ff MOZILLA_1_9a7_RELEASE
+44a8e55723ec4e814059f678785ffb596be46662 NSS_3_12_3_2_RTM
+d8debc661f2a9573149505951aeb15bf7644d4b5 RDF_19990326_BASE
+49494f569332042ed656c9c47040863f56732275 FIREFOX_3_0rc2_RELEASE
+73843753cb9c4c9ac952c9a0cb7b33c1ab6ae153 MAIL_05312002_BASE
+0836906e2324d53e3ca11725fb479278abdacef2 SAFEBROWSING_20060516_BASE
+3836ae9d564a7980253d20fae08413e93636222f Makefile
+1d4c7398ee5f536762d03b662454e8d2316b435d WEB_CONTENT_HANDLING_20070621_PREMERGE_20070607
+7d66231cb8e10aa3f07cfc4de9507d98a1dc47bf MOZILLA_1_8b1_RELEASE
+48903189063dfd561ffc80c899065bf63c22df8b MOZILLA_1_8rc3_RELEASE
+89066cc29aad67cab97e01b3bd663573b3ee5fb6 FIREFOX_2_0rc2_RC2
+89066cc29aad67cab97e01b3bd663573b3ee5fb6 FIREFOX_2_0rc2_RC1
+7ef3e203d394e4c397a0a419b32e86b0508f836c Netscape_20001027_RELEASE
+3ba6a7d04cef8f3d58e2b5abce5a7f9accd0573a XULRUNNER_1_8_0_4_RELEASE
+9192b30257075622d0c7f2b1ceb3a2bddc5c89fa NETSCAPE_6_2_1_RELEASE
+ababe982a0078b34c9cf7cbf10cd39faed9368d3 NSS_LIBPKIX_START
+4d8dd387f45172e25b232c073dec341a3b25b23a NSS_3_2_BETA2_20010119
+f13e9ad91272b5a0c29bfb3705064b417dc1ed87 NSS_3_2_REF
+4587fa0676e22446617c2b41ff5e59c842fcfb6a MOZILLA_1_0_0_BASE
+32a490f7080dbdd982f35fadf1393b3526094383 MOZILLA_1_8_1a1_RELEASE
+a7bc329c9fce423691225654496b5f31d0b16c10 ROGC_20030211PR_FREEZE
+11b66f2cd625853ecb48f823fdee22336b503e45 MOZILLA_1_5a_RELEASE
+35f4f16a363e1437e3da2cd4a034106db719891a FIREFOX_2_0_0_4_RELEASE
+dda5ca355d7feec9533d1f4f3725820f0355620d SUN_SECURITY_3_3_6_BETA
+6ce47a605004208f906e04f6ee98fe95bf7c0d97 THUNDERBIRD_3_0a1_RELEASE
+3fc61c7ceb6a74d55cd825b465f27cac6c5de46c NSS_3_13_BETA2
+9ebe08ae7eb8dd8e61ae9eb3c0e5c38110ae6e25 XML_BASE
+e22763257b86bf276bb08ef6fd6914d69f8b0127 MOZILLA_1_3b_RELEASE
+54e9a952eb63cfcf5f28c3f33e5d59ef5c2cad30 NSS_3_12_1_WITH_CKBI_1_72_RTM
+e4c2bc82216a820ccde1f2e711bc45936d193f6c JSS_3_4_1_RTM
+6e23b67dfdd3285e54488180f6cc39816a31d0be nsstip_nt_20020228
+b19740097201797dff9b8c0191b111b3596e07c8 DOM_AGNOSTIC3_PRE_MERGE
+e72d703ee273bb2e79eaa8abed9e2911ddcfc3f8 MOZILLA_1_4a_RELEASE
+6cccea315881fffb35cc622e8538a71319110331 FIREFOX_1_5_0_5_RC1
+693233be03a1df782a41c9497ff686bad4e1de30 moz_win_20021203
+3d42ef9b36abe7f9c74e8f7207fd3195924e0c84 moz_win_20021202
+d56a7c7f33ab08bdd556c759163a1af770672780 ANYTHING_FOR_PUTTERMAN_08082002_BASE
+27ea66d5ca88f95e525e0944852df64039444e46 MOZILLA_0_8_1_2001031617_BASE
+0204699f138a593925188d64cb389eb4d8e5629c CAMINO_1_0_6_RELEASE
+3e567c06f1d22c3e9dcd701f0f1dd4ad74465649 MOZILLA_1_8a6_RELEASE
+c391f2239374d7333ca70124e663bc5362257980 MOZILLA_1_9a3_RC1
+48903189063dfd561ffc80c899065bf63c22df8b MOZILLA_1_8rc2_RELEASE
+a7bc329c9fce423691225654496b5f31d0b16c10 PHT_20030227PR_FREEZE
+93a0f0ede34f4f7ad5f3decd412516ebb75116ca PHOENIX_0_4_RELEASE
+cc2bcfc17ecc568c36de9186489469791af5df5c FOLDER_PANE_20010807_BASE
+c391f2239374d7333ca70124e663bc5362257980 MOZILLA_1_9a3_RELEASE
+7be84714297b24fb508308ec8502330b5099648d SEAMONKEY_1_1_3_RELEASE
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_14_BUILD2
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_14_BUILD1
+ae603aa9c076524cb252dd909e706e0a69d552df Netscape_20001107_SECURITY_MAC_RELEASE
+01a651d55ffc05ff75fa08dea3889a74d157d2c4 MozillaClassicLayout_19981021
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_19_RELEASE
+c88a943c035e60d2660bfe71c233ac6914fd49dd THUNDERBIRD_1_5_0_9_RELEASE
+78df08bd0f501d4127736003ce4330a58638e4f6 FIREFOX_1_0_1_RELEASE
+b3ef05849c067c8d8b6831443ad0402df4d33b94 NSS_CLIENT_TAG_20040323
+9fd2a0132f63cd5d6a49f22a1f96835f8febd066 ROGC_20020830_FREEZE
+3e567c06f1d22c3e9dcd701f0f1dd4ad74465649 MOZILLA_1_8a5_RELEASE
+2294e8c8de301d01a311e7cb3d6e779ca36054b2 SYD_TEST_03052002_BASE
+7c1be942caa54d4052fb8c698a5d6585305022b0 DOUGT_URI_PARSER_06122001_BASE
+348d0dda5e80e8428cf479eeb9fe6404784daa9d FIREFOX_3_0_9_BUILD2
+71eaa7c6a8e2d07a35027f402178485467dcc324 FIREFOX_3_0_9_BUILD1
+7d7190045260c0103ba546cfd048881d99324994 NSIFILE_0106200_BASE
+a4cab8f634abdcfa1ea0b8de678022c909927147 ROGC_20020430_FREEZE
+1abb3b6307c4033b44f3c4a9f04836408efd14b0 NSS_3_12_6_WITH_CKBI_1_79_RTM
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_11_RC1
+18817e05a1f487e14e42c5fec8bc070d6f73a18d FIREFOX_2_0rc1_RC1
+b1362c81cf6076a69e46e3f721f99091eeb058cc PHT_20030321N5_WIN_FREEZE
+18a8351ce780d674a1de7379b49365043f05dbb2 NSS_3_11_2_BETA1
+e8ae270e93c9878d9a3604126c4c5d6672ca8492 MOZILLA_1_7_6_RELEASE
+ed49ae639c2e74e6c33a59a8b188a54a68aade6c NSS_3_1_NT_RTM
+2eaff2364586a94d189c85788bd891e945adf49b NSS_AUTOCONF_BASE
+4550695818cda56048359af67c311c9e113bda1a RAPTOR_INTEGRATION0_BASE
+8e3df5fca0613dc79785325fe6b372a898cb5268 MANIFEST
+c5dda0a10268ed21405d7ec1aecc966aa600a68a JSS_3_5_BETA1
+c985023260e1c916695dbb9588e2aab554ef951a NSS_3_14_3_RTM
+7be84714297b24fb508308ec8502330b5099648d THUNDERBIRD_2_0_0_6_RELEASE
+98f727ed00fa746f163e6b10ea43b984f9cf9293 NSS_3_2_RTM
+d839eb138a74e9019998da5c451e206cbd7e436f JSS_4_3_RTM
+05994d519da3aa5719d0482dfc1009b9b461c175 FIREFOX_3_0_10_RELEASE
+6fe61840d7a2c5a67a4bb97810dbbc642d00b8d9 AVIARY_20040809_MERGEPOINT
+23a74b801922349cce4db20757637e76b070445a NSS_3_12_3_WITH_CKBI_1_75_RTM
+c3bc908bca9c0e0aac065e5643e79f140096ead0 NSS_C
+0ea7bb63b6c1306ff6733730c4b5bb4213381ffa MOZILLA_1_8b4_RELEASE
+6a3920d3faf0c3a532ff26dbd0370d4177b19a2f PSM_1_3_RTM
+49494f569332042ed656c9c47040863f56732275 NSS_3_12_RTM
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_10_RC1
+e2d54096fcebdbfe0708a95fc055da5aa1b55ee0 NSS_3_11_BASE
+df0e2148b5d91dd9521e8901c43e697933ac6d5e SeaMonkey_M12_BASE
+4d8dfcb08e1852162f48db744af0d252c9cc25ee NSS_3_11_20060520_TAG
+b5a7e4bba2c7cf707151ff61c792a9ac471330c0 SEAMONKEY_1_0_5_RELEASE
+0ea7bb63b6c1306ff6733730c4b5bb4213381ffa FIREFOX_1_5b1_RELEASE
+b24424266d03787238a61d490a5319668a9368ba SVRCORE_4_0_1_RTM
+19143cced91410476793148dcd5c300832ee754b ANGELON_MOZ_14_BASE
+59e23ad1545085e832517235fe1deff14a060dbf SeaMonkey_M7_BASE
+45a1e786f75256a793c5860ee1e22fbbd3261c38 CAMINO_1_0rc1_RELEASE
+554ea04f792693e0395b121b0cc19ea66e8be5c8 NSS_3_14_2_RTM
+e870f4b17c146286a9f6212d9e5c0eb7cbd63201 FIREFOX_3_0_13_BUILD1
+18817e05a1f487e14e42c5fec8bc070d6f73a18d FIREFOX_2_0rc1_RELEASE
+69aa752b8ccc77d6ceb76fd0da2ee8a06a20174a NSS_STABLE_TRUNK_20010608
+44a8e55723ec4e814059f678785ffb596be46662 NSS_3_12_3_2_RC1
+990d4b8b9dc5a01850f6911acbe6b6a007c6a2e0 NSS_3_12_3_2_RC0
+78e1981ed4003fc54040d849ea5aef99617222ae NSS_3_14_1_BETA1
+bc598c96ad65f5993cf8fdb4cfcd3def3c245303 NSS_3_14_1_BETA3
+791f82184a01e79470ffddd697c39528ec2b2834 NSS_3_14_1_BETA2
+f47921201c7ee6ee0a878ec48bad6f8ab66f9867 NSS_ZLIB_1_1_4_BASE
+c18ccd0b1ba15881b291f6a82ef8d9279a3fad22 moz_ux_20021203
+da610e32a1259d8836915d9f403cf5d083c44fdf moz_ux_20021202
+7cfa79e317400a7007c8c18449a9b1fe29be73ab NSS_3_12_ALPHA1
+4550695818cda56048359af67c311c9e113bda1a MAILTO_BASE
+df9a13d56acf3a38c65f7fca509b7eae35c7554c NSS_PRE_CACHE_CHECKPOINT
+33dddda4872e9689a229280831b871eee8da2557 INCLUDE_SPRINGCLEANING_BASE
+7be84714297b24fb508308ec8502330b5099648d CAMINO_1_5_5_RELEASE
+2afd0330d9cbb7403bf4cd68fa6260bdd827ce7f SECURITY_3_9_2_BETA2
+0ea7bb63b6c1306ff6733730c4b5bb4213381ffa MOZILLA_1_8b5_RELEASE
+f5b43a0bc6049d6f44bebabf1dba76f53d0dc8be FIREFOX_3_0b5_RELEASE
+26ff794152d6f358e9c812ed78de0c89ec1b282d NSS_3_12_1_RC1
+c06df0e3606d0d978c4a6e26c9a8ef47176514ac NSS_3_12_1_RC2
+f54a7c45f5c9ea90a850e84dd114c62e2495cdfe NSS_3_3_3_BETA121602
+d3f7f2bb794bfc0b533d90433bdfdf524e3b4d67 FIREFOX_1_5_0_2_RC2
+35f4f16a363e1437e3da2cd4a034106db719891a SUNBIRD_0_5_RELEASE
+5d8adc3db0aaf1c992d465955cfaa331bfd2b9b0 FIREFOX_2_0a1_RC1
+35f4f16a363e1437e3da2cd4a034106db719891a THUNDERBIRD_2_0_0_0_RELEASE
+4fb74fa1665acc5ac2c959c73843da8f67b8d1f1 NETSCAPE_7_0_PR1_BASE
+ed0a41d70372d22f98b7afcc4e35852043959e66 SECURITY_3_9_4_RC1
+4550695818cda56048359af67c311c9e113bda1a SMARTUPDATE_BASE
+6d0845e1da308ceaf228eea3b3501cf3c1072e07 NSS_3_4_1_RC1
+646ea476f6b88c78498d9977d45609efca808915 NSS_3_4_1_RC3
+8e23ef81677b8168c4f1117fe6bc2820cf70d1e3 FIREFOX_1_5_0_1_RELEASE
+6edf9a91199bac0148a93866375c05f87db4fd23 MOZILLA_1_9a5_RC1
+f573db1947197a92c3b0fe46f165075b7a55bdb9 MOZILLA_1_9a5_RC2
+e22763257b86bf276bb08ef6fd6914d69f8b0127 MINOTAUR_20030218_BASE
+ba6995f239974a99b582e92733f54804cdffcfe2 THUNDERBIRD_2_0_0_13_RELEASE
+2618cfd419d58338a4da5887dffcd8e2d17a5033 ANGELON_MOZ12_N6_BASE
+73843753cb9c4c9ac952c9a0cb7b33c1ab6ae153 MOZILLA_1_1a_RELEASE
+9f01ee6606821233ffb414d2cfa569cb35578fce MOZILLA_1_6a_RELEASE
+6cccea315881fffb35cc622e8538a71319110331 THUNDERBIRD_1_5_0_7_RC1
+a59870c46884a9473832cb394d3f6b11533c3b33 THUNDERBIRD_1_5_0_7_RC3
+b25347bbd339142bdfb62ec9b3831083327c4e77 THUNDERBIRD_1_5_0_7_RC2
+4d1641699c62cbcdcca6f57a4a4f7f1b7c240ab1 FIREFOX_3_0_3_BUILD1
+a59870c46884a9473832cb394d3f6b11533c3b33 THUNDERBIRD_1_5_0_7_RC4
+10f0663f978972620cba2373b599a48d85b50cda THUNDERBIRD_1_5_0_7_RC6
+27ea66d5ca88f95e525e0944852df64039444e46 XPCDOM_20010329_BASE_PLUS_FLATTENING_BASE
+aeea57681f5651662e1d7515d093166761d6368e XUL_19990428_BASE
+0ea7bb63b6c1306ff6733730c4b5bb4213381ffa FIREFOX_1_1a2_RELEASE
+6912dcc7e9661d1af8e650e10d012366e706444d FIREFOX_3_0b4_RELEASE
+d57b25b5dcea999b2504a96efd2bdd588e71548e MOZILLA_1_7_1_RELEASE
+a1e43ca5b9a7b58e142fbfdbda5c0530b2bd95b4 nscp_beta1_BASE
+688189e442659bfeed4b8f56176ac37ef01fdd38 JSS_4_2_6_RTM
+3a7af932d824710ced472fddc9d46c19a7fcc34e FIREFOX_1_0_8_RC1
+3a7af932d824710ced472fddc9d46c19a7fcc34e FIREFOX_1_0_8_RC2
+f0ad5145bc1208ad8b1b69c64e511fd63f22d504 FIREFOX_3_0_10_BUILD1
+3a7af932d824710ced472fddc9d46c19a7fcc34e FIREFOX_1_0_8_RC4
+3a7af932d824710ced472fddc9d46c19a7fcc34e FIREFOX_1_0_8_RC5
+3a7af932d824710ced472fddc9d46c19a7fcc34e FIREFOX_1_0_8_RC6
+84fb156a5f6685ea89597a00402a8ba6bdef4695 WEB_CONTENT_HANDLING_20070621_BASE
+458d549d23deaad48ea345be1e38edcada7681b5 SeaMonkey_M10_BASE
+001b191ba77503f2babe21caed114fbc522795a3 NSS_3_11_1_RTM
+4cfaf50f384009e654c9380148ea60876a9507c7 NSS_3_12_2_RTM
+6cccea315881fffb35cc622e8538a71319110331 MOZILLA_1_8_0_5_RC5
+6cccea315881fffb35cc622e8538a71319110331 MOZILLA_1_8_0_5_RC4
+4550695818cda56048359af67c311c9e113bda1a RDF_BASE
+4550695818cda56048359af67c311c9e113bda1a OJI_BASE
+5f61c7e93fec7936ea58fd2765956e27d8af19df FIREBIRD_0_7_1_RELEASE
+6cb71f690b953e4304cac5c669511fe0b0352657 THUNDERBIRD_0_5_RELEASE
+51991e72b33439eb5d3299b74bba3ce56fb4ddad WINCE_20020710_BASE
+9de3cb96187345b29ffb307402f7da11b9697e8d MOZILLA_1_3_20030221_BASE
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_16_BUILD1
+d56a7c7f33ab08bdd556c759163a1af770672780 MOZILLA_1_0_1RC1_TAG
+933b6353045a9e8c943016b1d68475eed4d387c5 THUNDERBIRD_2_0b1_RC1
+3badd73e8682ec8a7529306d957becd1c220a39e THUNDERBIRD_2_0b1_RC2
+fc20154b9c07f91b0459f607f795e9a94e114c55 PACKAGING_20030906_BASE
+6fefa4212f4cfb51b2c6f4a13561cb18609f89be THUNDERBIRD_0_9_RELEASE
+69dccf753c4e3e1b941618041e973d90e8da2e36 FIREFOX_3_0b3_RELEASE
+01ed4c5c2eb3289f5106df66517404bdca45607b CAMINO_1_6_11_RELEASE
+3e567c06f1d22c3e9dcd701f0f1dd4ad74465649 XFORMS_20050106_BASE
+4d1641699c62cbcdcca6f57a4a4f7f1b7c240ab1 FIREFOX_3_0_2_BUILD6
+26ff794152d6f358e9c812ed78de0c89ec1b282d FIREFOX_3_0_2_BUILD4
+4d1641699c62cbcdcca6f57a4a4f7f1b7c240ab1 FIREFOX_3_0_2_BUILD5
+26ff794152d6f358e9c812ed78de0c89ec1b282d FIREFOX_3_0_2_BUILD2
+26ff794152d6f358e9c812ed78de0c89ec1b282d FIREFOX_3_0_2_BUILD3
+032c678eda5e263b9630830ab143094742966acb NSS_HEAD_20090409
+43c2b0cca5fcc08ec47d2f23d42b9390949eafa0 NSS_3_3_4_6_RTM
+3aad25ffd510adc33c21cb68713e07f33c2822fd CAMINO_1_6_7_RELEASE
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_17_RELEASE
+1d407c07de419ffaa9cbe3d85e943409436d55a9 NSS_3_7_3_BETA1
+7be84714297b24fb508308ec8502330b5099648d SEAMONKEY_1_1_6_RELEASE
+92710972d393855ff1bed709003bcf1ba177278d JSS_3_2_BETA3
+c470f71b9fd83ebd2ed226d9743e1bd400152b4b NSS_3_7_6_RTM
+01ed4c5c2eb3289f5106df66517404bdca45607b THUNDERBIRD_2_0_0_23_BUILD1
+d66112da6c9eb5e4d9d7bb574d64b0c2f7eb9c56 JSS_TIP_20060404
+09d839cae8958b16fc59f8880bb8f726407a5520 NSS_3_8_3_BETA1
+9f01ee6606821233ffb414d2cfa569cb35578fce THUNDERBIRD_M2_BASE
+68f2ba3aa95a13aa529cae09afc0c1ab653a155e NSS_3_8_3_BETA2
+e5d6cb1b5f393dc01abc3c600eb2c6ab7df8ee0a NSS_3_13_1_RTM
+a5194743a3a75ea4fef99a22118fd6096d06bcd8 MOZILLA_0_7_20010109_RELEASE
+fcd2a1238ac2335ba21980aee80038ad1e1ab442 DOM_AGNOSTIC2_BASE
+a42d841597934415655bed2559a598f4ab42b671 NSS_3_12_BRANCHPOINT
+ed8347d61b6e957581eaa5c07534f2d1392af4f5 JSS_3_1_2_2_RTM
+52811c7cd6aaa4728752694efa8af00da68cd12a JSS_3_1_1_RTM
+be71ea7f0325ebba78a883d152eea04ca5a4f192 NSS_3_7_4_RTM
+a67c5ae8dac66c68632418fce8d479407969f03e NSS32RtmAll
+8e3adb01b5814d462e57a185c8acdffedab02ff5 JSS_FIPS_20060524
+85a761e5fb5bf73528f23221dc8fab72b8a08713 FASTLOAD_20010703_BASE
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_11_RELEASE
+0975891ade17befc005c9adc7e9757a0676f91b6 JSS_3_4_1_BETA1
+a4cab8f634abdcfa1ea0b8de678022c909927147 ROGC_20020430_BASE
+4fb74fa1665acc5ac2c959c73843da8f67b8d1f1 MOZILLA_1_0_RELEASE
+e2d54096fcebdbfe0708a95fc055da5aa1b55ee0 NSS_3_11_RTM
+d56a7c7f33ab08bdd556c759163a1af770672780 NETSCAPE_7_0_RTM
+df3fa49730ec1f16356fd5217a9346cd6cd87276 NSS_TIP_20020426
+2827a9dc9e403ce4d918a94d6aeda509b6b8d608 SVRCORE_20070312_404_RTM
+4fb74fa1665acc5ac2c959c73843da8f67b8d1f1 MOZILLA_1_0_RC2_RELEASE
+5ac1a59af55ed240ad0dbd62ddcee9d7c2c73219 WEB_CONTENT_HANDLING_20070621_PREMERGE_20070719
+4e7386341e699cdd5adc04808ad40eb970deff68 MOZILLA_1_7_5_RELEASE
+290a94ec0937e0a662f2a4c7e747174c5820fe18 MOZILLA_1_7_3_RELEASE
+78df08bd0f501d4127736003ce4330a58638e4f6 FIREFOX_1_0_RELEASE
+bb81ebb236c6e3d70732212df6490f34032d49fa CAMINO_1_6_2_RELEASE
+6fefa4212f4cfb51b2c6f4a13561cb18609f89be FIREFOX_1_0_RC2_RELEASE
+a77a0c587f64076672defd391cc0313793c68cb0 NSS_3_2_2_RTM
+64581d81ef4bd38621b21b7e128f19a259fc20c6 JSS_3_5_RTM
+53a64564599519c264b91d69a06b7ce177b3119f NSS_3_12_2_WITH_CKBI_1_73_RTM
+48903189063dfd561ffc80c899065bf63c22df8b THUNDERBIRD_1_5rc1_RELEASE
+6920f22c975c6d67be5e7e0a888a645f8aa5ea50 FIREFOX_2_0b2_RELEASE
+6c4e2b31ba82423305b5865c4f34bcda6b5d9dc0 NSS_3_11_7_BETA1
+4d855a9ea29e8edfbaa04d85d76d960b1d307efe MOZILLA_1_1_RELEASE
+78df08bd0f501d4127736003ce4330a58638e4f6 THUNDERBIRD_1_0_RELEASE
+fac3307cceb4e39c24cf3421ceb187e9aebc401f FORMS_20040722_BASE
+bce4219a342b120ec7c88f3a377f4b16ad83cf44 ALERT_SERVICE_BASE
+e2bd62673129757d665e2f85e8be2f611c446083 XBL_FORMS_20001011_BASE
+6d88952b83a8184c13e14075e01476838f370624 MOZILLA_1_6_20031218_BASE
+0c44ddb1c70b28a27cca3ea6dcea0e4744604ef2 NSSCKBI_1_65_RTM
+122a3c68605b28025d059cc7977c365d0ea3f8f3 AIMEG_FACETIME_20030318
+c18a885212556c21c4a1f3be6f7ac6c8f2920cd3 NSS_3_13_BETA1
+bb81ebb236c6e3d70732212df6490f34032d49fa CAMINO_1_6_6_RELEASE
+5d0fc9917ffef72addc84984e8dbd48c75584a71 NSS_3_4_PRE_BETA
+47c50882c7a3bc27aca529f16dd4f0f47063fa6f DBM16_RTM_20011206
+ba6995f239974a99b582e92733f54804cdffcfe2 FIREFOX_2_0_0_13_RELEASE
+5aa694dc13d8d0c56abc5977feea984dc79b8a26 NSS_3_13_4_BETA1
+4fb74fa1665acc5ac2c959c73843da8f67b8d1f1 MOZILLA_1_0_RC3_RELEASE
+78df08bd0f501d4127736003ce4330a58638e4f6 THUNDERBIRD_1_0_RC_RELEASE
+bb81ebb236c6e3d70732212df6490f34032d49fa SUNBIRD_0_9_RC2
+4d75747933494fffead0b07e5c7f1a3d7718fec8 XPCDOM_20010420_BASE
+17d370e006f208aff77f52a26dd9ce53853cbc69 MSS_MULTIACCESS_DB_TAG
+a42d841597934415655bed2559a598f4ab42b671 NSS_3_12_7_RTM
+6c04d40a7d1ef3b3122f67d4a463b7383be7c9c6 FIREFOX_1_0_7_RELEASE
+1fc3e0877bcf9728936067275dd180d4dc9ba218 NSS_3_11_1_RTM_STUDIO11
+416a9100fcdb4b9762fcacf0271499ce4db350d2 ANGELON_MOZ_14_20030709_TAG
+3ba6a7d04cef8f3d58e2b5abce5a7f9accd0573a SEAMONKEY_1_0_2_RELEASE
+d56a7c7f33ab08bdd556c759163a1af770672780 MOZILLA_1_0_20020927_TAG
+c391f2239374d7333ca70124e663bc5362257980 MOZILLA_1_9a4_RC1
+c391f2239374d7333ca70124e663bc5362257980 MOZILLA_1_9a4_RC2
+e49f1c2fd8e5a488102a9be74b8e723d229bdf28 ANGELON_MOZ12_N8_BASE
+c5761a2e24d4721d89fa77f198ce5c14a02b4d60 NSS_3_3_4_4_RTM
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 CAMINO_2_0_6_RELEASE
+728ef75c57771e05e0c14f77ea08ec954065223d SUNBIRD_0_5_RC3
+e8ae270e93c9878d9a3604126c4c5d6672ca8492 MOZILLA_1_7_7_RELEASE
+dc11e773516b4d402dde7dbb8f1928d0f7ca33a9 THUNDERBIRD_2_0_0_22_BUILD1
+7be84714297b24fb508308ec8502330b5099648d CAMINO_1_5_1_RELEASE
+01115643a42ebf677b27b39ce9579c03521bdb1a NSS_MULTIACCESS_DB_TAG
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_7_RELEASE
+907ef460ac7d6408f0f944f372297f1ce1fbc578 PREDJN_20010612
+196b94d69210b4df478f90b5982ce2a49823b192 NSS_3_12_10_BETA1
+1b729fbdd33e1cf6155d5d91e8e7b56f0f3138f5 MOZILLA_1_3a_RELEASE
+0204699f138a593925188d64cb389eb4d8e5629c CAMINO_1_0_5_RELEASE
+214c7d1b0ceebf80db158bbf29928aaf1b998cae NSS_3_3_1_RTM
+4d75747933494fffead0b07e5c7f1a3d7718fec8 MOZILLA_0_9_RELEASE
+93578a87de2527840dd1255c6b053b3ff18bc51d SECURITY_3_3_10_RTM
+d57b25b5dcea999b2504a96efd2bdd588e71548e MOZILLA_1_7_2_BASE
+ae603aa9c076524cb252dd909e706e0a69d552df Netscape_6_0_RTM_SECURITY_MAC_BASE
+7b2ec6de76428ea483d78d1fd7fdafddd5969b38 JSS_4_2_BETA1
+6912dcc7e9661d1af8e650e10d012366e706444d FIREFOX_3_0b4_RC1
+6912dcc7e9661d1af8e650e10d012366e706444d FIREFOX_3_0b4_RC2
+8e23ef81677b8168c4f1117fe6bc2820cf70d1e3 MOZILLA_1_8_0_1rc1_RELEASE
+7c1be942caa54d4052fb8c698a5d6585305022b0 CW7_20010609_TAG
+4d75747933494fffead0b07e5c7f1a3d7718fec8 Accessible_042501_Base3
+3ad41012cfc1c324a09e590360746a6760b2ba15 PHOENIX_0_5_RELEASE
+414c0a7abed3467347b47af148f500e5ab4b0c79 FIREFOX_0_9_RELEASE
+c0f8f5bce56f2e6127ddbbb777bc0bac5e93be8f NSS_3_11_1_RTM_FORTE6
+01a651d55ffc05ff75fa08dea3889a74d157d2c4 OjiFunctionalFreeze_POINT_19981229
+458d549d23deaad48ea345be1e38edcada7681b5 NEW_SKIN_19991014_BASE
+2ad7feecf3f52585f137d57b766c7d5e3a9aaf7b NSS_3_9_3_BETA3
+e2f7ec43527edb6ed384ce4d6a0002119c6007f3 NSS_3_10_1_BASE
+9c7177e63b162b858e05d4a84fa946c884146069 JSS_PRE_NSS_3_12_API
+2df0426200543e4d507fec4882413d868a315947 MOZILLA_1_9a7_RC1
+c736977da64cd7102cf2e4a3b7872ffd35c36b0e THREADS_20060307_BASE
+c391f2239374d7333ca70124e663bc5362257980 MOZILLA_1_9a4_RELEASE
+5bdb0331d2ce7b53296e58cdcfe90c92735ecd75 NSS_3_9_BETA1
+2ae9b279181754f065c6f45f26b1df9314da7105 NSS_3_9_BETA2
+707967bcd95ce2c088e7f6c796d277b38132439d NSS_3_9_BETA3
+eff0d505ffc6920f4e9cb1a89adc7498f71f00b4 NSS_3_9_BETA4
+f5ce6f448694d8d9419ede56d2b8a7eeff7d4e70 NSS_3_9_BETA5
+e36869320535627cc678e3eb2988060e15b35d04 CW7_20011205_TAG
+d06adf79c43aa2b6b0648d7f08ba0d6e6ebc571b MOZILLA_1_6b_RELEASE
+9f5e658d090f615943c3baaeb100137c1cc447dd NSS_3_9_3_RTM
+4fb74fa1665acc5ac2c959c73843da8f67b8d1f1 CHIMERA_M1_0_BASE
+8d9a5c9ced775a4d4e2dae47a6e0cbcbda0390c6 JSS_3_1_RTM
+98574f9c5ed9a02225940a653a35e73a331baf61 PROGRESS_19980909_BASE
+889edd6aa5e6fae6cd2416736b9656a07d3ef43a NSS_3_4_SunBeta0314
+d471b72f2fe2e62bf38e6246123181298dfd695d JSS_4_3_1_RTM
+6db16b92b29ef2176b5183ae8ca2d48a0629af79 XBL_FORMS_20001013_BASE
+d9ef37b63f2796944eddaff7686a07ac1d0320d4 NSS_3_4_SunBeta0318
+4550695818cda56048359af67c311c9e113bda1a OS2_BASE
+e8ae270e93c9878d9a3604126c4c5d6672ca8492 MOZILLA_1_7_10_RELEASE
+d56a7c7f33ab08bdd556c759163a1af770672780 NETSCAPE_7_0_RTM_RELEASE
+c9e448f3a05aac168e340c2b4cdd80f9cc21543a RDF_19981124_BASE
+02a629203fde11cf355b0332b31d9500c9a8d8a4 THUNDERBIRD_0_7_3_RELEASE
+e2d54096fcebdbfe0708a95fc055da5aa1b55ee0 NSS_3_11_RC1
+18ca07d0d9afcaf9e9ee0377aafa96bcc6b02691 LIGHTNING_0_3_1_RC1
+5b069e061226b54b16d5201aaf10938eaca901f0 LIGHTNING_0_3_1_RC2
+5b92a4b31b9ede8b05215fd31752b77188a4712e NSS_3_7_7_RTM
+dabb56e444dc535d50a6618fd9773e325162698f MOZILLA_1_0_2002082106_TAG
+df0089a311c77302607210a96cf32f4893e3ae10 PHT_20030619N8x_WIN_MAC
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_18_RELEASE
+6cccea315881fffb35cc622e8538a71319110331 FIREFOX_1_5_0_5_RELEASE
+ce7ce904abae1bb3e8986aa47212a8e50e5cc101 NSS_3_12_3_BASE
+ee3d07a6e67a8df952cded07093118523446c5ad MINIMO_01302003_TAG
+aacb761e4d4e1141487615b1f3161c5dca8fb4b2 JSS_3_1_2_SUN_PKG_1120_BETA
+6920f22c975c6d67be5e7e0a888a645f8aa5ea50 FIREFOX_2_0b2_RC1
+a3f450d612d5d9755e55f5028deffce6f73b17d9 NSS_NSCP_20020228_1
+c88a943c035e60d2660bfe71c233ac6914fd49dd FIREFOX_1_5_0_9_RELEASE
+8e23ef81677b8168c4f1117fe6bc2820cf70d1e3 SEAMONKEY_1_0_RELEASE
+e059abec415f2160aa95a90fd30b76c22d52ddbd NSS_3_13_2_RTM
+01a651d55ffc05ff75fa08dea3889a74d157d2c4 MozillaSourceClassic_19981026_BASE
+48f58cf955ad6041a69e1377852f876353c2c657 WEB_CONTENT_HANDLING_20070621_PRE_LAUNCHWITHURI
+187b0890758f35fca27358db6fe2548b82f95f35 NOIMG_20010801_TAG
+a5effd84689547663d46a7619d685fa89ac9d14b NSS_3_12_9_1_RTM
+494413d946d5eb24f00d51798ffbfa9879755cb1 FIREFOX_3_0_8_RELEASE
+849f41e1a6ae01d7cb43638e97e5f2426c47114a RDF_BASE_060398
+5af52840a8607dd916e281a176590b6325d4fb77 NSS_3_11_7_RC1
+5a35f53ceece4112a7108344ec52406706d01075 NSS_3_11_7_RC0
+dc11e773516b4d402dde7dbb8f1928d0f7ca33a9 SEAMONKEY_1_1_17_RELEASE
+1732cdbe707b516362da5f30155247736a8faab2 PSM_2_2_DEV_20011016_1736
+ba6995f239974a99b582e92733f54804cdffcfe2 THUNDERBIRD_2_0_0_13_RC1
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_9_RC1
+4b178baab98c1591306bfa52a56aa686c6e88662 NSS_3_13_6_BETA1
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_8_RC1
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_8_RC2
+e7a9e64becebd4d609a94b53519fe7911518bb12 NSS_3_13_1_BETA2
+368fffc4659cc2d0cd523125edc6dc1d63450443 NSS_3_13_1_BETA1
+316815a945ac8557754351bdc332ba964f459a7e SUN_SECURITY_3_3_7_RTM
+89066cc29aad67cab97e01b3bd663573b3ee5fb6 FIREFOX_2_0rc2_RELEASE
+79171f1b8b016d3ff0e49a6f9a1a0c795575f90e SUNBIRD_0_3_BASE
+9130f83f4c8ad7c6dae0ff70b451cce34cbdda03 NSS_3_12_3_BETA4
+822fe872a7d640d88b4d9a9b3edcdf41529cdb57 NSS_3_11_4_RTM
+7d8eb5e2e323cf9e7347ffd2c29cf126da5503c5 NSS_CLIENT_TAG_20020925
+7428e4fee0c24819e94b3d18ab2e937d68d7d150 NSS_3_12_3_BETA1
+4a0cf1ec4091c9be7cb56c5291735b3d06aa0eee NSS_3_12_3_BETA3
+b839f80e3886a58a1c297482433a63f6353b7304 NSS_3_12_3_BETA2
+bb81ebb236c6e3d70732212df6490f34032d49fa SUNBIRD_0_9_RELEASE
+d56a7c7f33ab08bdd556c759163a1af770672780 ISHMAIL_1_0_BASE
+4d89b11e33083be6f1107da4ff9247f5d92b9de8 NSS_3_14_1_WITH_CKBI_1_93_RTM
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 CAMINO_2_0_3_RELEASE
+ba6995f239974a99b582e92733f54804cdffcfe2 CAMINO_1_6_RELEASE
+bae39fe3b16da0c45aa44d5e59823aacdaef6ef9 NSS_3_11_10_WITH_CKBI_1_67_RTM
+d56a7c7f33ab08bdd556c759163a1af770672780 ANYTHING_FOR_PUTTERMAN_BASE
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_15_BUILD3
+cc5b48c8ecdda09f1389ad1eea2817104ba2da80 MOZILLA_0_9_6_RELEASE
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_15_BUILD1
+b3adaa1e84d5a55d2ceb0061408491b72ddce735 NSS_3_6_1_BETA1
+71ed92981bb1622f9f43e8408a448434aa441d08 NSS_3_6_1_BETA3
+7b41867320bd376658ddd49098d59f1137fa7ae7 NSS_3_6_1_BETA2
+a899451cc0eb74d9835f4e9da643acc2aa5df27f NSS_3_12_4_WITH_CKBI_1_77_RTM
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_15_RELEASE
+07c37e18b782521677301d65aa0faf02b0f21d2b IFRAME_20011127_BASE
+e420b76ca6fe83d63fad03e255eb055a8ac01562 THUNDERBIRD_2_0_0_19_RELEASE
+7324ca828210ba063e0e834372517044a75369ed REFLOW_20020422_BASE
+67745ac9f337f434f7d767bec14260fa1ab7483b MOZILLA_1_8a1_RELEASE
+86466b478b6d71f633a83c59092a93d9ed548a0c JSS_3_1_2_RTM
+c88a943c035e60d2660bfe71c233ac6914fd49dd FIREFOX_1_5_0_8_RELEASE
+27ea66d5ca88f95e525e0944852df64039444e46 FOLDER_OUTLINER_20010410_BASE
+0ea7bb63b6c1306ff6733730c4b5bb4213381ffa THUNDERBIRD_1_5b1_RELEASE
+c6bd96fcbac6aa40c6f32af80a399c9f817e7ad7 NSS_CLIENT_TAG_20020319
+35f4f16a363e1437e3da2cd4a034106db719891a FIREFOX_2_0_0_4_RC1
+35f4f16a363e1437e3da2cd4a034106db719891a FIREFOX_2_0_0_4_RC2
+35f4f16a363e1437e3da2cd4a034106db719891a FIREFOX_2_0_0_4_RC3
+c36d9e174765d2f0eab0f9fcbd1b8387f6d5edf0 STYLEMAGIC_20010509_BASE
+02ce04a63816f05b646006b32a1fc0e44aec37f5 NSS_3_7_1_BETA1
+1664a7a5970e8e86c7f655c39917e8777f133387 NSS_3_7_1_BETA2
+c60f92c58793bc04b4627dc805a07959768cd753 NSS_3_7_1_BETA3
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_15_RELEASE
+ee5c4fa74f66d1ab28944c5635a0e52cb1381269 SUN_SECURITY_3_3_5_WEBSERVER
+c88a943c035e60d2660bfe71c233ac6914fd49dd SEAMONKEY_1_0_7_RELEASE
+8c6708c9d7b636f63c2d5706ba8aae380261c593 nss34_20020321
+c88a943c035e60d2660bfe71c233ac6914fd49dd FIREFOX_1_5_0_8_RC2
+c88a943c035e60d2660bfe71c233ac6914fd49dd FIREFOX_1_5_0_8_RC1
+2d53e22df6da3ea61ac4211ceef015da830cf690 Netscape_PR3_RELEASE
+e420b76ca6fe83d63fad03e255eb055a8ac01562 THUNDERBIRD_2_0_0_16_RELEASE
+0635a0424187fe0de5345265edc6a7310bf335b6 JSS_4_2_RTM
+b0b943d6a02edbee874a5f5542a34ae04ef2f7e5 SeaMonkey_2001052912_BASE
+ae3ce6175e88533891d16426eaaa919dd6ca384b LDAPCSDK_20050510_RTM
+ce87e265fdfbd02bd259b31360333291a2a72cd7 NSS_3_12_ALPHA1B
+b4209f9b57850f320613886a66aac9cacc3d145d NSS_3_12_ALPHA1A
+d57b25b5dcea999b2504a96efd2bdd588e71548e MOZILLA_1_7_RC3
+1551f1c621c856a1eb417b4a9f86c5db074024b5 MOZILLA_1_7_RC1
+0ea7bb63b6c1306ff6733730c4b5bb4213381ffa MOZILLA_1_8_BASE
+d3f7f2bb794bfc0b533d90433bdfdf524e3b4d67 CAMINO_1_0_1_RELEASE
+6645fb60d990f39b7cb3a64291c9e72796a3e789 NSS_OTIS_BETA_1
+54b0fc194fbda82219e689fb65ccf77a9bf8c831 NSS_OTIS_BETA_2
+5f00e0cb83d253024ebae093c8d13be980b8fd07 MOZILLA_0_9_7_RELEASE
+6c04d40a7d1ef3b3122f67d4a463b7383be7c9c6 THUNDERBIRD_1_0_5_RELEASE
+35f4f16a363e1437e3da2cd4a034106db719891a FIREFOX_2_0_0_2_RC3
+9192b30257075622d0c7f2b1ceb3a2bddc5c89fa MOZILLA_0_9_4_2_RELEASE
+4ef3a341f996f4edd8077cb5a455fdcf1918ef35 NSS_3_2_BETA3
+45a1e786f75256a793c5860ee1e22fbbd3261c38 CAMINO_1_0_RELEASE
+4533084bfa688a93178d447b0ab341defab9facd NSS_3_11_3_BETA1
+aeea57681f5651662e1d7515d093166761d6368e EVENTQUEUE_19990503_BASE
+6503320a2855ec7d8e0c64cfdd3ecd566a8a5cd9 NSS_PHB_POST_FORTEZZA
+cdb6eefbf24a72856c37b547ebf16eb6206d03af NSS_3_11_5_BETA1
+56ad610fc9f455a05a2ccdf2550c0a3bb825abd6 NSS_3_11_5_BETA2
+ef3ed87f5b673bb75dd7608e29942f3a32a56069 NSS_3_11_20060403_TAG
+49494f569332042ed656c9c47040863f56732275 NSS_3_12_RC4
+6ce47a605004208f906e04f6ee98fe95bf7c0d97 NSS_3_12_RC2
+56eb9fb4397049117b1cf0d682f40211d20d7eaf NSS_3_12_RC3
+a9497bb3a23ecc2b067a20db67931a4479055415 NSS_3_12_RC1
+0a0fb4a0503d8bbae3043e2a3fecd9cf190b0091 XPCDOM_20010223_BASE
+1d45c129edaf44bf96f0c6f866d9d96345b4ee30 NSS_CLIENT_TAG_20050315
+46fc7d9e228f5a8237ade0e0fba32f31f343afdf OJI_19980528_TEMP_BASE
+f5b43a0bc6049d6f44bebabf1dba76f53d0dc8be FIREFOX_3_0b5_RC1
+f5b43a0bc6049d6f44bebabf1dba76f53d0dc8be FIREFOX_3_0b5_RC2
+8a987d32ebde9d75034adbb72f8d16a593b76091 NSS_3_4_1_RTM
+c391f2239374d7333ca70124e663bc5362257980 NSS_3_11_5_RTM
+0204699f138a593925188d64cb389eb4d8e5629c THUNDERBIRD_1_5_0_13_RELEASE
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_15_BUILD1
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_15_BUILD3
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_15_BUILD2
+6e880784ff509eb49e277d3b48c129ea0c1bfc1f NGT_TECHDEMO_19981125_BASE
+6c04d40a7d1ef3b3122f67d4a463b7383be7c9c6 FIREFOX_1_0_5_RELEASE
+73843753cb9c4c9ac952c9a0cb7b33c1ab6ae153 MAIL_05302002_BASE
+e85710fd938409141e9eebd3aa35dd5064bd6392 PSM20_M_1_5_TAG
+663f2e9dee6c796a4343f8f3ea9aa565418a13a3 FOLDER_OUTLINER_20010417_BASE
+7715006624d53192b62b8b794b9209acec278c72 NSS_3_13_3_RC0
+e26dba44a7d8a8ff3865730e88ac10276f279f6a NSS_SSL_3_13_4_20120319_TAG
+01ed4c5c2eb3289f5106df66517404bdca45607b THUNDERBIRD_2_0_0_23_RELEASE
+6920f22c975c6d67be5e7e0a888a645f8aa5ea50 SEAMONKEY_1_1a_RELEASE
+e420b76ca6fe83d63fad03e255eb055a8ac01562 SEAMONKEY_1_1_12_RELEASE
+e420b76ca6fe83d63fad03e255eb055a8ac01562 THUNDERBIRD_2_0_0_16_BUILD1
+3c8e38f07daac7855b58b9eff7ef9d1d506fc91d NSS_3_12_10_RTM
+d95b72a458b9d0c31968953f4887a28c028b7264 MOZILLA_0_9_8_BASE
+7be84714297b24fb508308ec8502330b5099648d THUNDERBIRD_2_0_0_5_RC1
+143ca695bbd6f39ffd5a0156093d864fe6a4e895 ANDREAS_URL2_BASE
+5f61c7e93fec7936ea58fd2765956e27d8af19df MOZILLA_1_5_1_RELEASE
+9906d341bd795d7f952293c03a57f9766e666ae9 Netscape_20000922_BASE
+0204699f138a593925188d64cb389eb4d8e5629c THUNDERBIRD_1_5_0_12_RELEASE
+cfda15b9d056c6e5a923158851b355bc6d5f1268 WIN64_MASM_BASE
+afd261c50f268024b4623ce071d574195ed01cff NGT_TECHDEMO_RELEASE
+56eb9fb4397049117b1cf0d682f40211d20d7eaf FIREFOX_3_0rc1_RELEASE
+5f00e0cb83d253024ebae093c8d13be980b8fd07 MOZILLA_0_9_7_20011221
+97d942112a6e3fb10ef3718eaa02eaf2eea8fa0b FIREFOX_3_0b2_RC1
+b0b943d6a02edbee874a5f5542a34ae04ef2f7e5 FASTLOAD_20010529_BASE
+c8ef6eeafc3dde727ab1c796cd158a0fdf8d1116 ROGC_20020830
+a465b716bb5b80173397abc7ad1c3a508370929b LIGHTNING_0_3_1_RELEASE
+03b49c49688b5e21355a34e59c530c939d77345b CAMINO_1_6_8_RELEASE
+48903189063dfd561ffc80c899065bf63c22df8b MOZILLA_1_8_0_BASE
+9e9dab259b923089251ddc0dca8ea6df746cec5e NSS_CRLDP_BASE
+1f754ff91864dc4fed9d87e8d250b15bd4529686 ANGELON_MOZ12_BASE
+3485b39544f6f8a21ebbf97bc2847e373f54dc45 WEB_CONTENT_HANDLING_20070621_POSTMERGE_20070607
+84b44d238d0f8ae94488640c4af85f0351324144 NORMANDY_DDAY_BASE
+dc11e773516b4d402dde7dbb8f1928d0f7ca33a9 SEAMONKEY_1_1_15_RELEASE
+43631329b650c8964a2a33aeace059a1f46ff5f9 MOZILLA_1_0_RC1_RELEASE
+69dccf753c4e3e1b941618041e973d90e8da2e36 FIREFOX_3_0b3_RC2
+69dccf753c4e3e1b941618041e973d90e8da2e36 FIREFOX_3_0b3_RC3
+69dccf753c4e3e1b941618041e973d90e8da2e36 FIREFOX_3_0b3_RC1
+b8906ccfd293ad7bf266d34365318326af4dc944 nss377_20030613
+49494f569332042ed656c9c47040863f56732275 FIREFOX_3_0_RELEASE
+5c4753212a2a9a98072a9dc217bfdef35cd0f888 NSS_CLIENT_TAG_20020305
+167f74577cbfeb1def5865bb7a5adbbf25534a95 NSS_3_9_1_BETA1
+7f02f4f893e329420711c7357e53333a4d526958 NSS_CLIENT_TAG_20020308
+755506f1cfb04791061cd597a4342e03e27950ba MOZILLA_1_0_2_RELEASE
+48903189063dfd561ffc80c899065bf63c22df8b THUNDERBIRD_1_5rc2_20051107-UNUSED_RELEASE
+b6c2fba1f31a48cc9c696575f8a49cb164a5dd08 NSS_3_4_2_20020528
+8c7a149ce794f9b554dd01f1ace5e21667744d86 NSS_3_10_1_RTM
+6d2ecd30e934bd620fbd2e39fe7bfeaa53adb3ba NSS_3_12_5_BETA
+4cfaf50f384009e654c9380148ea60876a9507c7 FIREFOX_3_0_5_RELEASE
+0204699f138a593925188d64cb389eb4d8e5629c THUNDERBIRD_1_5_0_12_RC2
+0204699f138a593925188d64cb389eb4d8e5629c THUNDERBIRD_1_5_0_12_RC1
+b0b943d6a02edbee874a5f5542a34ae04ef2f7e5 MOZILLA_0_9_1_2001060715
+d5fb11eee9dd19533c5d6ffe515d01307d14a903 NSS_3_3_2_SUN_PKG-apps-server
+7dfaf6d7cbe4614ba9045963766e5a25784cf5eb JSS_3_2_RTM
+0783a37db353fa78d1cfe67c179ce2bc91da9fba CAMINO_2_0_8_RELEASE
+e80a3438d9b5822ec022a0ac72b52924a6d277e8 MOZILLA_1_2_1_RELEASE
+fac3307cceb4e39c24cf3421ceb187e9aebc401f FORMS_20040722_XTF_MERGE
+e577921a41500ed345f52b9eea260501d79e23f3 JSS_3_1_BASE
+d95b72a458b9d0c31968953f4887a28c028b7264 MOZILLA_0_9_8_RELEASE
+d3f7f2bb794bfc0b533d90433bdfdf524e3b4d67 THUNDERBIRD_1_5_0_2_RC1
+d3f7f2bb794bfc0b533d90433bdfdf524e3b4d67 THUNDERBIRD_1_5_0_2_RC2
+35f4f16a363e1437e3da2cd4a034106db719891a FIREFOX_2_0_0_3_RC1
+86a1fbebca1720218c932496acc7e0e70ea4c208 PREFERENCES_20050201_BASE
+4d75747933494fffead0b07e5c7f1a3d7718fec8 Style_20010509_Base
+7be84714297b24fb508308ec8502330b5099648d CAMINO_1_6_B2_RELEASE
+e4c34f6f1facdc51e3fc25acbca398761892b694 NSS_334_20030307
+21d70e8a2ed2bb2631bcfc53559a7399571c91ac JSS_3_1_2_2_RC011503
+49494f569332042ed656c9c47040863f56732275 THUNDERBIRD_3_0a2_RELEASE
+e36869320535627cc678e3eb2988060e15b35d04 CW7_20011204_TAG
+f9cf75f9ce77f795732fe153da55233e4079e7af SeaMonkey_M18_BASE
+0204699f138a593925188d64cb389eb4d8e5629c THUNDERBIRD_1_5_0_13_RC1
+0e42fdc38a8ec020a8a2bdcf7a5019577408e0ba NSS_3_13_4_RTM
+85a2d07129ea0b37338ff5cef926bd9f0064d044 NSS_3_3_2_SUN_PKG-0918
+35f4f16a363e1437e3da2cd4a034106db719891a SUNBIRD_0_5_RC1
+d57b25b5dcea999b2504a96efd2bdd588e71548e CAMINO_0_8_RELEASE
+d89678175204f6c7493e7a277e9cdb725af012db NSS_CLIENT_TAG_20030319
+b6b95d73bfaff1c6cb3c90635928a90e1b11f3c2 NSS_3_3_BASE
+0e0bdbf7685ea6db2497ec5993b319ee87f4725a FIREFOX_1_0_2_RELEASE
+ba6995f239974a99b582e92733f54804cdffcfe2 CAMINO_1_6_1_RELEASE
+452ea27781c2414ea7af5a7bb857f0236660f604 JSS_3_4_2_BETA1
+4fb74fa1665acc5ac2c959c73843da8f67b8d1f1 MOZILLA_1_0_0_2002052821
+ed49ae639c2e74e6c33a59a8b188a54a68aade6c NSS_3_1_RTM
+8f0f9a07732bb154b355624d3999236c8499dfe5 SVRCORE_4_0_RTM
+f09d27d3feeeb5c14b82eac06acaa7ef58b39186 STATIC_BUILD_20010628_BASE
+9192b30257075622d0c7f2b1ceb3a2bddc5c89fa NETSCAPE_6_2_3_RELEASE
+043d808e90c5475c2a076b92da582bdb37c29b96 moz_20020906
+fdbd8735c55af4d3c253343319b03594a8adb75c moz_20020902
+4b35c867487dc6071728d674450b92e5b077c7a8 MOZILLA_0_8_2001020916_BASE
+4b84a683df08549ae9409300d43c9638fe972549 NSS_3_4_2_BETA1
+b6c2fba1f31a48cc9c696575f8a49cb164a5dd08 NSS_3_4_2_BETA2
+cf2d3e32f23e331e6d49f94952c3381086f9a2f0 NSS_TIP_20020503
+10f0663f978972620cba2373b599a48d85b50cda FIREFOX_1_5_0_7_RELEASE
+5f6b2db78064cd306b9f85267880995df374d83c NSSCKBI_1_79_RTM
+8b506366445c3ef98109c06f0d4f6660a52c7e03 JSS_3_2_0_1
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_17_BUILD1
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_17_BUILD2
+14617c443a3258258976d8c8dc8940b7f84e31c7 FIREFOX_3_0_11_RELEASE
+7be84714297b24fb508308ec8502330b5099648d CAMINO_1_5_2_RELEASE
+41d8aa98ae6c52979e5141357137c3f043f037a1 EDITOR_EMBEDDING_20011025_BASE
+092757e5612a471a644b985d6c851f1e1f1e08cf JSS_3_7_RTM_HPUX_IPF
+6d83a69f025be5082c3124749bd6599c4efaad36 XPC_IDISP_20020417_BRANCH
+64a33c6c140c8cac72dcae14aad154bff9e92574 Netscape_6_01_20010207_RELEASE
+9b4ab0393e5b64f3735f087d7ae4f085389b78b5 FIREFOX_0_10_RELEASE
+cae7ae4d40b93df98bede0f5724a6bf987481a90 NSS_3_10_2_RTM
+7b907d6cd610c3593bd1ebab3d95e0ba3f691b0d SUN_SECURITY_3_3_5_RC
+180a61cd18f3135a450f44051d00800b40b25413 PHT_20030522N7_WIN_FREEZE
+dc11e773516b4d402dde7dbb8f1928d0f7ca33a9 THUNDERBIRD_2_0_0_21_RELEASE
+de014bd8165becffae80198648e5284eba40940d NSS_3_10_BASE
+01aac66e85b3b5af2fd852ee7c7d2a00da3931eb NSS_3_11_2_RTM
+3e567c06f1d22c3e9dcd701f0f1dd4ad74465649 PREFERENCES_20050101_BASE
+97d942112a6e3fb10ef3718eaa02eaf2eea8fa0b FIREFOX_3_0b2_RELEASE
+7be84714297b24fb508308ec8502330b5099648d CAMINO_1_6_A1_RELEASE
+3ba6a7d04cef8f3d58e2b5abce5a7f9accd0573a CAMINO_1_0_2_RELEASE
+0204699f138a593925188d64cb389eb4d8e5629c FIREFOX_1_5_0_12_RC1
+73da9d6d2e2388d884736496c8b64f0b2fbc159b NSS_3_4_20020403_2
+67711a7eff92e28eb0cec949b425ddf95aae3de8 THUNDERBIRD_0_2_BASE
+0ea7bb63b6c1306ff6733730c4b5bb4213381ffa SEAMONKEY_1_0a_RELEASE
+ba993d16b10671d97a07d67c207f921ec3bd03e7 MOZILLA_0_9_2_1_SRC_RELEASE
+0836906e2324d53e3ca11725fb479278abdacef2 NSS_3_11_20060515_TAG
+c63d14343cb2cd0aa1fb01c6faab02842d4de21b PHT_20030605N7_MAC
+a1e43ca5b9a7b58e142fbfdbda5c0530b2bd95b4 SeaMonkey_M15_RELEASE
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 CAMINO_2_0_1_RELEASE
+a1b31b33a3609e5575da22858cbe2ada2d4bd97f DDRINAN_TEST_NSS_TAG
+57745512b200e3abe4b978cc0b61abb95e8809b2 FIREFOX_2_0_0_1_RC1
+8cf550edebf67e9ceacf370160eea9ea6c77b26b FIREFOX_2_0_0_1_RC2
+8e57e174f015fe7a4c7f10dc5e0103e7c9b7b110 CONRAD_PROMPT_1_TAG
+63b63307a4ed58b7f2f4721d034c6e3ccd476cae MOZILLA_200303241605_TAG
+6cccea315881fffb35cc622e8538a71319110331 MOZILLA_1_8_0_5_RELEASE
+2bc8cbe330f4e7f2592f9513f39adfcea1a0c4fe NSS_3_14_1_BASE
+b0b943d6a02edbee874a5f5542a34ae04ef2f7e5 STATIC_BUILD_20010523_BASE
+755506f1cfb04791061cd597a4342e03e27950ba NETSCAPE_7_02_RELEASE
+ccc70ba1dbaec4a70cef0d5af11d33a62cbe5e69 NETSCAPE_7_0_OEM_RELEASE
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_9_RELEASE
+e8ae270e93c9878d9a3604126c4c5d6672ca8492 CAMINO_0_8_4_RELEASE
+5f00e0cb83d253024ebae093c8d13be980b8fd07 MOZILLA_0_9_7_BASE
+448057ea4e563bf13a7ec38e26ac1f1692ad3e0d NSS_3_12_9_RC0
+4e273eb39e10a84625cc299d466b75f42c961844 NSS_3_9_1_RTM
+05b1d41ec61de04f8f86c1f2e580173adb65e3b1 NSS_3_1_BASE
+7bf3a75fb2a9df06ec629c981edf670c1c8292f8 DOUGT_CHANNEL_CHANGES_02112001_BASE
+0e0bdbf7685ea6db2497ec5993b319ee87f4725a THUNDERBIRD_1_0_2_RELEASE
+575d4c8f0fcaa14b52757590556be1db6f985497 FIREFOX_2_0a2_RELEASE
+8b0d76faa09b364cdcaafb5ae546aa2287f4d2b4 NSS_3_12_3_2_WITH_CKBI_1_73_RC1
+2618cfd419d58338a4da5887dffcd8e2d17a5033 pmoz_20030415
+f81eaab1d353afe537412390cb760df302772806 NSS_CLIENT_TAG_20020204
+4f88d171f5c338014e412d23bd6ba9ddd4a2c8b6 AB_OUTLINER_BASE
+ba6995f239974a99b582e92733f54804cdffcfe2 CAMINO_1_6_B4_RELEASE
+fcebe3de12ceb166c7924b73b2e595fb32c2fcdb NSS_3_7_5_RTM
+290a94ec0937e0a662f2a4c7e747174c5820fe18 MOZILLA_1_7_2_RELEASE
+91e5b1727c2a4bdea3399dc9d4c52f9616fdea47 PRE_NECKO_LANDING_M9_MidLifeCrisis_19990728_BASE
+10f0663f978972620cba2373b599a48d85b50cda THUNDERBIRD_1_5_0_7_RELEASE
+7be84714297b24fb508308ec8502330b5099648d THUNDERBIRD_2_0_0_12_RC1
+df0e2148b5d91dd9521e8901c43e697933ac6d5e SeaMonkey_M12_RELEASE
+8e23ef81677b8168c4f1117fe6bc2820cf70d1e3 XULRUNNER_1_8_0_1_RELEASE
+b6c2b9707ebd78a393dc593eb401d93f83d4d7e8 Netscape_20001030_RELEASE
+6ba8f3fa189109c1f3c1295453f5ac97f911146d NSS_3_7_9_BETA1
+8f536087ab4dc16fe776dd9e497c3411f60bb7eb NSS_3_12_4_RTM
+dd84eb3b24f0aa7bf8cc2019f45cb1972d720218 NSS_3_5_RTM
+c2066129c10079a3cc75bd52ef3cded246929575 SeaMonkey_M9_BASE
+59e23ad1545085e832517235fe1deff14a060dbf SeaMonkey_M7_19990619_BASE
+4550695818cda56048359af67c311c9e113bda1a OJI_19980423_BASE
+0204699f138a593925188d64cb389eb4d8e5629c FIREFOX_1_5_0_11_RC1
+7be84714297b24fb508308ec8502330b5099648d THUNDERBIRD_2_0_0_9_RC1
+2fed9649f5e4c333d4431b54b7c9d2fd3ee34707 CAMINO_1_1_A2_RELEASE
+66be68c297c0fde1b11d8035544f83ced21e2469 MOZILLA_0_9_2_BASE
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 CAMINO_2_0_5_RELEASE
+6cccea315881fffb35cc622e8538a71319110331 SEAMONKEY_1_0_4_RELEASE
+3e22879011b4d2e8482da5b5034e0d56a7a2118d CAMINO_0_7_RELEASE
+ba6995f239974a99b582e92733f54804cdffcfe2 FIREFOX_2_0_0_14_RC1
+ecce0049cc4c751772ea67edd8eeb11df18bf7ce NSS_3_12_7_BETA
+854e4e80e1d4770524750aa86d332eaca1b16547 DBM_1_61_RC1
+79171f1b8b016d3ff0e49a6f9a1a0c795575f90e NSS_3_11_20060926_TAG
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 NSS_3_12_3_1_RTM
+7e5b08485620537b6804121508e42c2087e3bb62 JSS_3_3_RTM
+197029821be0be974cb8f111b757748c12d88dd3 NSS_3_4_20020329_2
+c06df0e3606d0d978c4a6e26c9a8ef47176514ac NSS_3_12_1_RTM
+49494f569332042ed656c9c47040863f56732275 THUNDERBIRD_3_0a2_BUILD1
+c449abdd9b20154e7332cc3b1f7b096c7263c564 moz_20020919
+7be84714297b24fb508308ec8502330b5099648d SEAMONKEY_1_1_8_RELEASE
+aa3224a8b5edb2e21492a01f21b4e4239661e105 NSS_3_3_1_BETA1
+90aa77eadd7335a4cb62e80f82e9090c046f95e9 NSS_3_3_1_BETA2
+b8bf90ffc0f92536a48fd405e37f56ef74317871 NSS_3_3_1_BETA3
+8e23ef81677b8168c4f1117fe6bc2820cf70d1e3 FIREFOX_1_5_0_1rc1_RELEASE
+bc3941d4d42858a614a57ac73b9151f849bb38ef Netscape_20001031_RELEASE
+92710a9c741694c80d5c4577454805227ebfb949 NSS_TIP_20020510
+cd8030bbfd6610b66f2506908a6830c3c60537f5 DBM_1_6_BASE
+270879de7d40d603699880aa59d17040dd5091e9 JSS_3_1_2_2_BETA1217
+63133a0fc4389b6dfc3b12ca1786bab50916848e NSS_FIPS_20060524
+e8ae270e93c9878d9a3604126c4c5d6672ca8492 MOZILLA_1_7_9_RELEASE
+050cebf213f48713b18b901827e3e2997e7e2ef3 RDF_19990407_BASE
+de76e30eb1031e03cbb671a360e141ffe7ac2f4a NSS_3_12_2_WITH_CKBI_1_75_RTM
+e80a3438d9b5822ec022a0ac72b52924a6d277e8 MOZILLA_1_2_RELEASE
+337c25a6803a0ae66f48a9f4c738235a2595993d NSS_3_11_10_RC1
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_16_BUILD1
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_16_BUILD2
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_16_BUILD3
+c049641d43acc65be6d60b887ecf7edd704b87a4 FIREFOX_3_0_7_RELEASE
+290a94ec0937e0a662f2a4c7e747174c5820fe18 CAMINO_0_8_1_RELEASE
+ad81932ae36e427a683fda1806ee6f7909f26ea7 PHOENIX_0_3_RELEASE
+849f41e1a6ae01d7cb43638e97e5f2426c47114a NORMANDY_BEACH_BASE
+425b5a3f8ab127343c82ccfbaa60d70ce6bf1a56 MOZILLA_1_7_13_RELEASE
+49494f569332042ed656c9c47040863f56732275 FIREFOX_3_0rc3_RELEASE
+7c7aa9c2ec7b11831b45ad4fce6691be5c9fc5f1 JSS_4_0_RTM
+48903189063dfd561ffc80c899065bf63c22df8b FIREFOX_1_5_RELEASE
+ba6995f239974a99b582e92733f54804cdffcfe2 SEAMONKEY_1_1_9_RELEASE
+2c223b79cacfcb4a5abe9b9fe316ca270e442877 MOZILLA_0_9_5_RELEASE
+7be84714297b24fb508308ec8502330b5099648d THUNDERBIRD_2_0_0_12_RELEASE
+5a50e40434005d0cdf92545ecc5b9f44d40d33bb NSS_3_7_9_RTM
+414c0a7abed3467347b47af148f500e5ab4b0c79 FIREFOX_0_9_1_RELEASE
+c47cc2cdd5a2afc1bb53d43e72cfbb090e59a6d0 NSS_CLIENT_TAG_20041015
+101ce902abf30fe4202b1555bfc971bc47125170 THUNDERBIRD_1_1a1_RELEASE
+cfbcf7a3e0b3ed62f8600d6833f00141d85c2501 FIREFOX_3_0b1_RC1
+e63cce5e79e44122f5f12a9d36140947a7049924 FIREFOX_3_0b1_RC2
+738a1ff067d620d2a38637fe574f60bb0cf00028 FIREFOX_3_0b1_RC3
+d8debc661f2a9573149505951aeb15bf7644d4b5 N3
+ce961c69b3aa3aeb07d173ec3c53401aa90147c2 MOZILLA_1_3_RELEASE
+7e2154151b2e61b63e943615fc1f392ffe174240 NSS_3_3_2_RTM
+e8ae270e93c9878d9a3604126c4c5d6672ca8492 CAMINO_0_8_3_RELEASE
+79171f1b8b016d3ff0e49a6f9a1a0c795575f90e SUNBIRD_0_3_1_RELEASE
+f8e1d2d249c36c4330a6a671e1c87a80e3800770 SUN_SECURITY_3_3_5_BETA4
+9192b30257075622d0c7f2b1ceb3a2bddc5c89fa NETSCAPE_6_2_RELEASE
+8a2e5b3a6c3ba46eb98a17bad8fe32c0957db478 SUN_SECURITY_3_3_5_BETA2
+6ffba62e4e2d419b74ae256bbf3bc6f5d409e6a0 SUN_SECURITY_3_3_5_BETA3
+d56a7c7f33ab08bdd556c759163a1af770672780 MOZILLA_1_0_1_RELEASE
+90972d7f9241e3b26e464bc5de305a08297d660a FIREFOX_3_0_6_RELEASE
+1001a5d40787879920e919b66148d64311ce1389 NSS_3_3_3_BETA_Sun120602
+9d8f9c9f4a2bcad8a9a54dde247090ad83cf0e5c MOZILLA_1_7b_RELEASE
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_7_RC1
+4d855a9ea29e8edfbaa04d85d76d960b1d307efe NMAKE_LAST_RITES
+d8debc661f2a9573149505951aeb15bf7644d4b5 RDF_SCRIPTABLE_19990317_BASE
+29ee86cc74216e171a1b95486dfc40de88335d0b NSS_3_13_CKBI_1_93_RTM
+11b66f2cd625853ecb48f823fdee22336b503e45 FIREBIRD_0_6_1_RELEASE
+ec287e05156e90ede4716c5efb15e562637ca21e MOZILLA_1_4_RELEASE
+01ed4c5c2eb3289f5106df66517404bdca45607b THUNDERBIRD_2_0_0_24_BUILD1
+49cb0641b3d1a007b1eb5990b8dfaf1d84f930da NSS_CLIENT_TAG_20020217
+d53becfa90cb167001f68360ee8cccc1e70095e4 NSS_CLIENT_TAG_20020213
+e420b76ca6fe83d63fad03e255eb055a8ac01562 THUNDERBIRD_2_0_0_17_RELEASE
+82a54cfe746d85521157fb77daa0cb054b909a07 NETSCAPE_7_1_RELEASE
+89066cc29aad67cab97e01b3bd663573b3ee5fb6 SEAMONKEY_1_1b_RELEASE
+5981593d299cb1787742f4f5987e3b0fe33e859b FIREFOX_2_0b1_RELEASE
+cd6caa3453363f223510cc286387b7c15a6d3159 NSS_TNH_1_BASE
+48903189063dfd561ffc80c899065bf63c22df8b FIREFOX_1_5rc2_RELEASE
+d3f7f2bb794bfc0b533d90433bdfdf524e3b4d67 SEAMONKEY_1_0_1_RELEASE
+a5194743a3a75ea4fef99a22118fd6096d06bcd8 NSS_3_1_1_RTM
+c367928fe47982081d6859c3a0941ef0edfbffc6 SeaMonkey_M17_BASE
+85a2d07129ea0b37338ff5cef926bd9f0064d044 NSS_3_3_2_SUN_PKG_RTM
+67745ac9f337f434f7d767bec14260fa1ab7483b FORMS_20040621_BASE
+604ec9582927a212a7609edf01b5d88ef54e9934 SUN_SECURITY_3_3_5_BETA
+0516d96a64fda5eb8c534ee9da50b2fa474f3a96 JUD_PROMPT_TAG
+36ef1b43825909f77dad25a3400d76c5e4b757dd NSS_CLIENT_TAG
+8ac88fe92039ad5234d1bba498633aa038ff15e8 NSS_3_11_10_RC2
+dacf455313d19b18014e7a15431a95254cb8253f NSS_3_11_10_RC3
+bb81ebb236c6e3d70732212df6490f34032d49fa CAMINO_1_6_4_RELEASE
+e140babf20143bac546c87f8a53c98f62e414f4a NSS_3_11_20060831_TAG
+52ffbd07f49dc3351082f47c2300b9b0dc67ad57 DBM_1_6_BETA1
+b4908fc743bb0269db300776b6921620ae256766 Netscape_6_0_RTM_BASE
+6cccea315881fffb35cc622e8538a71319110331 FIREFOX_1_5_0_5_RC3
+6cccea315881fffb35cc622e8538a71319110331 FIREFOX_1_5_0_5_RC2
+2618cfd419d58338a4da5887dffcd8e2d17a5033 PHT_20030424N6_WIN_FREEZE
+6cccea315881fffb35cc622e8538a71319110331 FIREFOX_1_5_0_5_RC5
+6cccea315881fffb35cc622e8538a71319110331 FIREFOX_1_5_0_5_RC4
+e7e562c3453de3088762b8e6e28f5dd5200901ab NSS_3_13_6_RTM
+4d1641699c62cbcdcca6f57a4a4f7f1b7c240ab1 FIREFOX_3_0_2_RELEASE
+ec214431cfaae2fc12b53cf3a77eda43ab9290ad NSSCKBI_1_72_RTM
+4d1641699c62cbcdcca6f57a4a4f7f1b7c240ab1 FIREFOX_3_0_3_RELEASE
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_5_RELEASE
+f9152c9488e1fda2e66ca4a55d0b7a1e65360a1c NSS_3_11_20060905_TAG
+e81ba1d2709b93396ccecf65cb32ed12781a5c72 SURESH_IM_STANDALONE_BASE
+3dfbcf406b491d3907234ce5dc8fd8245e3c6248 NSS_3_11_5_WITH_CKBI_1_64_RTM
+4cfaf50f384009e654c9380148ea60876a9507c7 FIREFOX_3_0_5_BUILD1
+ae603aa9c076524cb252dd909e706e0a69d552df Netscape_6_01_20010207_SECURITY_MAC_RELEASE
+571ea5374e4433581fa4363cd0fda7f26d51526a NSS_3_8_2_BETA1
+f4d0261f87e4793d412b4082fa0935e29f4c0846 NSS_3_8_2_BETA2
+50a4f6f054878fa7a4ece4664e07b89fc475c4e5 NSS_3_3_3_BETA121402
+d8debc661f2a9573149505951aeb15bf7644d4b5 SeaMonkey_M3_BASE
+763ccdb4ba39ff6261a26af1b8b73ac99da9c640 NSS_CLIENT_TAG_20031117
+bb082110acd13923d38f14b291e0748e2dd69ff0 NSSCKBI_1_75_RTM
+6912dcc7e9661d1af8e650e10d012366e706444d NSS_3_12_BETA2
+d8d6ca66d6acf6eac40ce0c92c13ec98975e5f90 SPLITWINDOW_20050714_INITIAL_TRUNK_LANDING
+4678258e3dde02c6f5297ac14aa6622e1c9f343a NSS_3_12_11_RTM
+448057ea4e563bf13a7ec38e26ac1f1692ad3e0d NSS_3_12_9_RTM
+0436c1469ca03f2445d4957df6fcd1bcdb4569a9 NSS_3_2_BASE
+23a715e8d117f0459688e453fcca0d8d14776851 Netscape_20001107_RELEASE
+7be84714297b24fb508308ec8502330b5099648d THUNDERBIRD_2_0_0_9_RELEASE
+35f4f16a363e1437e3da2cd4a034106db719891a FIREFOX_2_0_0_2_RELEASE
+c391f2239374d7333ca70124e663bc5362257980 MOZILLA_1_9a2_RC1
+baa3c67c248cfdcea61d53f5d38465f8361a4c80 PROGRESS_19980920_BASE
+72d19effbdc4a971bf8d8eae56ddb97a9112a80f moz_ux_20021026
+a362bad24363a512ade7460acf9ff6b1e3dfdbb7 SUNBIRD_0_3a1_RELEASE
+faa8c3e5141ef4af8cdd23fcbe16ef8b8cb92e27 NSS_TRUNK_20060424
+1732cdbe707b516362da5f30155247736a8faab2 PSM_2_2_DEV_20011015
+277874d24cda780afc44d28faa9f01f7256f94f2 NORMANDY_BEACH_PRE_MEDIUM_LANDING
+0002708e93175665a1cb2c19053fd43b22c23507 PSM_1_2_RTM
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_12_RC1
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_12_RC2
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_12_RC3
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_12_RC4
+12acca72f31c28250991a595b5967dbe90a6053c JSS_4_2_4_RTM
+b0b943d6a02edbee874a5f5542a34ae04ef2f7e5 Accessible_052901_Base4
+bb5746690e18905f9e2b5befbeb88377aa788761 NSS_3_13_4_BETA2
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_10_RELEASE
+f697a3077e27b8c01bc28c7d8bc1416e9f67e6b3 NSSCKBI_1_82_RTM
+c420e3e44ebb380b5af476a0eafc3ed79599880e NSS_3_11_4_BETA1
+f6238a243ddcd3fd09e54a959cbadd69701b5077 SVRCORE_4_0_4_RTM
+7be84714297b24fb508308ec8502330b5099648d CAMINO_1_6_B1_RELEASE
+bb81ebb236c6e3d70732212df6490f34032d49fa CAMINO_1_6_3_RELEASE
+304e2f9c7836f436f1aea920a475766237c76b39 Netscape_2000_1030_RELEASE
+1a9726288b79882fe3f05e2ce59dd201c3249bc0 ROMAXA_20070529_GTK2_THEBES_BASE
+7c1be942caa54d4052fb8c698a5d6585305022b0 REPLY_PERF_20010608_BASE
+53d30f0bbd4a97aa25bbd4e06eed45e3629bb050 NSS_3_11_20060331_TAG
+51f5f5e1703c163c3332381ffaa66f57d6a337de NSS_3_7_2_RTM
+6461b7e246166b3cd3f5c4a9244599e3727eef30 Netscape_20001106_RELEASE
+ea966ea6d0fd19792f0536fed2addffd81c56b12 NSS_3_7_8_RTM
+3352aeca13b6a22a0d875f9302fe04ba0f15a5b8 NSS_3_3_4_3_BETA
+6c04d40a7d1ef3b3122f67d4a463b7383be7c9c6 FIREFOX_1_0_3_RELEASE
+d56a7c7f33ab08bdd556c759163a1af770672780 MOZILLA_1_0_20020912_TAG
+4da0ea62942a4e16416d5081814481fdec0893f4 JAR_20000216_BASE
+5d6e316d9cae67e7d47beb79b78ae66beaf69c29 NSS_CLIENT_TAG_20041008
+e419f913c947dbe62698953426daa8c748df5b3b NSS_3_2_BETA5
+48261f7e93670c0c7f7f92b024280cd896147380 NSS_3_2_BETA4
+9a0ce48a45b7afaa0361df44d7b55941cbcfec55 MOZILLA_0_9_9_20020301
+a1e43ca5b9a7b58e142fbfdbda5c0530b2bd95b4 travisWebshell_03082000_BASE
+e420b76ca6fe83d63fad03e255eb055a8ac01562 THUNDERBIRD_2_0_0_17_BUILD1
+66378f4554fc6f093a9b8a19e939e1c3008ddb59 FIREFOX_2_0_0_1_RELEASE
+6ce47a605004208f906e04f6ee98fe95bf7c0d97 NSS_3_12_0_BRANCHPOINT
+82ee9fcac6e1cc0403006be250dbfccca8762b47 NSS_3_5_BETA1
+947c549ceaca6d9593897bb30ab990c11f61636a NSS_3_5_BETA2
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_17_RELEASE
+0ea7bb63b6c1306ff6733730c4b5bb4213381ffa MOZILLA_1_8b3_RELEASE
+86f34392c2343824e50fdf413b2875dba01364a7 NSS_3_6_RTM
+79171f1b8b016d3ff0e49a6f9a1a0c795575f90e SUNBIRD_0_3rc1_RC1
+35f4f16a363e1437e3da2cd4a034106db719891a SEAMONKEY_1_1_1_RELEASE
+ba6995f239974a99b582e92733f54804cdffcfe2 SUNBIRD_0_8_RELEASE
+4cfaf50f384009e654c9380148ea60876a9507c7 CAMINO_2_0_B1_RELEASE
+b77d3837c8922253fadfe9d2e1958b59c13cb0d6 NSS_3_4_20020114
+6cccea315881fffb35cc622e8538a71319110331 FIREFOX_1_5_0_7_RC1
+b25347bbd339142bdfb62ec9b3831083327c4e77 FIREFOX_1_5_0_7_RC3
+6cccea315881fffb35cc622e8538a71319110331 FIREFOX_1_5_0_7_RC2
+a59870c46884a9473832cb394d3f6b11533c3b33 FIREFOX_1_5_0_7_RC5
+a59870c46884a9473832cb394d3f6b11533c3b33 FIREFOX_1_5_0_7_RC4
+10f0663f978972620cba2373b599a48d85b50cda FIREFOX_1_5_0_7_RC6
+9d8df85fb23dfe54a7b4dec403032752c84dcfef BOB_3_12_ALPHA_TEST_1
+10f0663f978972620cba2373b599a48d85b50cda MOZILLA_1_8_0_7_RELEASE
+c391f2239374d7333ca70124e663bc5362257980 UPDATE_PACKAGING_R11_1
+5c1ba1600106d04aeecbdd179719988499a17f6c NSS_3_10_BETA3
+c9b11774f1cbbdfc64771454970f457f5a38749b NSS_3_10_BETA2
+ffdeff9fc3828824d6ba027bc489220f7288fa6a NSS_3_10_BETA1
+bebf2d738edaa7bdd678a06fd3068e015df2ad41 SSU_20030812_BASE
+849f41e1a6ae01d7cb43638e97e5f2426c47114a OJI_19980618_BASE
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_20_BUILD1
+91668de49702503f8bb830750e624dd9d7f79d06 NSSCKBI_1_85_RTM
+ba6995f239974a99b582e92733f54804cdffcfe2 FIREFOX_2_0_0_13_RC1
+6cccea315881fffb35cc622e8538a71319110331 FIREFOX_1_5_0_6_RC1
+140cd3bff1ce20c2e665adbd144ff55b118384d5 JSS_TIP_20060224
+bb81ebb236c6e3d70732212df6490f34032d49fa CAMINO_1_6_5_RELEASE
+35f4f16a363e1437e3da2cd4a034106db719891a LIGHTNING_0_5_RC1
+4550695818cda56048359af67c311c9e113bda1a OJI_1998_0527_TIP_MERGE
+b19740097201797dff9b8c0191b111b3596e07c8 DOM_AGNOSTIC3_BASE3
+4d8dfcb08e1852162f48db744af0d252c9cc25ee DOM_AGNOSTIC3_BASE2
+7be84714297b24fb508308ec8502330b5099648d CAMINO_1_5_4_RELEASE
+e21ecb4e7d370c833790936d679b60ddfcbea42b ROGC_20021218_FREEZE
+93f6d4080570adfdae6f4d5889d6d847f55123db NSS_3_4_2_RTM
+92d982ae73d10b31b796c9d92c92140d7e5e7984 FOLDER_OUTLINER_20010531_BASE
+0ea7bb63b6c1306ff6733730c4b5bb4213381ffa THUNDERBIRD_1_5b2_RELEASE
+ae3a01d40fa6141d4d196204af88949c727906bf NSS_3_11_BRANCH_20060224
+12103b8a28f0c7d550033735530bd72925deb766 JSS_4_3_1_BETA
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_15_BUILD2
+dd61d2d01cd2e9a0d6a04f4c2bdaf6cc0b787779 JSS_4_2_5_RC0
+649f546fd9f11d88566c6ead2ed1ec30cbee3027 OJI_19980727_TIP_MERGE
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_19_BUILD1
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 CAMINO_2_0_2_RELEASE
+e8e98f559ebceca911ed9cf6fece722a8d1078e3 NSS_3_12_8_BETA2
+fb18545e94eb6ae9c49e1b62a90e465f3b85d0ea NSS_3_12_8_BETA3
+f80a8570054ee72693fbb4dcc7c8fdd61ca3fe86 NSS_3_12_8_BETA1
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_7_RC2
+c88a943c035e60d2660bfe71c233ac6914fd49dd THUNDERBIRD_1_5_0_8_RELEASE
+1f657571ebb60ea5472b260438bf1abdbb45c6d7 NSS_CLIENT_TAG_20031219
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_18_BUILD1
+0ea7bb63b6c1306ff6733730c4b5bb4213381ffa DOM_AGNOSTIC_BASE
+48903189063dfd561ffc80c899065bf63c22df8b THUNDERBIRD_1_5_RELEASE
+18162710943f8b3d77539f6db619fb9654928ee9 NSS_3_3_4_8_RTM
+67745ac9f337f434f7d767bec14260fa1ab7483b FORMS_20040611_BASE
+69dccf753c4e3e1b941618041e973d90e8da2e36 NSS_3_12_BETA1
+f5b43a0bc6049d6f44bebabf1dba76f53d0dc8be NSS_3_12_BETA3
+614f353165f065d5e3c16ad58ed2140dfff8d948 NSS_3_8_WTC_TMP
+654b5c59bf68ec0e6b556c35740cfbc7ae7e7a5e moz_ux_20021104
+9262576327f835b3a1688c3ffee25f3fd8b10db2 moz_ux_20021108
+5981593d299cb1787742f4f5987e3b0fe33e859b FIREFOX_2_0b1_RC1
+5981593d299cb1787742f4f5987e3b0fe33e859b FIREFOX_2_0b1_RC3
+5981593d299cb1787742f4f5987e3b0fe33e859b FIREFOX_2_0b1_RC2
+e23151eae0c304f5a05da230a2b80f5cde3ae1c8 NSS_3_8_1_RTM
+d4a15afb55dfea9fc3b4dda620e93cd49cbb3759 NSS_CLIENT_TAG_20020515
+98574f9c5ed9a02225940a653a35e73a331baf61 ColorSync_19980824_BASE
+3ba6a7d04cef8f3d58e2b5abce5a7f9accd0573a FIREFOX_1_5_0_4_RELEASE
+d3f7f2bb794bfc0b533d90433bdfdf524e3b4d67 FIREFOX_1_5_0_2_RC1
+c8e19e98adb70c3b57db3943a6cfe1dcfed31ac4 NSS_3_13_CKBI_1_88_RTM
+4d559b0a3a6204c598d387a3dad260b1beabb98d NSS_3_7_8_BETA1
+48903189063dfd561ffc80c899065bf63c22df8b SEAMONKEY_1_0b_RELEASE
+d3c15158c72d495d95a2733a372afc4c1c8d7437 SECURITY_3_3_5_WEBSERVER
+01ed4c5c2eb3289f5106df66517404bdca45607b SEAMONKEY_1_1_18_RELEASE
+56eb9fb4397049117b1cf0d682f40211d20d7eaf FIREFOX_3_0rc1_BUILD1
+89066cc29aad67cab97e01b3bd663573b3ee5fb6 FIREFOX_2_0_RELEASE
+4fb74fa1665acc5ac2c959c73843da8f67b8d1f1 NETSCAPE_7_0_PR1_RELEASE
+4550695818cda56048359af67c311c9e113bda1a OJI_19980430_BASE
+e420b76ca6fe83d63fad03e255eb055a8ac01562 THUNDERBIRD_2_0_0_18_BUILD1
+f80e077f11c029bf35a92102de84a6d445bfa12f MOZILLA_1_9a6_RELEASE
+add5b8efa5b5642964005b17c957c864951b4d2d SUN_SECURITY_3_3_12_RTM
+a59870c46884a9473832cb394d3f6b11533c3b33 THUNDERBIRD_1_5_0_7_RC5
+180a61cd18f3135a450f44051d00800b40b25413 ANGELON_MOZ12_N7_BASE
+5c2e65712e27e3bdd953cc2992458c45e8747291 XPCDOM_20010502_BASE
+c423565b5cc76c23539a2bf2343bb8b077d022bc NSS_3_13_2_BETA1
+6746d7daa956a2f22c8b15a11aa7375be5528392 NSS_3_13_2_BETA3
+70a1c9c141b2b0d3baca9fdf859572fc8ac3d7c9 NSS_3_13_2_BETA2
+878b45f1eabc199c39adaf99a4d3c0b3ac62b053 XPCOM21_BASE
+33471c6b6b0f4506d6602a9044a47c282d48cf2e JSS_3_1_RC1
+7be84714297b24fb508308ec8502330b5099648d THUNDERBIRD_2_0_0_6_RC1
+06364cae56a45153badb43ef40ea556246ca3a1f FIREBIRD_0_6_RELEASE
+0204699f138a593925188d64cb389eb4d8e5629c SEAMONKEY_1_0_8_RELEASE
+77f6e5d89db2e42588d27357eeaf84b253d75672 NSS_3_11_1_BASE
+89b289adbed544fb171e3f46fb1f5a4eac929a1c FIREFOX_3_0b1_RELEASE
+c88a943c035e60d2660bfe71c233ac6914fd49dd THUNDERBIRD_1_5_0_9_RC1
+216b7eaf666c958013f89d72f605153a2f71951f NGLayoutStability2_BASE
+3939583322f3f5655b5890a512b2408df5fe752c JSS_4_2_BRANCHPOINT
+0213bd906cbbc0a2ba0ccce63816fb5e880e92e3 moz_win_20021014
+c4539761e1a94b860be2c760d399018c86391c96 NSS_3_12_6_BETA1
+697571f764414d14c13ebf6b5de1e63fb9043746 PHOENIX_0_1_RELEASE
+825354358d79053ea6498389250ccdd2a7e53b57 PRE_PRINTF_TAG
+2b1609df9477f212c801e720900e540ed49fc0ae BEONEX_0_8_2_0_RELEASE
+d3f7f2bb794bfc0b533d90433bdfdf524e3b4d67 THUNDERBIRD_1_5_0_2_RELEASE
+d57b25b5dcea999b2504a96efd2bdd588e71548e MOZILLA_1_7_RELEASE
+e22763257b86bf276bb08ef6fd6914d69f8b0127 QT_LAST_RITES
+9b4ab0393e5b64f3735f087d7ae4f085389b78b5 THUNDERBIRD_0_8_RELEASE
+8d4c87d8de45e4ed8f55cbb2488990e43d2ba135 NSS_3_14_RTM
+5997831da35e43b29b7482aa25edb7fcbc47ca14 no_neckoutil2_base
+a6870185fd8ef9bb0ef2066e2181e9c8ca01c6ea nss_20020222
+97a463538e6b91d3b9c9550dd7a22a31a2fb8bc6 nss_20020225
+616fa4254495e1e6ea60864464b4a372a29ad367 NSS_3_10_2_RTM_HPUX_IPF
+b491f63c3e418caec3c4c7ddc1d124f1828c5ca4 LIGHTNING_0_1_RELEASE
+89066cc29aad67cab97e01b3bd663573b3ee5fb6 LIGHTNING_0_3_RELEASE
+e22763257b86bf276bb08ef6fd6914d69f8b0127 PROFILE_SHARING_1_TAG
+755506f1cfb04791061cd597a4342e03e27950ba MOZILLA_1_0_20021114_TAG
+4d75747933494fffead0b07e5c7f1a3d7718fec8 MOZILLA_0_9_2001042510_BASE
+4550695818cda56048359af67c311c9e113bda1a OJI_19980527_TIP_MERGE
+4587fa0676e22446617c2b41ff5e59c842fcfb6a FastLoadXUL_20020410_BASE
+cf327a9da8bf82cfce06a137615a0a46d77ebd5f NSS_3_11_7_WITH_CKBI_1_64_RTM
+ce961c69b3aa3aeb07d173ec3c53401aa90147c2 MINOTAUR_0_1_BASE
+e420b76ca6fe83d63fad03e255eb055a8ac01562 SEAMONKEY_1_1_13_RELEASE
+e420b76ca6fe83d63fad03e255eb055a8ac01562 THUNDERBIRD_2_0_0_19_BUILD1
+13dd24d52318fb952d51979e5fd5dfeed32c0122 NSS_3_14_2_BETA2
+fbdde1effd1b21553860e20af2be438eace4a929 NSS_3_14_2_BETA3
+822f941621d97d78684aeaf60575b170d66b1a2f Netscape_MAC_PR3_RELEASE
+1fd53d69b3911c13dc43d7c268d89532803a35ca JSS_3_0_RTM
+b87cb0dfee4988995530339b43c17e358430b642 MOZILLA_1_7a_RELEASE
+5997831da35e43b29b7482aa25edb7fcbc47ca14 SeaMonkey_M11_BASE
+c2066129c10079a3cc75bd52ef3cded246929575 TREE_WIDGET_19990826_BASE
+d98c95093ea977e9caeb4accac48657e0a66d0f1 FIREFOX_2_0a1_RELEASE
+e420b76ca6fe83d63fad03e255eb055a8ac01562 SEAMONKEY_1_1_14_RELEASE
+7be84714297b24fb508308ec8502330b5099648d SUNBIRD_0_7_RELEASE
+e99dd556e1f0c1ded576353ff4d282366e9f9a50 NSS_3_13_5_RTM
+9192b30257075622d0c7f2b1ceb3a2bddc5c89fa MOZILLA_0_9_4_RELEASE
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_8_RELEASE
+6cccea315881fffb35cc622e8538a71319110331 SEAMONKEY_1_0_3_RELEASE
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_5_RC1
+85d1a6e13359f804ccfb511885fe6c3139195c0b NSS_3_11_6_BYPASS_BASE
+822fe872a7d640d88b4d9a9b3edcdf41529cdb57 MOZILLA_1_9a1_RC1
+822fe872a7d640d88b4d9a9b3edcdf41529cdb57 MOZILLA_1_9a1_RC3
+822fe872a7d640d88b4d9a9b3edcdf41529cdb57 MOZILLA_1_9a1_RC2
+414c0a7abed3467347b47af148f500e5ab4b0c79 THUNDERBIRD_0_7_RELEASE
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_14_RELEASE
+520a089a232d369c594de023cb77bff2e43cffdd JSS_4_2_5_RTM
+4d8f401381de48a0749869343353dcb2ed065df4 NSS_3_11_TPATCH_20051221_V3_20060203
+89066cc29aad67cab97e01b3bd663573b3ee5fb6 CAMINO_1_1_A1_RELEASE
+f749643eabc2d3b9e77ab59b55dce02bcbc52845 NSS_3_11_8_RTM
+6c04d40a7d1ef3b3122f67d4a463b7383be7c9c6 FIREFOX_1_0_6_RELEASE
+287fd3542879b3272b76f0e34104065b6dfd034b NSS_3_4_3_BETA2
+3e22879011b4d2e8482da5b5034e0d56a7a2118d CHIMERA_0_5_RELEASE
+3478dcb4fa7bb370740be63c63fc4f88391874de XBL_BRUTAL_SHARING_20010807_BASE
+d8debc661f2a9573149505951aeb15bf7644d4b5 NSPRPUB_LIB3_NAME_CHANGE_BASE
+8602dcfefbeae4ad26525c3ff31ae4f5ec56b9e5 NSS_TIP_20020305
+ba6995f239974a99b582e92733f54804cdffcfe2 THUNDERBIRD_2_0_0_14_RELEASE
+cf079033195de602e3cf34084eeb906cc1c06544 NSS_3_7_RTM
+11b66f2cd625853ecb48f823fdee22336b503e45 MOZILLA_1_5a_BASE
+0630737c0ac3fbc6ce9f74861f647748c9f9dc1d NSS_3_4_SunBeta0401
+15629148cd0e1d4fd1795da66a504ad6184be62f GFX2_20001016_BASE
+a6f19840409d770a5df2884385754bfbe416a500 JSS_DSAME_OCSP_RTM
+de20decac4f294b6486c9edddbab5aa6677376a5 NSS_3_13_2_RC0
+e059abec415f2160aa95a90fd30b76c22d52ddbd NSS_3_13_2_RC1
+b5c0395b493ffcaf755b3770fbbff0eaaa447a43 JSS_3_3_RC1
+760fbcc1c8bf5c8d97350c434fc3a381b038bcb7 MOZILLA_1_2a_RELEASE
+1551f1c621c856a1eb417b4a9f86c5db074024b5 THUNDERBIRD_0_6_BASE
+f667de9637780d8e306f55ffd0d208d6118769fd BOOKMARKS_20030310_BASE
+e870f4b17c146286a9f6212d9e5c0eb7cbd63201 FIREFOX_3_0_13_RELEASE
+b0b943d6a02edbee874a5f5542a34ae04ef2f7e5 MOZILLA_0_9_1_2001053110_BASE
+e4626e3dfdf434f043a482ecefc6fce3c6ecb0fe NSS_3_3_4_5_RTM
+55ef1c6eaafcb0874f9fa4bf9ed7065f56d0a89f NSS_3_12_4_FIPS4
+cbf8d5cfaab517850d49e7c0b49a0bc9c55d0ec0 NSS_3_12_4_FIPS5
+f682e00e62a1b243f339563b1fb6dcc48d28b6c5 NSS_3_12_4_FIPS0
+36b2c9c0ae71d34d1ed640ed3c647f9ea0285d4f NSS_3_12_4_FIPS1
+083f5ac3e216ff7fd4d4362b8b409d2c87582642 NSS_3_12_4_FIPS2
+48134f1296f7b68d6110baef195eb84c736e4afc NSS_3_3_BETA2
+343edb0cf5050d27b174699b85dff94280b20f0a NSS_3_3_BETA3
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_20_RELEASE
+9b4ab0393e5b64f3735f087d7ae4f085389b78b5 FIREFOX_0_10_1_RELEASE
+49494f569332042ed656c9c47040863f56732275 FIREFOX_3_0rc2_BUILD2
+01ed4c5c2eb3289f5106df66517404bdca45607b SEAMONKEY_1_1_19_RELEASE
+40b9245df1c6b87cf761183bd2a41ce34849d5d5 SEAMONKEY_1_1_RELEASE
+72448f24781b6f931a0ffa4505989a99c4f4945f JSS_3_5_1_RTM
+6552b1568bdd889455ed2ebb087ec45490331cbb DOUGT_CHANNEL_CHANGES_01222001_BASE
+41f8509c2e2cb7fff6fd0fadfd030ec6803d9ce8 JSS_3_4_RTM
+2d56cb66fdd03d2a11aa1bc454c02143f795f2ee NSS_OTIS_INT_RELEASE
+ed75324eb2ee9cd52af1e0915044dc51d28a7e8b SVRCORE_4_0_3_RTM
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_18_RELEASE
+936e866b10962408845874b684ae2d13ad712418 FIREFOX_2_0a3_RELEASE
+abb56fc7ad94f8e06e07294dac7577443845ea22 NSS_3_13_5_BETA1
+f3b3aa24f3c1e8bec459f177cd5f4c7fa0af2412 Netscape_20001102_RELEASE
+f8cbefcd83d326db2f336fc4631b6a66a8daebf1 FIREFOX_3_0_8_BUILD1
+693e2340d90e359db025b3ee889fe6cbf40c6eb3 FIREFOX_3_0_8_BUILD2
+23538d2dbcc417040f9c2da70b0d1518747a525b CFM_LAST_RITES
+ede9fa7c96f1ee475f131d1a44db574b73c790c5 moz_win_20021009
+48903189063dfd561ffc80c899065bf63c22df8b CAMINO_1_0_B2_RELEASE
+d3fa902c77a01bbee002922dc450599631e2521d WINCE_20020218_BASE
+7d7891b5d429e1a9f1707da16faefe262e7dc6f0 RDF_19990305_BASE
+b1362c81cf6076a69e46e3f721f99091eeb058cc ANGELON_MOZ12_N5_BASE
+a1e43ca5b9a7b58e142fbfdbda5c0530b2bd95b4 TravisWebshell_03082000_BRANCH
+8b45faa2eaff0cf659850ac4f0b8e96454c0295f THUNDERBIRD_M4_BASE
+6cccea315881fffb35cc622e8538a71319110331 THUNDERBIRD_1_5_0_5_RC3
+ba6995f239974a99b582e92733f54804cdffcfe2 CAMINO_1_6_B3_RELEASE
+217b95ac891e00ed903672083b947dd10776678d JSS_4_2_3_RTM
+7fb62ba52b745bf08df10feda2965ba9085f0f45 JSS_4_3_2_RTM
+42670ce99390b2e6c48254bf704cd07c72475be6 NSS_3_11_6_RTM
+59e23ad1545085e832517235fe1deff14a060dbf sspitzer-news-tag
+7be84714297b24fb508308ec8502330b5099648d SEAMONKEY_1_1_7_RELEASE
+c88a943c035e60d2660bfe71c233ac6914fd49dd THUNDERBIRD_1_5_0_8_RC1
+5f61c7e93fec7936ea58fd2765956e27d8af19df THUNDERBIRD_0_3_RELEASE
+6fefa4212f4cfb51b2c6f4a13561cb18609f89be FIREFOX_1_0_RC1
+01ed4c5c2eb3289f5106df66517404bdca45607b CAMINO_1_6_10_RELEASE
+572532d983e2ef5e703bf570549259f5e81bb305 SUNBIRD_0_3a2_RELEASE
+954609d47dfd90545ffde15b6fdf0426480814c8 NSS_RFC4507BIS_BASE
+4550695818cda56048359af67c311c9e113bda1a OJI_19980521_TIP_MERGE
+0204699f138a593925188d64cb389eb4d8e5629c FIREFOX_1_5_0_10_RC1
+0204699f138a593925188d64cb389eb4d8e5629c FIREFOX_1_5_0_10_RC2
+177c72e7c4869fd4d53b4ac0fb0c086c35823b4d NSS_3_12_9_BETA2
+f8b2fff2c323b1b0e170c5c210c75c70d9f9362f NSS_3_12_9_BETA1
+d95b72a458b9d0c31968953f4887a28c028b7264 IFRAME_20020207_BASE
+4e10cded53b03a3e13e7e5d18735c2ef67139176 NSSCKBI_1_87_RTM
+d067c0bd692a7ca8744bf8af0ce630c2ba854a2d DOM_AGNOSTIC3_BASE
+6cccea315881fffb35cc622e8538a71319110331 FIREFOX_1_5_0_6_RELEASE
+49494f569332042ed656c9c47040863f56732275 FIREFOX_3_0_1_RELEASE
+5fe7acf221d2230daf6435acad789517e59b2271 NSS_3_12_3_RC0
+8e23ef81677b8168c4f1117fe6bc2820cf70d1e3 MOZILLA_1_8_0_1_RELEASE
+6f839a5c7faa1e82dc10ea3a29373cfeb3e38691 SOFTWARE_UPDATE_20050428_BASE
+2f3fb35b1f0b6e4402f22a07b5cf4713d0554a61 NSS_3_9_4_RTM
+e8ae270e93c9878d9a3604126c4c5d6672ca8492 MOZILLA_1_7_8_RELEASE
+54897b3f798d08193de604da1b774061dbc82883 XPC_IDISP_20020417_BASE
+90065c664c2212874c25b338abb7d2347fcc8cf8 PSM_2_2_DEV_20010918_BASE
+48903189063dfd561ffc80c899065bf63c22df8b FIREFOX_1_5rc1_RELEASE
+2c7e5b510aec5d8518307322ee75747f7612c768 NSS_3_2_1_RTM
+6cccea315881fffb35cc622e8538a71319110331 THUNDERBIRD_1_5_0_5_RELEASE
+5c1ba1600106d04aeecbdd179719988499a17f6c NSS_PERFORMANCE_HACKS_BASE
+67711a7eff92e28eb0cec949b425ddf95aae3de8 MOZILLA_1_5b_RELEASE
+0204699f138a593925188d64cb389eb4d8e5629c THUNDERBIRD_1_5_0_10_RC1
+373d196c6959819a328c56456cb8b922738ac6ff STATIC_BUILD_20010418_BASE
+1d6f69b3d13a0d9694ca91e5b0f3349de57f63d6 NSS_3_13_RC0
+3ba6a7d04cef8f3d58e2b5abce5a7f9accd0573a FIREFOX_1_5_0_4_RC2
+3ba6a7d04cef8f3d58e2b5abce5a7f9accd0573a FIREFOX_1_5_0_4_RC3
+3ba6a7d04cef8f3d58e2b5abce5a7f9accd0573a FIREFOX_1_5_0_4_RC1
+54e9a952eb63cfcf5f28c3f33e5d59ef5c2cad30 FIREFOX_3_0_4_BUILD1
+0204699f138a593925188d64cb389eb4d8e5629c THUNDERBIRD_1_5_0_10_RELEASE
+0204699f138a593925188d64cb389eb4d8e5629c FIREFOX_1_5_0_10_RELEASE
+6cccea315881fffb35cc622e8538a71319110331 THUNDERBIRD_1_5_0_5_RC2
+6cccea315881fffb35cc622e8538a71319110331 THUNDERBIRD_1_5_0_5_RC1
+810b3ef397f07763146ef7345cea5e867541fb1b PSM1_NSS_CLIENT_TAG_20010410
+6cccea315881fffb35cc622e8538a71319110331 THUNDERBIRD_1_5_0_5_RC4
+11ca8fd771b606823b8d2413783d3defe3aa5952 WEBFORMS_20050202_BASE
+dacf455313d19b18014e7a15431a95254cb8253f NSS_3_11_10_RTM
+0d2eae76373876bed100b831d33037e181c4cb6f NSS_3_7_5_BETA1
+2d1e2b255259eb9f1c08e3a76d344a6ccafb9984 DBM_1_6_RTM
+c1bb5b0531802af209d3e57152d8399cf79f714c JSS_3_6_BETA1
+0b3e98e31c5abe8b80f00140d24fd2285d741c09 EMBEDDING_06192000_BASE
+ba993d16b10671d97a07d67c207f921ec3bd03e7 Netscape61_RELEASE
+4aad091c474f66adb2e6dd896a57c6a24de0666b NSS_3_4_BASE
+878cd12cf606889785f405bb6835bf4774a69eff MAILIM_BASE
+48903189063dfd561ffc80c899065bf63c22df8b MOZILLA_1_8rc1_RELEASE
+7d7190045260c0103ba546cfd048881d99324994 SeaMonkey_M13_RELEASE
+167f74577cbfeb1def5865bb7a5adbbf25534a95 NSS_CLIENT_TAG_20040409
+b2a5f6e25984d204a39ce33e5e3d4e6d0b4a71fa MOTIF_LAST_RITES
+c367928fe47982081d6859c3a0941ef0edfbffc6 SeaMonkey_M17_RELEASE
+59f5d8d37990e8efaa4c594aae709ef33475759e NSS_3_7_10_RTM
+847b1a2bb3ea80f1fca770dafd7f47957ff7027e NSS_3_7_BASE
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 CAMINO_2_0_RELEASE
+6ce47a605004208f906e04f6ee98fe95bf7c0d97 THUNDERBIRD_3_0a1_BUILD1
+352bd56fbf81abc68c52af450152bd4b767e3e30 PHT_20030715N1X_EMP_WIN
+aeea57681f5651662e1d7515d093166761d6368e RDF_19990422_BASE
+f5535ece0ef482b6917d91c9f80313d34a982f22 MOZILLA_1_9a8_RELEASE
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_6_RC2
+b19740097201797dff9b8c0191b111b3596e07c8 NSS_3_11_20060609_TAG
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_6_RC1
+4da0ea62942a4e16416d5081814481fdec0893f4 BUG22251_BASE
+a2e4b0b3efb062629296396229cee1036157da99 FIREFOX_3_0_7_BUILD1
+a96e9869c2fbed948989616e177ed720e9e82b5d FIREFOX_3_0_7_BUILD2
+1bab34eb80c2f396c26c06072e4cb4a29c5d6456 MOZILLA_0_9_9_RELEASE
+59882ebf0c486e163819c16eec44674e9e198b86 NSS_CLIENT_TAG_20060112
+0ea7bb63b6c1306ff6733730c4b5bb4213381ffa FIREFOX_1_5b2_RELEASE
+4da0ea62942a4e16416d5081814481fdec0893f4 SeaMonkey_M14_BASE
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_5_RC2
+0204699f138a593925188d64cb389eb4d8e5629c FIREFOX_1_5_0_12_RC2
+c88a943c035e60d2660bfe71c233ac6914fd49dd FIREFOX_1_5_0_9_RC1
+ba6995f239974a99b582e92733f54804cdffcfe2 THUNDERBIRD_2_0_0_14_RC1
+5dc2b5845f2162c04c82b0fad34d87731b1decc5 NSS_3_8_2_RTM
+e5da4f67703c46e36df3187b4963ddbe51d85248 moz_ux_20021014
+3a7af932d824710ced472fddc9d46c19a7fcc34e FIREFOX_1_0_8_RC3
+9192b30257075622d0c7f2b1ceb3a2bddc5c89fa MOZILLA_0_9_4_1_RELEASE
+414c0a7abed3467347b47af148f500e5ab4b0c79 THUNDERBIRD_0_7_1_RELEASE
+3ba6a7d04cef8f3d58e2b5abce5a7f9accd0573a THUNDERBIRD_1_5_0_4_RELEASE
+17bce1154578ada37f7383ddee6b725e959c3a5e WEB_CONTENT_HANDLING_20070621_POST_HANDLER_SERVICE_20070720
+3a7af932d824710ced472fddc9d46c19a7fcc34e FIREFOX_1_0_8_RC7
+f667de9637780d8e306f55ffd0d208d6118769fd BOOKMARKS_20030320_BASE
+e3ef7a0a5c8b7a0fa53347555921b1c7da22638e NSS_3_7_7_BETA1
+24ac93e5176ac4dd688475201c1fb5fdc9a5c269 JS_1_7_ALPHA_MERGE
+f075126085f249ace3fa8262913fe1c4c474c77b NSS_3_8_RTM
+055390583fe9c565c93ac202d02d0a27d4cb510f MOZILLA_1_4_4_RELEASE
+b9984322c5d4b33bbaca59b9b0097636784bc561 moz_ux_20021122
+0e1d6cbb98f7f9f4b32d0e31a4292226a446da18 MOZILLA_1_9a6_RC2
+dc11e773516b4d402dde7dbb8f1928d0f7ca33a9 SEAMONKEY_1_1_16_RELEASE
+0521f468017c34abe3d837de0905749cacaeddf5 MOZILLA_1_9a6_RC1
+bba89703266749c8db69cde9c5650d727a9de098 NSS_3_7_11_RTM
+89066cc29aad67cab97e01b3bd663573b3ee5fb6 FIREFOX_2_0rc3_RC1
+23c1d3963b6e0a86af71e78e01110e618183cff6 XULRUNNER_20040804_BASE
+b79e50420d90b7a3828331e6e02ff414f3984cca THUNDERBIRD_2_0b2_RELEASE
+5f988ed650d4c474f31a7eeb3a98f9293366201f STATIC_MAKEFILES
+e420b76ca6fe83d63fad03e255eb055a8ac01562 THUNDERBIRD_2_0_0_18_RELEASE
+0ea7bb63b6c1306ff6733730c4b5bb4213381ffa CAMINO_1_0a1_RELEASE
+14532b37417e5b7e2a81bd0a5ea5a0ad97b9e1e8 CAMINO_1_0_3_RELEASE
+854cf8ab9d7b6850b343e59e17f98390e2b5c886 NSS_3_8_BETA1
+b0b943d6a02edbee874a5f5542a34ae04ef2f7e5 BookmarksOutliner_20010601_BASE
+d01fcaff7c8ecda63e9918516a8d1ffdee8c22c8 NSS_3_8_BETA2
+878cd12cf606889785f405bb6835bf4774a69eff MOZILLA_1_1b_RELEASE
+fac3307cceb4e39c24cf3421ceb187e9aebc401f MOZILLA_1_8a_RELEASE
+503e10cc623480285a805fb50e1b37e5e539d9e1 JSS_4_3_2_RC0
+dfaacd7f7f7ff0beaf38432e767fa9a07ab04ff0 NSS_WINCE_ALPHA_BASE
+48903189063dfd561ffc80c899065bf63c22df8b FIREFOX_1_5rc3_RELEASE
+c35b6393f8e1600d0e34cd02ef86511d32be0a3f MOZILLA_1_4_2_RELEASE
+6cccea315881fffb35cc622e8538a71319110331 MOZILLA_1_8_0_5_RC2
+0204699f138a593925188d64cb389eb4d8e5629c THUNDERBIRD_1_5_0_14_RELEASE
+f9cf75f9ce77f795732fe153da55233e4079e7af SeaMonkey_M18_RELEASE
+8ccd9423e541b6b867c4c86b483cc09dd9949de0 NSS_MULTIACCESS_DB_TAG_20020818_1
+6cccea315881fffb35cc622e8538a71319110331 XULRUNNER_1_8_0_5_RELEASE
+c26a70d1c261846808463d9777714b30f7430eb0 NSS_3_9_5_RTM
+5f61c7e93fec7936ea58fd2765956e27d8af19df MOZILLA_1_5_RELEASE
+5981593d299cb1787742f4f5987e3b0fe33e859b THUNDERBIRD_2_0a1_RELEASE
+4905f6e27cdb1a68929032eb61206998184f2264 jar_restructuring_base
+48903189063dfd561ffc80c899065bf63c22df8b MOZILLA_1_8_RELEASE
+ba993d16b10671d97a07d67c207f921ec3bd03e7 MOZILLA_0_9_2_RELEASE
+e22763257b86bf276bb08ef6fd6914d69f8b0127 MINOTAUR_20030217_BASE
+1551f1c621c856a1eb417b4a9f86c5db074024b5 MOZILLA_1_7_BASE
+7d7190045260c0103ba546cfd048881d99324994 NSIFILE_01202000_BASE
+41b0bc73dfe72a7e40eebb30ddbc3b2b4b1e5c53 MOZILLA_1_4_2003052312_BASE
+90065c664c2212874c25b338abb7d2347fcc8cf8 PSM_2_2_DEV_20010917_BASE
+5ce21834dcf9848f74c0632b786c9e07073e8317 NSS31Beta1
+5fe7acf221d2230daf6435acad789517e59b2271 NSS_3_12_3_RTM
+3097ccfec15a42e0f6d8a73ff8739e0beeca32cc NSS_3_13_4_BASE
+7be84714297b24fb508308ec8502330b5099648d SUNBIRD_0_7_RC1
+7be84714297b24fb508308ec8502330b5099648d SUNBIRD_0_7_RC3
+7be84714297b24fb508308ec8502330b5099648d SUNBIRD_0_7_RC2
+e20e156b68694ed78b15e152b98811d68691ddef moz_win_20021108
+84b44d238d0f8ae94488640c4af85f0351324144 PLUGIN_MODULE_19980708_BASE
+510cd37b52629657e4ba7098a9016ed21a0b9689 PSM20_M_2_TAG
+8882013b29dada6357212605c14bc1ad4e9740f9 JSS_3_7_RTM
+56ad610fc9f455a05a2ccdf2550c0a3bb825abd6 SONGBIRD_20070117_01_TAG
+16d4358fb8a6a61c76b20a1b7f8090d49ec235ba NSS_3_3_4_SunBeta0208
+9266c225a45a348d2624a63f15942ec6dda46016 THUNDERBIRD_2_0b1_RELEASE
+f12bd322d1e800ff583675d4a2a298a11690f282 SVRCORE_4_0_2_RTM
+06c35ae6a29a6ead71b5b6ab714991a130caf969 Netscape_20001030_SECURITY_MAC_RELEASE
+35f4f16a363e1437e3da2cd4a034106db719891a THUNDERBIRD_2_0_0_4_RELEASE
+99e5d7e17b7f96e3b84e00b5a62740112a7160ae PROGRESS_19981006_BASE
+3acee38ca7805a563b86c5ca70979a105ac86108 JSS_3_1_2_2_BETA1217_3
+53d1e422a673fccbce20c1df4f95c04b94228311 CONRAD_DYN_PROFILE_TAG
+0204699f138a593925188d64cb389eb4d8e5629c THUNDERBIRD_1_5_0_14_RC1
+96bfe61b7616f59d75d376ed90deb9995554f776 NSS_3_11_20060512_TAG
+d05d1dcf466df00de235363390252dabf90a486a NSS_3_7_2_BETA2
+c8c41b1ebb960a7b9b935b65c0eb0e891e7a7a0a NSS_3_7_2_BETA1
+3a344fb4f4f09bbb8f9321a4b82fdc0fd894ac9e nss_20021204
+e420b76ca6fe83d63fad03e255eb055a8ac01562 SEAMONKEY_1_1_10_RELEASE
+d858a1a869c92b017d982676173aadf6d21f216c EVENTSREWRITE_20000211_BASE
+c391f2239374d7333ca70124e663bc5362257980 SUNBIRD_0_3_1_RC2
+79171f1b8b016d3ff0e49a6f9a1a0c795575f90e SUNBIRD_0_3_1_RC1
+01ed4c5c2eb3289f5106df66517404bdca45607b CAMINO_1_6_9_RELEASE
+c391f2239374d7333ca70124e663bc5362257980 UPDATE_PACKAGING_R7
+c391f2239374d7333ca70124e663bc5362257980 UPDATE_PACKAGING_R6
+c391f2239374d7333ca70124e663bc5362257980 UPDATE_PACKAGING_R5
+c391f2239374d7333ca70124e663bc5362257980 UPDATE_PACKAGING_R4
+c391f2239374d7333ca70124e663bc5362257980 UPDATE_PACKAGING_R3
+c391f2239374d7333ca70124e663bc5362257980 UPDATE_PACKAGING_R2
+c391f2239374d7333ca70124e663bc5362257980 UPDATE_PACKAGING_R1
+95155f15988161ac97c2254f92a65e7ca28d33c0 JSS_3_1_2_3_BETA
+2203a5e21dab158988c7483ad9be389a408b18bb SeaMonkey_M16_BASE
+c391f2239374d7333ca70124e663bc5362257980 UPDATE_PACKAGING_R9
+c391f2239374d7333ca70124e663bc5362257980 UPDATE_PACKAGING_R8
+ea11cd7484b0fd48410d7220d310f299bed21b63 SECURITY_3_3_9_RTM
+76948ea3cd05295da0a1e5398fe10f70007973bd SUN_SECURITY_3_9_3_RC2
+adbd8452af939993da636a9a41d36a9e076bf2f6 NSS_3_12_3_2_WITH_CKBI_1_73_RTM
+ba439ec992d9cdfa5d2a54c8e899368fc896f508 ROGC_20030115_FREEZE
+a8aabd73d18922b73d9520e33a3748c0e840d46f PHOENIX_0_2_RELEASE
+4d4ea6d83808079faa3126bf6108110cca39c687 MOZILLA_1_6_RELEASE
+d3f7f2bb794bfc0b533d90433bdfdf524e3b4d67 FIREFOX_1_5_0_2_RELEASE
+7be84714297b24fb508308ec8502330b5099648d THUNDERBIRD_2_0_0_5_RELEASE
+8771b9ae850948f48e3310ce539506bfd8d2a08f FIREFOX_0_8_RELEASE
+59e23ad1545085e832517235fe1deff14a060dbf RDF_19990617_BASE
+fd066fec60066720eb4766f7025652312ca3afe0 EMBEDDING_08042000_TAG
+f26a310625fe446f8502d6fc14d397ff52792e1d NSS_PRE_PKIX_MERGE
+976c9c32b09f3e74549110ebbcdbd4de70a85197 NSS_3_7_7_BETA2
+d56a7c7f33ab08bdd556c759163a1af770672780 MOZILLA_1_0_2002082307_TAG
+9969922516850c6d5eab38d2f96d1e2612079d3b SUN_SECURITY_3_3_11_RTM
+491cbb335f9ed16577e97740704dc8b71fa5e6aa IBMBIDI_20000809_BASE
+414c0a7abed3467347b47af148f500e5ab4b0c79 FIREFOX_0_9_2_RELEASE
+1c7e1f7aa3b5d76bd3cb75dc84609a426c69fe49 NSS_3_7_1_RTM
+a68ad6ea6f21ac1e4d9dffb60d2dae48f9155b74 XPCOM20_BASE
+54e9a952eb63cfcf5f28c3f33e5d59ef5c2cad30 FIREFOX_3_0_4_RELEASE
+7c2bd982b5f5e2a99c4fe896ab2803acd622d4a1 NSS_3_11_5_WITH_CKBI_1_65_RTM
+1ae61eee09957f676ed446dcc380a9d75d9563ec NSS_3_12_11_BETA3
+d3f7f2bb794bfc0b533d90433bdfdf524e3b4d67 FIREFOX_1_5_0_3_RELEASE
+13461792615b44518d06c1b6f7d0291bf70d6cdb NSS_3_12_11_BETA1
+473b78fd73336b1bf7b1b694f12a33d5e26d0ff2 FIREFOX_3_0_9_RELEASE
+fcf0fd741e3491feb6cd51ba746893ced68b4b47 NSS_3_12_CKBI_1_88_RTM
+aeea57681f5651662e1d7515d093166761d6368e ENUMERATOR_19990424_BASE
+4d75747933494fffead0b07e5c7f1a3d7718fec8 Accessible_042401_Base2
+822f941621d97d78684aeaf60575b170d66b1a2f Netscape_20001102_SECURITY_MAC_RELEASE
+5f61c7e93fec7936ea58fd2765956e27d8af19df THUNDERBIRD_0_3_BASE
+4550695818cda56048359af67c311c9e113bda1a NORMANDY_BASE
+1a23a394ca93e64eaab3691272819a58df41cd4a NSS_3_12_11_BETA2
+7be84714297b24fb508308ec8502330b5099648d SEAMONKEY_1_1_5_RELEASE
+a1e43ca5b9a7b58e142fbfdbda5c0530b2bd95b4 SeaMonkey_M15_BASE
+759866c756ff4a032a532e2a98abede3d9891f4f XUL_CONTENT_MERGE_20010220_BASE
+95f338670ca1de0f1b4e3582939461d23d65c51f XTech99Stable
+bc9f69fbce9ead7dd8df43851c977e4643987287 nsstip_20020225
+bceda4ff76619e3fe4086e93ac54baeeb467807c BSMEDBERG_SECURITY_PLAYGROUND_20050512_BASE
+141884735c1c74fa162ca280d76b18f4274b0ec9 NSS_3_4_4_BETA1
+e420b76ca6fe83d63fad03e255eb055a8ac01562 SEAMONKEY_1_1_11_RELEASE
+0d419fc8cbf2a0e7e08ce5f45dd1439878896d04 FIREFOX_1_1a1_RELEASE
+4550695818cda56048359af67c311c9e113bda1a XPCOM_BASE
+878cd12cf606889785f405bb6835bf4774a69eff UNINSTALL_WORK_BASE
+35f4f16a363e1437e3da2cd4a034106db719891a THUNDERBIRD_2_0_0_0_RC1
+a856ccb677ac47b31d0533cfbfe2b7d36a3ef21b NSS_3_14_1_RC0
+27ea66d5ca88f95e525e0944852df64039444e46 MOZILLA_0_8_1_20010326_RELEASE
+2618cfd419d58338a4da5887dffcd8e2d17a5033 PHT_20030430N6_MAC_FREEZE
+6aea17142730f8126dcca0c0ba0556703efc5e7e moz_win_20021026
+68d33d0a623c736d926a8555d5ce6166b8a96f3c moz_win_20021122
+35f4f16a363e1437e3da2cd4a034106db719891a FIREFOX_2_0_0_3_RELEASE
+c391f2239374d7333ca70124e663bc5362257980 UPDATE_PACKAGING_R13
+3a7af932d824710ced472fddc9d46c19a7fcc34e THUNDERBIRD_1_0_8_RC1
+3a7af932d824710ced472fddc9d46c19a7fcc34e THUNDERBIRD_1_0_8_RC2
+13f9e760533b9d2c1b91bcb9794073be7f3b7ec1 REFLOW_20020502_BASE
+7b3a9098eb7b79f62772498c3a7d9e595e41a724 NSS_3_10_RTM
+c391f2239374d7333ca70124e663bc5362257980 UPDATE_PACKAGING_R14
+ab29fd38870c85241458adb8af3f3b9bfaf8e84a PHT_20030722N9_MAC
+f54a7c45f5c9ea90a850e84dd114c62e2495cdfe NSS_3_3_3_RC010903
+d2921dab9cb7cd25c6dd02e757f9036d27f2ea1a NSS_3_7_BETA1
+7184f01bac1bcb63a5bf8270b6c3eaeebe73eb78 NSS_3_14_RC0
+5997831da35e43b29b7482aa25edb7fcbc47ca14 no_neckoutil_base
+26ff794152d6f358e9c812ed78de0c89ec1b282d FIREFOX_3_0_2_BUILD1
+78df08bd0f501d4127736003ce4330a58638e4f6 AVIARY_1_0_1_20050124_BASE
+755506f1cfb04791061cd597a4342e03e27950ba MOZILLA_1_0_20021107_TAG
+649f546fd9f11d88566c6ead2ed1ec30cbee3027 NGLayoutStability_BASE
+d9d948f13623443b484b3a5efb81a57ec24ba48d MailNews_Performance_20010208_BASE
+48903189063dfd561ffc80c899065bf63c22df8b CAMINO_1_0_BETA_1_RELEASE
+ce961c69b3aa3aeb07d173ec3c53401aa90147c2 MOZILLA_1_3_1_RELEASE
+eaa238db0dcc2d220cbf51a4ff7c4b7924af978f PAVLOV_20020924_TAG
+081bf4d26b775342c97ad6cc13012306eb30e148 THUNDERBIRD_2_0b2_RC1
+1282ee0321d1db3edd387774e5ee1d2922066e12 NSS_3_4_RTM
+35f4f16a363e1437e3da2cd4a034106db719891a LIGHTNING_0_5_RELEASE
+7be84714297b24fb508308ec8502330b5099648d SEAMONKEY_1_1_4_RELEASE
+8ab2a547794830fd2bca4f3f17ed23a01b5526e9 NSS_3_3_RTM
+0953cd98ad6b8ae86af6b3feabd6203e6dcd36bd FIREFOX_3_0_12_BUILD1
+bef33904cfbd2dde5c56e44e56aef16db40934f3 DBM_USING_NSPR_BASE
+b1362c81cf6076a69e46e3f721f99091eeb058cc PHT_20030402N5_MAC_FREEZE
+2f6364db5fc1a500471fa7cfcfeb4104f97ad997 NSS_3_3_4_RTM
+3a344fb4f4f09bbb8f9321a4b82fdc0fd894ac9e NSS_3_6_1_RTM
+6d83a09a41b998fd4bed00dd09c6b1e715e53782 THUNDERBIRD_M3_BASE
+ae603aa9c076524cb252dd909e706e0a69d552df Netscape_20001106_SECURITY_MAC_RELEASE
+61145d53c2f7e265e3cef3a4f145d0b965de73ee NSS_3_10_2_BETA2
+849f41e1a6ae01d7cb43638e97e5f2426c47114a OJI_19980618_TIP_MERGE1
+20fb8f1b986f73a083a0b7a4ad5494a95772c906 NSS_3_10_2_BETA1
+0204699f138a593925188d64cb389eb4d8e5629c CAMINO_1_0_4_RELEASE
+b12a8fd939102db44831e81a6ecd087442659395 FIREFOX_3_0_6_BUILD1
+a5194743a3a75ea4fef99a22118fd6096d06bcd8 MOZILLA_0_7_2000122616_BASE
+6350419f79256ee95b17a2e78fc1a628b23f2e20 Netscape_20001027_SECURITY_MAC_RELEASE
+44950cf416167feedb145bd4319ab697cfe3f18a ROGC_20020802_FREEZE
+79171f1b8b016d3ff0e49a6f9a1a0c795575f90e SUNBIRD_0_3_RELEASE
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_12_RELEASE
+649f546fd9f11d88566c6ead2ed1ec30cbee3027 OJI_19980727_BASE
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_16_RELEASE
+080c63632fc11751f99da867600e337858a4658a DOMAPISTRING_20000811_BASE
+b441456009a9eccdf7b94356d66abc366ffc6ce1 JSS_3_X_BASE
+93a0f0ede34f4f7ad5f3decd412516ebb75116ca RMCH_20021105_BASE
+2a927d5fafd1c3632c12f535a56cad9254bc1714 NSS_3_12_8_RTM
+822f941621d97d78684aeaf60575b170d66b1a2f Netscape_20000922_SECURITY_MAC_BASE
+e9d99d9ea9f999f0c38406ca16c6f4cbb7984668 Netscape_20001031_SECURITY_MAC_RELEASE
+9192b30257075622d0c7f2b1ceb3a2bddc5c89fa NETSCAPE_6_2_2_RELEASE
+564b586f642ba07b7b466f523df3835ff7f12e71 NSS_3_4_4_RTM
+d56a7c7f33ab08bdd556c759163a1af770672780 CHIMERA_M1_0_1_BASE
+55e6434e6fcba3ae8509e422b5400d0a8ca0cb8a CAMINO_2_0_9_RELEASE
+3e16c836a7904eb6f32af41323f13d8234531049 NSS_3_12_5_RTM
+e8f3d581ee044e6d1413c04c0ed9e187e4b6812a PSM_1_4_N6
+6c04d40a7d1ef3b3122f67d4a463b7383be7c9c6 THUNDERBIRD_1_0_6_RELEASE
+aba810605bbf82c15acec39412c91614f316d295 NSS_3_8_BASE
+6f9aa1ffaa0b14f82566a2d6f82bdc085f75a89d NSS_3_0_1_RTM
+e050139ed2c202c45311706d7ae335ce51b4d45d JSS_3_1_2_3_RTM
+9192b30257075622d0c7f2b1ceb3a2bddc5c89fa PSM_2_2_DEV_20011002_BASE
+b8c1c85e0c8d869eedd6b88856ff8528290742b4 JSS_3_2_BETA2
+0cff5c0907952b5d1f3235fdd2ac6064b47fe0f5 NSSCKBI_1_64_RTM
+3b660c2f5956413a4c79349cd81fa3209e2088a7 NSS_3_7_3_RTM
+b817195daf21c90a3da38749205e5bd249cc2c56 THUNDERBIRD_0_4_BASE
+fac3307cceb4e39c24cf3421ceb187e9aebc401f MOZILLA_1_8a2_RELEASE
+c1bb5b0531802af209d3e57152d8399cf79f714c JSS_3_6_RTM
+dc11e773516b4d402dde7dbb8f1928d0f7ca33a9 THUNDERBIRD_2_0_0_21_BUILD1
+d56a7c7f33ab08bdd556c759163a1af770672780 MOZILLA_1_0_20020805
+3a7af932d824710ced472fddc9d46c19a7fcc34e THUNDERBIRD_1_0_8_RELEASE
+0d5799d6507ac32db842e16952bb722ced078ae8 NSS_3_14_CKBI_1_93_RTM
+755506f1cfb04791061cd597a4342e03e27950ba MOZILLA_1_0_20021120_TAG
+0ba7c8c213a95bbb00cc7d7f881c30a1247516f8 NSS_3_11_20060929_TAG
+abdf60919472a32115522033e62280e3a2b4fa21 RDF_122898_BASE
+59653acdf896e598a69cd9e1e23078326b84e9d2 NSS_3_2_1_RTM_SOLARIS_X86
+2c828564cb8fc71d32ddbc5630b883f58554631d PRINTF_HIGH_WATER_TAG
+35f4f16a363e1437e3da2cd4a034106db719891a SEAMONKEY_1_1_2_RELEASE
+290a94ec0937e0a662f2a4c7e747174c5820fe18 NETSCAPE_7_2_RELEASE
+21ca13541c4218e0d5389fcaa3b163225a06eb04 NSS_3_11_RTM_SUN
+5bf2d4ba1ec6ab1269cc2782ef4005794d6da046 ROGC_20020930_FREEZE
+0ea7bb63b6c1306ff6733730c4b5bb4213381ffa SPLITWINDOW_20050714_BASE
+36cd97617f86f952833418d3c91f7049dcaa7ece MOZILLA_1_8a4_RELEASE
+a5cd7c8f874e1b9d960b884ca92e92f2fb928368 SeaMonkey_M8_BASE
+93a0f0ede34f4f7ad5f3decd412516ebb75116ca MOZILLA_1_2_2002110512_BASE
+53d84b43519450b07edabbc3b0bb55911197b53b CAMINO_2_0_B3_RELEASE
+01ed4c5c2eb3289f5106df66517404bdca45607b THUNDERBIRD_2_0_0_24_RELEASE
+7d3dbc6bdd479a0a6bd7e18e9bc0462bd62a929c NSS_3_11_TPATCH_20051221_V2
+e684e13c554647b60603279831ef9b876c7148a6 NSS_3_11_TPATCH_20051221_V3
+7d7190045260c0103ba546cfd048881d99324994 NSIFILE_01192000_BASE
+7bcee4dfef5b5c447adb13e6401ecad9f27de5c5 StyleMagic_0509_Branch
+7313c3510a25726b60d37d291d8fdfbf4729d8e8 MOZILLA_1_7_RC2
+23c1d3963b6e0a86af71e78e01110e618183cff6 MOZILLA_1_8a3_RELEASE
+35f4f16a363e1437e3da2cd4a034106db719891a FIREFOX_2_0_0_2_RC4
+35f4f16a363e1437e3da2cd4a034106db719891a FIREFOX_2_0_0_2_RC5
+35f4f16a363e1437e3da2cd4a034106db719891a FIREFOX_2_0_0_2_RC2
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_19_BUILD2
+e420b76ca6fe83d63fad03e255eb055a8ac01562 FIREFOX_2_0_0_19_BUILD1
+35f4f16a363e1437e3da2cd4a034106db719891a FIREFOX_2_0_0_2_RC1
+7313c3510a25726b60d37d291d8fdfbf4729d8e8 CAMINO_0_8_BETA
+a37a530063f216776c3b2712b714a72fe1622ac7 logging_102900_base
+a856ccb677ac47b31d0533cfbfe2b7d36a3ef21b NSS_3_14_1_RTM
+e0c99d6dc0c5594b8f21ef39ffe078b4fea0784b LDAPCSDK_5_1_6_RTM
+7be84714297b24fb508308ec8502330b5099648d FIREFOX_2_0_0_6_RELEASE
+59e23ad1545085e832517235fe1deff14a060dbf TREEWIDGET_19990616_BASE
+98574f9c5ed9a02225940a653a35e73a331baf61 PROGRESS_19980824_BASE
+0ea7bb63b6c1306ff6733730c4b5bb4213381ffa THUNDERBIRD_1_1a2_RELEASE
+1e37485b164061c6531abd620b1b10605a6e8289 sspitzer_09292000_base
+b26a2ea0ba6f48ae96df60e533379e33a3da1880 NSS_3_4_RC2
+c391f2239374d7333ca70124e663bc5362257980 UPDATE_PACKAGING_R10
+9da381d0b519634cb46a6adafff7aeacb9b866e8 NSS_3_4_RC1
+89066cc29aad67cab97e01b3bd663573b3ee5fb6 FIREFOX_2_0rc3_RELEASE
+1a6fe0ff2f39d0d90651339526db943620dc499d NSS_3_12_6_RC1
+2bc3ed49e6002fadb04b784042e2b8f2f31d1d10 NSS_3_9_BASE
+3ba6a7d04cef8f3d58e2b5abce5a7f9accd0573a MOZILLA_1_8_0_4_RELEASE
+78df08bd0f501d4127736003ce4330a58638e4f6 FIREFOX_1_0_1_AUP_RELEASE
+56a22086efc51d0191f0f3ae25c69375f994baa1 NSS_3_11_7_RTM
+b4c20512a0ec6eaec0584270c6448bbc12de0aef OTIS_TEST_BASE
+4cfaf50f384009e654c9380148ea60876a9507c7 NSS_3_12_2_RC1
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 CAMINO_2_0_7_RELEASE
+c66830e773ee97e88e099d0d8fe4890b54e4ba77 JSS_3_2_RC
+a5289db93178866ad6dcdcde1fa8c6c190f1aed8 JSS_3_1_2_1_BETA
+f9d578612c814e952bfc9518cdcb5a18f0e1fbab NSS_3_4_5_RTM
+258e70009023da458db86f2634f904f3e738be8b ROGC_20030129_FREEZE
+f21b6ea6e3bb80bec12e0ac08e945eb65863ff9a DOUGT_CHANNEL_PRELAND_02092001_1600_BASE
+0204699f138a593925188d64cb389eb4d8e5629c SEAMONKEY_1_0_9_RELEASE
+5f61c7e93fec7936ea58fd2765956e27d8af19df MOZILLA_1_5_20030910_BASE
+74f0317662560ad5863e824cc1f993495bfddd43 REDFIVE_MEMBUF_20060320_BASE
+2086b3a98271f5c46675d302dbe99b5f238ad893 NSSCKBI_1_86_RTM
+425b5a3f8ab127343c82ccfbaa60d70ce6bf1a56 MOZILLA_1_7_13_RC4
+425b5a3f8ab127343c82ccfbaa60d70ce6bf1a56 MOZILLA_1_7_13_RC1
+c06df0e3606d0d978c4a6e26c9a8ef47176514ac CAMINO_2_0_A1_RELEASE
+425b5a3f8ab127343c82ccfbaa60d70ce6bf1a56 MOZILLA_1_7_13_RC3
+425b5a3f8ab127343c82ccfbaa60d70ce6bf1a56 MOZILLA_1_7_13_RC2
+a63d1ecaa8cc41060dd265641e8f7f57212e0763 SeaMonkey_M16_RELEASE
+d56a7c7f33ab08bdd556c759163a1af770672780 MOZILLA_1_0_2002082208_TAG
+050cebf213f48713b18b901827e3e2997e7e2ef3 SeaMonkey_M4_BASE
+681d1c4fc481c4d268b38e827d1bb80c1b068d35 LayeredDOM_20020307_BASE
+c391f2239374d7333ca70124e663bc5362257980 MOZILLA_1_9a2_RELEASE
+b0b943d6a02edbee874a5f5542a34ae04ef2f7e5 MOZILLA_0_9_1_RELEASE
+18a8351ce780d674a1de7379b49365043f05dbb2 NSS_3_11_2_BETA_20060428_TAG
+dab44cb4ff24bff19675fc8da91ed9503790e7b9 nss_3_12_5_BETA2
+7d7190045260c0103ba546cfd048881d99324994 ANDREAS_URL_BASE
+8d453e57dba947490eb8916d92e42b4c93bcc2a1 NSS_3_12_6_RTM
+3ba6a7d04cef8f3d58e2b5abce5a7f9accd0573a THUNDERBIRD_1_5_0_4_RC2
+3ba6a7d04cef8f3d58e2b5abce5a7f9accd0573a THUNDERBIRD_1_5_0_4_RC3
+3ba6a7d04cef8f3d58e2b5abce5a7f9accd0573a THUNDERBIRD_1_5_0_4_RC1
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 CAMINO_2_0_B4_RELEASE
+ee7d0c4701fef6a3be15d483acc3e0240bb1a683 NSS_CLIENT_TAG_20040303
+3420d52641c13ac7462b914d48bb257e9c99beb5 NSS_CLIENT_TAG_20040304
+7aec8c9c784aeefffbf47efc4c004df69f3d8743 NSS_HEAD_BEFORE_RFC4507BIS
+0ea7bb63b6c1306ff6733730c4b5bb4213381ffa MOZILLA_1_8_SVG_BASE
+acf0bf340ac17616e178a5985446a12358a254fc NSS_3_11_20060731_TAG
+b0b943d6a02edbee874a5f5542a34ae04ef2f7e5 Netscape61_PR1_RELEASE
+35f4f16a363e1437e3da2cd4a034106db719891a CAMINO_1_5_RELEASE
+01a18056c669163e920cf6b269f7a6bdee6e0168 NSS_OTIS_RELEASE_1
+18732b8e79abc6927466b191823c4a6cde1c85e7 NSS_3_12_7_BETA2
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 CAMINO_2_0_4_RELEASE
+a0907633358b9053cd26589cf43ddff519293d60 STRING_20040119_BASE
+2879b58af3e9fc8fc2f6be6965d2668e1468b6e0 MOZILLA_1_4b_RELEASE
+414c0a7abed3467347b47af148f500e5ab4b0c79 THUNDERBIRD_0_7_2_RELEASE
+935f7629444ec35e5e4edfaf4d415297436fdee0 NSS_3_6_BRANCH_20021026
+e8ae270e93c9878d9a3604126c4c5d6672ca8492 MOZILLA_1_7_11_RELEASE
+7313c3510a25726b60d37d291d8fdfbf4729d8e8 AVIARY_1_0_20040515_BASE
+b1c4aad79b9cad0500b4dff87e030ab21a74e342 DBM_1_61_RTM
+6c04d40a7d1ef3b3122f67d4a463b7383be7c9c6 THUNDERBIRD_1_0_7_RELEASE
+055390583fe9c565c93ac202d02d0a27d4cb510f MOZILLA_1_4_3_RELEASE
+d5dbf8256b66065233155c167a0454f6d18e3132 MOZILLA_1_4_1_RELEASE
+c391f2239374d7333ca70124e663bc5362257980 NSS_3_11_5_RC1
+26e0015555dfdd69163fbf90dbe3179cfc1a3520 NSS_CLIENT_TAG_20040128
+d56a7c7f33ab08bdd556c759163a1af770672780 MOZILLA_1_0_20020920_TAG
+7324ca828210ba063e0e834372517044a75369ed REFLOW_20020412_BASE
+c09a9cb74db94d0bd06d5cf8f1a7db97a51b54f0 NSS_CLIENT_TAG_20040123
+314e0676263bfd048a8c5a08291d3861e67d1cba NSS_CLIENT_TAG_20040124
+ac7a36b265c44efefad9c0aca4312002d1f0d416 NSS_3_14_3_BETA1
+5f61c7e93fec7936ea58fd2765956e27d8af19df MOZILLA_1_5_RC1
+878b45f1eabc199c39adaf99a4d3c0b3ac62b053 SeaMonkey_M6_BASE
+5f61c7e93fec7936ea58fd2765956e27d8af19df MOZILLA_1_5_RC2
+bb7684c1b39e993f0c83b0bcb2bf55183d42f2e7 NSS_3_12_9_WITH_CKBI_1_82_RTM
+2c223b79cacfcb4a5abe9b9fe316ca270e442877 FORMREWRITE_20011008_BASE
+4d6bbc197d90104caf52c5b16937c7f9b22b9123 WINCE_PORT_BASE
+c1159073815c4ca5eecf088007836116efc08c22 MOZILLA_0_9_4_BASE
+c391f2239374d7333ca70124e663bc5362257980 UPDATE_PACKAGING_R12
+5ffd00788b370b8844d5f13b7613ac32202e5f14 NSS_3_3_4_7_RTM
+c391f2239374d7333ca70124e663bc5362257980 UPDATE_PACKAGING_R11
+a60b8eaa9821d61cf883dd68225ce499633ea38c MOZILLA_1_2b_RELEASE
+f5797124e4ed7fe1ada40c18b032806e9ddf3c35 SECURITY_3_10_RTM
+c1d3c498cc8499c604f40dac7ec4ae19934637e4 NSS_3_13_5_BETA2
+2a927d5fafd1c3632c12f535a56cad9254bc1714 NSS_3_12_8_RC0
+49494f569332042ed656c9c47040863f56732275 FIREFOX_3_0rc2_BUILD1
+17de7a1fc871ca4e2c8f7b3fb24fe45d3f84399b ANGELON_MOZ_14_BR_BASE
+eb7dc83e18f3d5d8cbc49cc03d8b863dd87e2eed CAMINO_2_0_B2_RELEASE
+97d942112a6e3fb10ef3718eaa02eaf2eea8fa0b NSS_3_12_ALPHA_2B
+dc11e773516b4d402dde7dbb8f1928d0f7ca33a9 THUNDERBIRD_2_0_0_22_RELEASE
+1d6f69b3d13a0d9694ca91e5b0f3349de57f63d6 NSS_3_13_RTM
+e4232f4ce084ac8095eafd7a35c1531dcfed95b0 NSS_3_12_4_FIPS1_WITH_CKBI_1_75
+d742586206ef215fec0b4cd42bb459389c0e04fb SUN_COMPONENT_PACK_V_1_1
+0204699f138a593925188d64cb389eb4d8e5629c FIREFOX_1_5_0_11_RELEASE
+d3f7f2bb794bfc0b533d90433bdfdf524e3b4d67 MOZILLA_1_8_0_3_RELEASE
+3a7af932d824710ced472fddc9d46c19a7fcc34e FIREFOX_1_0_8_RELEASE
+d30e0acc0f97c53b634d1827dab3d83f42c66b8a WTC_20011211_TAG
+115493efb659a4a273f5109d12189ca13e188e90 NSS_3_6_BASE
+4a05ace60d1c6e26b38fb2ce0c1b57cbddf668f1 NSS_CLIENT_TAG_20011201
+4abd9fbe6b61db6441eea5c3a3229e4d36fb433e NSS_3_4_BETA1
+31071e8ac7bea52e2ce0ff99ef1433c89ed1b596 NSS_3_4_BETA2
+aeea57681f5651662e1d7515d093166761d6368e SeaMonkey_M5_BASE
+7715006624d53192b62b8b794b9209acec278c72 NSS_3_13_3_RTM
+3e22879011b4d2e8482da5b5034e0d56a7a2118d CHIMERA_0_6_RELEASE
+8d4c87d8de45e4ed8f55cbb2488990e43d2ba135 NSS_3_14_RC1
+1df059bf932c6635166cb681da1936a7bf584e5e NSS_3_4_3_RTM
+f54a7c45f5c9ea90a850e84dd114c62e2495cdfe NSS_3_3_3_RTM
+6da15a4d29436ae4f0d6f188fb2e0c5cb6c6eea2 NSS_3_11_TPATCH_20051221_BASE
+e8ae270e93c9878d9a3604126c4c5d6672ca8492 MOZILLA_1_7_12_RELEASE
+e5e5d5eed1ed0e727e139a16dc9b46349a57a744 MOZILLA_0_9_3_2001_07_31_BASE
+c2499b79f19c0673b94da30d07c5c6fd2517fa00 FIREFOX_3_0_12_RELEASE
+14eb8abb4638a8ae027d655d2ca8a02536fc6c56 NSS_3_11_20060424
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_16_RELEASE
+6cccea315881fffb35cc622e8538a71319110331 XULRUNNER_1_8_0_5_RC5
+6cccea315881fffb35cc622e8538a71319110331 XULRUNNER_1_8_0_5_RC2
+35f4f16a363e1437e3da2cd4a034106db719891a CAMINO_1_1_B_RELEASE
+6b8bf0d6dfcdf51999552de95bb9a46c75d5a996 NSS_3_3_2_BETA1
+a2ed6481a6220535a01c096a913614f31681553b MINIMO_6_AUG_2003_TAG
+7c1be942caa54d4052fb8c698a5d6585305022b0 STATIC_BUILD_20010612_BASE
+2618cfd419d58338a4da5887dffcd8e2d17a5033 phtmoz_20030411
+a3917dc19461a6170dd7ed09d147b1531387934d NSS_3_5_BASE
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_18_BUILD1
+ba6995f239974a99b582e92733f54804cdffcfe2 FIREFOX_2_0_0_14_RELEASE
+cec783c22db3fa5960bafef8eb2a7c53e7411e44 CHIMERA_0_4_RELEASE
+49494f569332042ed656c9c47040863f56732275 FIREFOX_3_0_1_BUILD1
+4188510dff21b47fdd09895d4a53db7a868c4579 smimetk_branch_point
+49494f569332042ed656c9c47040863f56732275 FIREFOX_3_0rc3_BUILD1
+a7bc329c9fce423691225654496b5f31d0b16c10 PHOTON_MOZ_PR1_BASE
+1386befef3c0724b11c72b8fe853ac8fc3306293 moz_win_20021104
+89066cc29aad67cab97e01b3bd663573b3ee5fb6 MOZILLA_1_8_1_RELEASE
+5a0f11679f74878ce94a74e548e793d13b321e7c NSS_3_11_9_RTM
+3e567c06f1d22c3e9dcd701f0f1dd4ad74465649 COMMANDLINES_20050109_BASE
+9287cd8ce872e8d04e5f3bfe53ee80b359daa704 MOZILLA_1_9a5_RELEASE
+765409bf73c650471a462f5594b62b807cf64cf4 NSS_3_11_3_RTM
+6cccea315881fffb35cc622e8538a71319110331 XULRUNNER_1_8_0_5_RC4
+e021d7b808ef6e5084857e87255927cbe6f77d3e FIREFOX_3_0_11_BUILD1
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_17_BUILD1
+2d2d8ebc0fd9e943169eebc7e8a7af2a62802655 FIREFOX_3_0_11_BUILD2
+02a629203fde11cf355b0332b31d9500c9a8d8a4 FIREFOX_0_9_3_RELEASE
+57d1e3da55bf5ef42330058b38daeca6dbc060ca JSS_3_3_1_RTM
+5f61c7e93fec7936ea58fd2765956e27d8af19df FIREBIRD_0_7_RELEASE
+4da0ea62942a4e16416d5081814481fdec0893f4 SeaMonkey_M14_no_crypto_RELEASE
+2c223b79cacfcb4a5abe9b9fe316ca270e442877 MOZILLA_0_9_5_2001100514_BASE
+4d75747933494fffead0b07e5c7f1a3d7718fec8 XPCDOM_20010329_BASE
+0204699f138a593925188d64cb389eb4d8e5629c FIREFOX_1_5_0_12_RELEASE
+f59c163608f638e1f477154bab01cc1a148a40da NSS_3_6_BETA3
+ee024c01630e48be11fa434a74264152dde45025 NSS_3_6_BETA2
+fcfa66149d64bbaf5fb3c18ed111b820dac1f011 NSS_3_6_BETA1
+c88a943c035e60d2660bfe71c233ac6914fd49dd SEAMONKEY_1_0_6_RELEASE
+4ec19fb0a28aa33b2f7c2b9e236b17b91a78473e ROGC_20020603_FREEZE
+755506f1cfb04791061cd597a4342e03e27950ba NETSCAPE_7_01_RTM_RELEASE
+64df868e1499020698e6fde96f515e74846ff5d7 NSS_CLIENT_TAG_20010815
+6e8ecbafa77b55a73eec35f59f30865a3d6cc4dc ANGELON_MOZ14_BRANCH
+854c64b88c97f3c2bd96fa3c3a299fe9d3f87353 PSM2_NSS_CLIENT_TAG_20010410
+6c04d40a7d1ef3b3122f67d4a463b7383be7c9c6 FIREFOX_1_0_4_RELEASE
+8d453e57dba947490eb8916d92e42b4c93bcc2a1 NSS_3_12_6_RC2
+695b1851fe28a03557f0d7e54f66e056825cd866 NSS_3_9_2_RTM
+c3c4bde10b125933b7887d10df387fd5f7c72103 NSS_3_12_6_RC0
+c61d9cca831de4ba8c0af01d17af488a678391cc Style_20010518_Base
+71ed92981bb1622f9f43e8408a448434aa441d08 nss_20021126
+01d5eb6e11c9dda320b027967aa699e346b8e52f NSS_3_9_RTM
+4274f7f44da42be12e4a6d61d2decc1c2e724669 moz_ux_20021009
+03a97a75d1bba9f79ae8f9146de16656e94a2e13 FIREFOX_3_0_19_RELEASE
+414c0a7abed3467347b47af148f500e5ab4b0c79 FIREFOX_0_9_RC1
+a4335347980e2a8f1fd16c457aa4c5a6ef9a8d16 MACHO_20010807_BASE
+9969922516850c6d5eab38d2f96d1e2612079d3b NSS_3_3_11_RTM
+7d7190045260c0103ba546cfd048881d99324994 SeaMonkey_M13_BASE
+7be84714297b24fb508308ec8502330b5099648d CAMINO_1_5_3_RELEASE
+35f4f16a363e1437e3da2cd4a034106db719891a THUNDERBIRD_2_0_0_4_RC1
+4b35c867487dc6071728d674450b92e5b077c7a8 MOZILLA_0_8_20010215_RELEASE
+65b89f5866dc702281bac2b7444a61c774db53f6 NSSCKBI_1_77_RTM
+7340dd2801496439f217ebc4ceb234f012fc8906 JSS_3_3_BETA1
+f3b3d3573b7a373a1a4b0d063af9f83f2ca1a255 SUN_SECURITY_3_9_3_O3B7
+c985023260e1c916695dbb9588e2aab554ef951a NSS_3_14_3_RC0
+e5e5d5eed1ed0e727e139a16dc9b46349a57a744 MOZILLA_0_9_3_RELEASE
+48903189063dfd561ffc80c899065bf63c22df8b THUNDERBIRD_1_5rc2_RELEASE
+8cac54a0b75698ca9fce7d622a8764081568c038 JSS_4_3_1_BETA2
+8b2a6b06539153448d895d3d83a32546ad94bc7b NSS_3_15_BETA1
+d8870eaa2c43c883fac1468f4713c5e49fc27921 NSS_3_15_BETA2
+3986289106f1b63df43e46162764ef1865b06afb NSS_3_15_BETA3
+b610af8addaae00ced09ea0f0a3bf7bc416fe8ff NSS_3_15_BETA4
+d0cf1feff4dc491d14a1691f7aae42d886676593 NSS_3_15_BETA5
+3c2b5c42ce91cd3e5d284f53e03e969fcbcdcf9b NSS_3_15_BETA6
+db5b7e3c69a546bf6783622b56e477251b768818 NSS_3_15_RTM
+5577feb2791a307c47d81ea4de7023dab7247b56 NSS_3_15_1_BETA1
+17df3000588ab7342073e4e02c76c84f8039813c NSS_3_15_1_BETA2
+05ffc38de8b4a1f0248fa41da52c6aed3a8c5b75 NSS_3_15_1_RTM
+2ab64817f70320cf974c901e3d020f297f2a55c7 NSS_3_15_2_BETA1
+827c64ac482fcaf3b5af183ed4bba2a021706eac NSS_3_15_2_BETA2
+0dafe7df1dde7de5726b3c67c43544817bb2f574 NSS_3_15_2_RC0
+d7713e6888f1306b8f4e8afe6e5f897360007362 NSS_3_15_2_RTM
+c2e4eb8d2ede1a95405d9b72b76b67ff3dd209a5 NSS_3_15_3_BETA1
+9cdaf745a4ecd0abd12fba4521e513480328ff6e NSS_3_15_3_BETA2
+7f0507939e1582a228a2ea52c636aa35faacf0ec NSS_3_15_4_BETA1
+6634b8f109202e1ae93d082b877b1f8fdc35567e NSS_3_15_4_BETA2
+06543f3e9df06732a7beb5f7e1ee1c020423b006 NSS_3_15_4_BETA3
+5696596bdbc90d71fb12603a7c806973f55b0ca1 NSS_3_15_4_BETA4
+44ba62b87bd6a3aedfe6d1d55a510a65e59b0fcf NSS_3_15_4_BETA5
+ead5dfef5276c9296c911b7b3191765a4059e862 NSS_3_15_4_BETA6
+5a79447766456df4257f58c8fc59f3a481e71118 NSS_3_15_4_BETA7
+85486e4f48c809e37f5a8471398f1cf4415fbb7f NSS_3_15_4_BETA8
+a3d86225543c74c2081cc6fc06d48055c2cb1b58 NSS_3_15_4_BETA9
+22d286933c2082a40ec630d0ecdcb0e073f9ea0a NSS_3_15_4_BETA10
+c3565a90b8c489a5f6f0b12e3ed53b09b4f038a7 NSS_3_15_4_RTM
+ab1e7334bde60c4f2242348de71761c05689f421 NSS_3_15_5_BETA1
+e5d3ec1d9a35f7cac554543d52775092de9f6a01 NSS_3_15_5_BETA2
+0000000000000000000000000000000000000000 NSS_3_15_5_BETA2
+7fa7518797e8b36fa12f1f1bdf098a1c3b83371c NSS_3_15_5_BETA2
+b57dd6c60b5a274657a5ea2986933adfd837a8ed NSS_3_16_BETA1
+a12661698586f75ee25145ce1e84b4684de6ef37 NSS_3_16_BETA2
+a12661698586f75ee25145ce1e84b4684de6ef37 NSS_3_16_BETA2
+573d75888e4840aa608e6d2e5da840372cab01b7 NSS_3_16_BETA2
+d793d89df0603802f71e1aa69fc22a51690224bd NSS_3_16_BETA3
+d4365c8891860d0bcf2be672c56941aa6061f580 NSS_3_16_BETA4
+ab3a00d03c39b4c284a1ca71c99ae399f20ea266 NSS_3_16_BETA5
+fbfbdfeadbb5208c6c3c0ccf4b85f292b2555389 NSS_3_16_RC0
+2efe8ffcc2699866520b4535f96b33382a209806 NSS_3_16_RTM
+742307da0792066e4b4ca46aa7b28399868507ae NSS_3_16_1_BETA1
+c5e3618501a837b6898bb47cf0732e135c6ba542 NSS_3_16_1_BETA2
+7e8485a5ed49d62f5a2e83c567c25c129ca93ce7 NSS_3_16_1_BETA3
+0bef241d00cb1a5091b577829a621a83a773169a NSS_3_16_1_BETA4
+c51293b8a4fd314740d102f06b0f69fd03f7892c NSS_3_16_1_RTM
+f7a4c771997e1663a6962dacc6ea6599b135cea3 NSS_3_16_2_BETA1
+b48e80f3f44d3e734c82bd58c0449210b5a59afe NSS_3_16_2_BETA2
+204f22c527f88979dbd84b73c3c3561b8f1d4812 NSS_3_16_2_BETA3
+204f22c527f88979dbd84b73c3c3561b8f1d4812 NSS_3_16_2_BETA3
+dee23d59c9407119fdf83fbd1ead24fe8c339df4 NSS_3_16_2_BETA3
+8da5fd3ea88d86f91e19df404f44e6a99d45b551 NSS_3_16_2_BETA4
+af10612878defcda2fd89ef74381ef196a59061e NSS_3_16_2_RTM
+550c11d54672ec951e887347fd4db14a63d1930c NSS_3_17_BETA1
+dc69e391132675100e5c9f7faae129ab46337c60 NSS_3_17_BETA2
+1991f9d6db779e5b773a27722ee0bb2dbbc40f7c NSS_3_17_RC0
+1991f9d6db779e5b773a27722ee0bb2dbbc40f7c NSS_3_17_RTM
+d977d39eb9d14c2554439a18623ebca8e56678b7 NSS_3_17_1_BETA1
+eb792774acc34d3f3c9b274e07621bfb65f35448 NSS_3_17_1_BETA2
+c7b01cd5e7b263c84ce8c1d104c584a1f064e65c NSS_3_17_1_RTM
+74129657d6cec064c4a0bcb7b04c10c2cf3c85d2 NSS_3_17_2_BETA1
+358730f7261da6aa7b1ee19aafb22c0fc40506f8 NSS_3_17_2_BETA2
+e65f62b51d62b882f3de467b7cba7fb2699dbf8b NSS_3_17_2_RC0
+fb8925f6648d5c7829b74853bc5585ec250b85b4 NSS_3_17_2_RTM
+1882a6db68fd34cd907e3c3fa398455f15b80784 NSS_3_18_BETA1
+c92f97d1bd26d81a1a7b98a05985cade88132a2f NSS_3_18_BETA2
+f9bac028f79a6b2129c561137f1d4312c981cedd NSS_3_18_BETA3
+01c19c751a742cd382c121a33dac7c65cdb2fd50 NSS_3_18_BETA4
+f5c1de4478efd102de37ecdd488a89070159432f NSS_3_17_3_RC0
+092819bde8dbf774f7ca761add1ab002d0209f12 NSS_3_17_3_RTM
+0455ebb9ad001507fcd795df23f452cb0be80832 NSS_3_18_BETA5
+fb546430479b31cd7ea40226c44e40913e4bb227 NSS_3_18_BETA6
+8b41721a1e1531d7a91fff13fa04a4c5a389ba48 NSS_3_17_4_RC0
+858493460699bce43b9bbe1e397c6a929db6ca9f NSS_3_17_4_RTM
+483fbe78c2b2707a53185e63ab37d72af4883aa5 NSS_3_18_BETA7
+a1a73fb115562b7122ecbba2da587aa3bc39ed57 NSS_3_18_RC0
+52c02fe9ce3aec27f11a589b8e98ddc79234ec86 NSS_3_18_RC1
+5dd4763f532ff3bd3145912c29b5f1e694abd8e9 NSS_3_18_RTM
+5dd4763f532ff3bd3145912c29b5f1e694abd8e9 NSS_3_18_RTM
+0000000000000000000000000000000000000000 NSS_3_18_RTM
+c89e2dedb1277ec0acda8e8fccfbeb5034addc4c NSS_3_18_RC2
+0000000000000000000000000000000000000000 NSS_3_18_RTM
+b01f280a73e940731d24ab37740ee5fa14264cef NSS_3_18_RTM
+9dde22ab19d1c7c5e0acbdfcab99550313ca733a NSS_3_18_1_BETA1
+431691e123f03c151b7b54579e488a1687edc9e2 NSS_3_19_BETA2
+c1bd3c0eaa342b1a628efcfef9e99aacc3f0c20a NSS_3_19_BETA3
+1a2a200aeb4002fdb63b412fe50f8e2ba90a82ef NSS_3_19_BETA4
+342f7e837802c1efc73992776ace45f2c8fdfb47 NSS_3_19_BETA5
+607a836b01ed2660eafda422ba2266b5cc91740b NSS_3_19_RC0
+af38c6ffbe4efafee3cf5920ebf0db6ce298f01e NSS_3_19_RTM
+ae72d76f8d2472505b499c498191c3ce441b6a17 NSS_3_19_1_BETA1
+ae72d76f8d2472505b499c498191c3ce441b6a17 NSS_3_19_1_BETA1
+736d9f81295197d3ba63a4ece70f1c377d28e630 NSS_3_19_1_BETA1
+537d7fc8624c289e4f818a4c69847eaedecceccb NSS_3_19_1_RTM
+2b29dfe134a5fd5ba2c4e80074b7cf8fc2d36cfd NSS_3_19_2_BETA1
+97d30005dd7bb02b15bd2b8a27e2426c49d06d69 NSS_3_19_2_RTM
+6e60855257f0f3d34cb51cdd2aba1800b7834f7f NSS_3_21_Beta1
+dc5a3f75d9d5d0fc6dd5f5b60b5b9be693dbbc78 NSS_3_21_Beta2
+feae8cff7fed6f450b8136af59e7f50e448a5c12 NSS_3_21_Beta3
+507694132f6f0706e7b8e33dac63a560a89f67fc NSS_3_21_RTM
+d0d925b6cf323b4cd66fae401a8206bed5577575 NSS_3_22_BETA1
+72122a7dc17e04cf98faeb67acbcb382071cbd09 NSS_3_22_BETA2
+ee1254aeba3e9929858d24f071bafcabea32ad4a NSS_3_22_RTM
+4f727a27da000cf1b849af882924a88e8b1d9206 NSS_3_23_BETA1
+ed3747827ea71f232c5f66cced2149f68e8c5857 NSS_3_23_BETA2
+58a2646809529953052c1367545145da7c5709a3 NSS_3_23_BETA3
+b27bfeb21edb4a50ee2bb56ed06462ece461a4c1 NSS_3_23_BETA4
+1df3afde15aae0b28df289a0488af302ee06813e NSS_3_23_BETA5
+4bc07bbf4b40931dfda4d65b729ba198d697f96e NSS_3_23_BETA6
+0e6e8153513e40154dc1907c2aff318b5342e73e NSS_3_23_BETA7
+c603975b17e7c073314896c6ce6838508c55f5d8 NSS_3_23_BETA8
+612cfac63edfaaf2bbc7cf9a1b76bebd4975f3a6 NSS_3_23_RC0
+250e4280aaa157a248d9786d02b421d6f025eff6 NSS_3_24_BETA1
+c719ec5480969f921738bdac54faa264adb8fac1 NSS_3_24_BETA2
+04f19b705ec548943b28c01cda1ada2fdb030fd6 NSS_3_24_BETA1b
+04f19b705ec548943b28c01cda1ada2fdb030fd6 NSS_3_24_BETA3
+cb003099f3f0d1bd161720d5e7b7deedb611881d NSS_3_24_BETA4
+04f19b705ec548943b28c01cda1ada2fdb030fd6 NSS_3_24_BETA3
+0000000000000000000000000000000000000000 NSS_3_24_BETA3
+8b5c760a62d40c5a7aaad2d21f721637669f5c89 NSS_3_24_BETA5
+4084aa2e0c3e2a8b5138de9d03b40b51b7e97337 NSS_3_24_BETA6
+81ac6ae397ea23d1cf4fdc50e6e133e9815bbbec NSS_3_24_BETA7
+4346b9e3b7184975765f705805e54396cde5d7fc NSS_3_24_RC0
+bdf702cc0f766757d8221b1bb9a8a5a12f0183da NSS_3_25_BETA1
+2c9ec9e42631adeb82ee486a373313df9fcc05fb NSS_3_25_RC0
+98a35207af80f780de09b5e67570add9ca4b6e7e NSS_3.26_BETA1
+2530cf04ae825a678b2917376e50df6cace2ce81 NSS_3.26_BETA2
+929f77302ec909cbc1cb1d340549cee91d8d10aa NSS_3_26_RC0
+cc982d5a9904b9ec478eced92a3eea8ee0ee313a NSS_3_27_BETA1
+d36a5c8225914f92c12f8e182d83f5b4727d327b NSS_3_27_BETA2
+06ed5314230a8abc5436bdca2cc79e7de7f2828f NSS_3_27_BETA3
+32c9bbad265504522441f601333f0b89861a15d1 NSS_3_34_BETA1
+f9e336b12cb424b2e4693feef52c3dc6825a7dea NSS_3_36_BETA1
+3570602e28126ef329de0b66829c1d7100206a55 NSS_3_36_BETA2
+984522987a1a351a414c66a3c4f74a2192ace8f9 NSS_3_44_BETA1
+6cc6cb4410552adafe8168d7645ced7c3098d5ac NSS_3_44_BETA2
+b2aaab1ad8bd040c4d95d4e82838462a5350af43 NSS_3_44_BETA3
+4f80a4077e401bf774905dfee5f025a237707151 NSS_3_45_BETA1
+7b749ff400db3ecab87f394c091ea0831254e674 NSS_3_45_BETA2
+44aa330de2aa0072d6121d82516d39a00346c1b9 NSS_3_46_BETA1
+24b0fc7002039af07f6976d46ee7e186970c5cdb NSS_3_46_BETA2
+93245f5733b3a042604e3021c0233ea8bfb6e3b9 NSS_3_47_BETA1
+f657d65428c6e9e3468158df79c40bf5f6f32faf NSS_3_47_BETA2
+f10c3e0757b7b2cef3fb6201b2a9be795c6aecd4 NSS_3_47_BETA3
+d3c8638f85cdc4ed6c114406fca49314514bc097 NSS_3_47_BETA4
+77976f3fefca36adea9d1087915078950283c6d4 NSS_3_48_BETA1
+9ecd41cd2fa3c88217c75d0642fca9154a16d162 NSS_3_49_BETA1
+0b30eb1c365095be6c5bb9bd0aeb60e4a9901e6f NSS_3_52_BETA1
+bb4462a16de8ca52068ca1e83351b576b60f2410 NSS_3_52_BETA2
+c7a1c91cd9befb627eb908965ae3a611b381c7ad NSS_3_53_BETA1
+8fe22033a88e7fb75d451455ca841017ce50f9c1 NSS_3_53_BETA2
+2bd2f3267dc5e96aabe1145d698a817f37bc8f4c NSS_3_54_BETA1
+0768baa431e720672263deaee5b1409fbce93fdd NSS_3_55_BETA1
+52c965eaffa1272652a4ba765045b5193e586663 NSS_3_56_BETA1
+56224882ccc3c079fb22a8f2afedd1d56a0c199e NSS_3_57_BETA1
+57bbefa793232586d27cee83e74411171e128361 NSS_3_58_BETA1
+c3cb09a7d08766701c7614879701b22af47543a8 NSS_3_59_BETA1
+f84fb229842ab7bba938f943eed9d93c5b1c9189 NSS_3_60_BETA1
+68ae9b456b1bfa745b20ddec421ee6fc3688aed9 NSS_3_61_BETA1
+81628e9164ff78ce446fc03c849580384bef37fe NSS_3_64_BETA1
+ef126608d281cc268e204e65503e1a5b84d53241 NSS_3_64_RTM
diff --git a/libs/nss/src/TAG-INFO b/libs/nss/src/TAG-INFO
index 1491e0956..144d90529 100644
--- a/libs/nss/src/TAG-INFO
+++ b/libs/nss/src/TAG-INFO
@@ -1 +1 @@
-NSS_3_63_1_RTM \ No newline at end of file
+NSS_3_64_RTM \ No newline at end of file
diff --git a/libs/nss/src/automation/abi-check/previous-nss-release b/libs/nss/src/automation/abi-check/previous-nss-release
index 858dd4efa..db4667ea5 100644
--- a/libs/nss/src/automation/abi-check/previous-nss-release
+++ b/libs/nss/src/automation/abi-check/previous-nss-release
@@ -1 +1 @@
-NSS_3_62_BRANCH
+NSS_3_63_BRANCH
diff --git a/libs/nss/src/cmd/bltest/blapitest.c b/libs/nss/src/cmd/bltest/blapitest.c
index 06654ef65..98e7c7538 100644
--- a/libs/nss/src/cmd/bltest/blapitest.c
+++ b/libs/nss/src/cmd/bltest/blapitest.c
@@ -21,6 +21,7 @@
#include "secoid.h"
#include "nssutil.h"
#include "ecl-curve.h"
+#include "chacha20poly1305.h"
#include "pkcs1_vectors.h"
@@ -628,19 +629,20 @@ typedef enum {
bltestSEED_ECB, /* SEED algorithm */
bltestSEED_CBC, /* SEED algorithm */
#endif
- bltestCHACHA20, /* ChaCha20 + Poly1305 */
- bltestRSA, /* Public Key Ciphers */
- bltestRSA_OAEP, /* . (Public Key Enc.) */
- bltestRSA_PSS, /* . (Public Key Sig.) */
- bltestECDSA, /* . (Public Key Sig.) */
- bltestDSA, /* . (Public Key Sig.) */
- bltestMD2, /* Hash algorithms */
- bltestMD5, /* . */
- bltestSHA1, /* . */
- bltestSHA224, /* . */
- bltestSHA256, /* . */
- bltestSHA384, /* . */
- bltestSHA512, /* . */
+ bltestCHACHA20_CTR, /* ChaCha20 block cipher */
+ bltestCHACHA20, /* ChaCha20 + Poly1305 */
+ bltestRSA, /* Public Key Ciphers */
+ bltestRSA_OAEP, /* . (Public Key Enc.) */
+ bltestRSA_PSS, /* . (Public Key Sig.) */
+ bltestECDSA, /* . (Public Key Sig.) */
+ bltestDSA, /* . (Public Key Sig.) */
+ bltestMD2, /* Hash algorithms */
+ bltestMD5, /* . */
+ bltestSHA1, /* . */
+ bltestSHA224, /* . */
+ bltestSHA256, /* . */
+ bltestSHA384, /* . */
+ bltestSHA512, /* . */
NUMMODES
} bltestCipherMode;
@@ -670,6 +672,7 @@ static char *mode_strings[] =
"seed_ecb",
"seed_cbc",
#endif
+ "chacha20_ctr",
"chacha20_poly1305",
"rsa",
"rsa_oaep",
@@ -800,12 +803,8 @@ struct bltestCipherInfoStr {
PRBool
is_symmkeyCipher(bltestCipherMode mode)
{
-/* change as needed! */
-#ifndef NSS_DISABLE_DEPRECATED_SEED
- if (mode >= bltestDES_ECB && mode <= bltestSEED_CBC)
-#else
- if (mode >= bltestDES_ECB && mode <= bltestCAMELLIA_CBC)
-#endif
+ /* change as needed! */
+ if (mode >= bltestDES_ECB && mode <= bltestCHACHA20_CTR)
return PR_TRUE;
return PR_FALSE;
}
@@ -842,6 +841,7 @@ is_singleShotCipher(bltestCipherMode mode)
switch (mode) {
case bltestAES_GCM:
case bltestAES_CTS:
+ case bltestCHACHA20_CTR:
case bltestCHACHA20:
return PR_TRUE;
default:
@@ -897,6 +897,7 @@ cipher_requires_IV(bltestCipherMode mode)
#ifndef NSS_DISABLE_DEPRECATED_SEED
case bltestSEED_CBC:
#endif
+ case bltestCHACHA20_CTR:
case bltestCHACHA20:
return PR_TRUE;
default:
@@ -1151,6 +1152,21 @@ aes_Decrypt(void *cx, unsigned char *output, unsigned int *outputLen,
}
SECStatus
+chacha20_Encrypt(void *cx, unsigned char *output, unsigned int *outputLen,
+ unsigned int maxOutputLen, const unsigned char *input,
+ unsigned int inputLen)
+{
+ if (maxOutputLen < inputLen) {
+ PORT_SetError(SEC_ERROR_OUTPUT_LEN);
+ return SECFailure;
+ }
+ ChaCha20Context *ctx = cx;
+ *outputLen = inputLen;
+ return ChaCha20_Xor(output, input, inputLen, ctx->key, ctx->nonce,
+ ctx->counter);
+}
+
+SECStatus
chacha20_poly1305_Encrypt(void *cx, unsigned char *output,
unsigned int *outputLen, unsigned int maxOutputLen,
const unsigned char *input, unsigned int inputLen,
@@ -1656,6 +1672,24 @@ bltest_seed_init(bltestCipherInfo *cipherInfo, PRBool encrypt)
#endif /* NSS_DISABLE_DEPRECATED_SEED */
SECStatus
+bltest_chacha20_ctr_init(bltestCipherInfo *cipherInfo, PRBool encrypt)
+{
+ const PRUint32 counter = 1;
+ bltestSymmKeyParams *sk = &cipherInfo->params.sk;
+ cipherInfo->cx = ChaCha20_CreateContext(sk->key.buf.data, sk->key.buf.len,
+ sk->iv.buf.data, sk->iv.buf.len,
+ counter);
+
+ if (cipherInfo->cx == NULL) {
+ PR_fprintf(PR_STDERR, "ChaCha20_CreateContext() returned NULL\n"
+ "key must be 32 bytes, iv must be 12 bytes\n");
+ return SECFailure;
+ }
+ cipherInfo->cipher.symmkeyCipher = chacha20_Encrypt;
+ return SECSuccess;
+}
+
+SECStatus
bltest_chacha20_init(bltestCipherInfo *cipherInfo, PRBool encrypt)
{
const unsigned int tagLen = 16;
@@ -2316,6 +2350,11 @@ cipherInit(bltestCipherInfo *cipherInfo, PRBool encrypt)
return bltest_seed_init(cipherInfo, encrypt);
break;
#endif /* NSS_DISABLE_DEPRECATED_SEED */
+ case bltestCHACHA20_CTR:
+ outlen = cipherInfo->input.pBuf.len;
+ SECITEM_AllocItem(cipherInfo->arena, &cipherInfo->output.buf, outlen);
+ return bltest_chacha20_ctr_init(cipherInfo, encrypt);
+ break;
case bltestCHACHA20:
outlen = cipherInfo->input.pBuf.len + (encrypt ? 16 : 0);
SECITEM_AllocItem(cipherInfo->arena, &cipherInfo->output.buf, outlen);
@@ -2620,6 +2659,9 @@ cipherFinish(bltestCipherInfo *cipherInfo)
SEED_DestroyContext((SEEDContext *)cipherInfo->cx, PR_TRUE);
break;
#endif /* NSS_DISABLE_DEPRECATED_SEED */
+ case bltestCHACHA20_CTR:
+ ChaCha20_DestroyContext((ChaCha20Context *)cipherInfo->cx, PR_TRUE);
+ break;
case bltestCHACHA20:
ChaCha20Poly1305_DestroyContext((ChaCha20Poly1305Context *)
cipherInfo->cx,
@@ -2706,7 +2748,10 @@ getHighUnitBytes(PRInt64 res)
}
}
- return PR_smprintf("%d%s", spl[i], marks[i]);
+ if (i == 0)
+ return PR_smprintf("%d%s", spl[i], marks[i]);
+ else
+ return PR_smprintf("%d%s %d%s", spl[i], marks[i], spl[i - 1], marks[i - 1]);
}
static void
diff --git a/libs/nss/src/coreconf/Linux.mk b/libs/nss/src/coreconf/Linux.mk
index 956f0e4a9..70651e28f 100644
--- a/libs/nss/src/coreconf/Linux.mk
+++ b/libs/nss/src/coreconf/Linux.mk
@@ -54,6 +54,11 @@ ifeq (,$(filter-out ppc64 ppc64le,$(OS_TEST)))
ifeq ($(USE_64),1)
ARCHFLAG = -m64
endif
+ifeq (,$(filter-out ppc ppc64,$(OS_TEST)))
+ifneq ($(NSS_DISABLE_CRYPTO_VSX),0)
+ NSS_DISABLE_CRYPTO_VSX=1
+endif
+endif
else
ifeq ($(OS_TEST),alpha)
OS_REL_CFLAGS = -D_ALPHA_
diff --git a/libs/nss/src/coreconf/config.gypi b/libs/nss/src/coreconf/config.gypi
index 4c8931c6d..951e9abd1 100644
--- a/libs/nss/src/coreconf/config.gypi
+++ b/libs/nss/src/coreconf/config.gypi
@@ -107,6 +107,7 @@
'disable_libpkix%': 1,
'disable_werror%': 0,
'disable_altivec%': 0,
+ 'disable_crypto_vsx%': 0,
'disable_arm32_neon%': 0,
'mozilla_client%': 0,
'comm_client%': 0,
diff --git a/libs/nss/src/coreconf/config.mk b/libs/nss/src/coreconf/config.mk
index 2f7b63896..4ae941c47 100644
--- a/libs/nss/src/coreconf/config.mk
+++ b/libs/nss/src/coreconf/config.mk
@@ -231,10 +231,15 @@ DEFINES += -DNSS_DISABLE_ARM32_NEON
endif
# Avoid building with PowerPC's Altivec acceleration
-ifdef NSS_DISABLE_ALTIVEC
+ifeq ($(NSS_DISABLE_ALTIVEC),1)
DEFINES += -DNSS_DISABLE_ALTIVEC
endif
+# Avoid building with PowerPC's Crypto and VSX instructions
+ifeq ($(NSS_DISABLE_CRYPTO_VSX),1)
+DEFINES += -DNSS_DISABLE_CRYPTO_VSX
+endif
+
# This allows all library and tools code to use the util function
# implementations directly from libnssutil3, rather than the wrappers
# in libnss3 which are present for binary compatibility only
diff --git a/libs/nss/src/coreconf/detect_host_arch.py b/libs/nss/src/coreconf/detect_host_arch.py
index a32b01034..69fd960f6 100644
--- a/libs/nss/src/coreconf/detect_host_arch.py
+++ b/libs/nss/src/coreconf/detect_host_arch.py
@@ -19,6 +19,8 @@ def main():
pass
elif host_arch.startswith('arm'):
host_arch = 'arm'
+ elif host_arch.startswith('mips64'):
+ host_arch = 'mips64'
elif host_arch.startswith('mips'):
host_arch = 'mips'
print(host_arch)
diff --git a/libs/nss/src/lib/ckfw/builtins/certdata.txt b/libs/nss/src/lib/ckfw/builtins/certdata.txt
index 204b8f280..19bd1b0dd 100644
--- a/libs/nss/src/lib/ckfw/builtins/certdata.txt
+++ b/libs/nss/src/lib/ckfw/builtins/certdata.txt
@@ -6723,7 +6723,7 @@ END
CKA_SERIAL_NUMBER MULTILINE_OCTAL
\002\011\000\243\332\102\176\244\261\256\332
END
-CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
@@ -6933,7 +6933,7 @@ END
CKA_SERIAL_NUMBER MULTILINE_OCTAL
\002\011\000\311\315\323\351\325\175\043\316
END
-CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR
CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST
CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
diff --git a/libs/nss/src/lib/freebl/Makefile b/libs/nss/src/lib/freebl/Makefile
index 269e34c5c..3d5357297 100644
--- a/libs/nss/src/lib/freebl/Makefile
+++ b/libs/nss/src/lib/freebl/Makefile
@@ -298,6 +298,10 @@ ifdef USE_64
PPC_ABI := $(shell $(CC) -dM -E - < /dev/null | awk '$$2 == "_CALL_ELF" {print $$3}')
ifeq ($(PPC_ABI),2)
ASFILES += sha512-p8.s
+ ifeq ($(OS_TEST),ppc64le)
+ EXTRA_SRCS += chacha20poly1305-ppc.c
+ ASFILES += chacha20-ppc64le.s
+ endif # ppc64le
endif
endif # USE_64
endif # ppc
@@ -756,12 +760,20 @@ $(OBJDIR)/$(PROG_PREFIX)sha256-armv8$(OBJ_SUFFIX): CFLAGS += -march=armv8-a+cryp
endif
ifeq ($(CPU_ARCH),ppc)
-ifndef NSS_DISABLE_ALTIVEC
-$(OBJDIR)/$(PROG_PREFIX)gcm-ppc$(OBJ_SUFFIX): CFLAGS += -mcrypto -maltivec -mvsx
-$(OBJDIR)/$(PROG_PREFIX)gcm$(OBJ_SUFFIX): CFLAGS += -mcrypto -maltivec -mvsx
-$(OBJDIR)/$(PROG_PREFIX)rijndael$(OBJ_SUFFIX): CFLAGS += -mcrypto -maltivec -mvsx
-$(OBJDIR)/$(PROG_PREFIX)sha512$(OBJ_SUFFIX): CFLAGS += -mcrypto -maltivec -mvsx \
- -funroll-loops -fpeel-loops
+$(OBJDIR)/$(PROG_PREFIX)sha512$(OBJ_SUFFIX): CFLAGS += -funroll-loops -fpeel-loops
+ifneq ($(NSS_DISABLE_ALTIVEC),1)
+$(OBJDIR)/$(PROG_PREFIX)gcm-ppc$(OBJ_SUFFIX): CFLAGS += -maltivec
+$(OBJDIR)/$(PROG_PREFIX)gcm$(OBJ_SUFFIX): CFLAGS += -maltivec
+$(OBJDIR)/$(PROG_PREFIX)rijndael$(OBJ_SUFFIX): CFLAGS += -maltivec
+$(OBJDIR)/$(PROG_PREFIX)sha512$(OBJ_SUFFIX): CFLAGS += -maltivec
+$(OBJDIR)/$(PROG_PREFIX)chacha20poly1305-ppc$(OBJ_SUFFIX): CFLAGS += -maltivec
+endif
+ifneq ($(NSS_DISABLE_CRYPTO_VSX),1)
+$(OBJDIR)/$(PROG_PREFIX)gcm-ppc$(OBJ_SUFFIX): CFLAGS += -mcrypto -mvsx
+$(OBJDIR)/$(PROG_PREFIX)gcm$(OBJ_SUFFIX): CFLAGS += -mcrypto -mvsx
+$(OBJDIR)/$(PROG_PREFIX)rijndael$(OBJ_SUFFIX): CFLAGS += -mcrypto -mvsx
+$(OBJDIR)/$(PROG_PREFIX)sha512$(OBJ_SUFFIX): CFLAGS += -mcrypto -mvsx
+$(OBJDIR)/$(PROG_PREFIX)chacha20poly1305-ppc$(OBJ_SUFFIX): CFLAGS += -mcrypto -mvsx
endif
endif
diff --git a/libs/nss/src/lib/freebl/blapi.h b/libs/nss/src/lib/freebl/blapi.h
index 6f806884e..569bd461f 100644
--- a/libs/nss/src/lib/freebl/blapi.h
+++ b/libs/nss/src/lib/freebl/blapi.h
@@ -1043,6 +1043,26 @@ Camellia_Decrypt(CamelliaContext *cx, unsigned char *output,
/******************************************/
/*
+** ChaCha20 block cipher
+*/
+
+extern SECStatus ChaCha20_InitContext(ChaCha20Context *ctx,
+ const unsigned char *key,
+ unsigned int keyLen,
+ const unsigned char *nonce,
+ unsigned int nonceLen,
+ PRUint32 ctr);
+
+extern ChaCha20Context *ChaCha20_CreateContext(const unsigned char *key,
+ unsigned int keyLen,
+ const unsigned char *nonce,
+ unsigned int nonceLen,
+ PRUint32 ctr);
+
+extern void ChaCha20_DestroyContext(ChaCha20Context *ctx, PRBool freeit);
+
+/******************************************/
+/*
** ChaCha20+Poly1305 AEAD
*/
diff --git a/libs/nss/src/lib/freebl/blapit.h b/libs/nss/src/lib/freebl/blapit.h
index 03cf96381..0054e17b8 100644
--- a/libs/nss/src/lib/freebl/blapit.h
+++ b/libs/nss/src/lib/freebl/blapit.h
@@ -245,6 +245,7 @@ struct SHA256ContextStr;
struct SHA512ContextStr;
struct AESKeyWrapContextStr;
struct SEEDContextStr;
+struct ChaCha20ContextStr;
struct ChaCha20Poly1305ContextStr;
struct Blake2bContextStr;
@@ -265,6 +266,7 @@ typedef struct SHA512ContextStr SHA512Context;
typedef struct SHA512ContextStr SHA384Context;
typedef struct AESKeyWrapContextStr AESKeyWrapContext;
typedef struct SEEDContextStr SEEDContext;
+typedef struct ChaCha20ContextStr ChaCha20Context;
typedef struct ChaCha20Poly1305ContextStr ChaCha20Poly1305Context;
typedef struct Blake2bContextStr BLAKE2BContext;
diff --git a/libs/nss/src/lib/freebl/chacha20-ppc64le.S b/libs/nss/src/lib/freebl/chacha20-ppc64le.S
new file mode 100644
index 000000000..487ff830a
--- /dev/null
+++ b/libs/nss/src/lib/freebl/chacha20-ppc64le.S
@@ -0,0 +1,668 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+
+# vs0 - vs15 : buffer for xor
+# vs32 - vs47 (v0 - v15) : 4 "converted" states
+# vs48 - vs51 (v16 - v19) : original state
+# vs52 - vs55 (v20 - v23) : "converted" constants
+# vs56 (v24) : "converted" counter
+# vs57 (v25) : increment for "converted" counter
+# vs60 - vs63 (v28 - v31) : constants for rotate left or vpermxor
+
+#define r0 0
+#define sp 1
+#define r2 2
+#define rSIZE 3
+#define rDST 4
+#define rSRC 5
+#define rKEY 6
+#define rNONCE 7
+#define rCNTR 8
+#define r9 9
+#define r10 10
+#define r11 11
+#define r12 12
+#define r13 13
+#define r14 14
+#define r15 15
+#define r16 16
+#define r17 17
+#define r18 18
+#define r19 19
+#define r20 20
+#define r21 21
+#define r22 22
+#define r23 23
+#define r24 24
+#define r25 25
+#define r26 26
+#define r27 27
+#define r28 28
+#define r29 29
+#define r30 30
+#define r31 31
+
+#define v0 0
+#define v1 1
+#define v2 2
+#define v3 3
+#define v4 4
+#define v5 5
+#define v6 6
+#define v7 7
+#define v8 8
+#define v9 9
+#define v10 10
+#define v11 11
+#define v12 12
+#define v13 13
+#define v14 14
+#define v15 15
+#define v16 16
+#define v17 17
+#define v18 18
+#define v19 19
+#define v20 20
+#define v21 21
+#define v22 22
+#define v23 23
+#define v24 24
+#define v25 25
+#define v26 26
+#define v27 27
+#define v28 28
+#define v29 29
+#define v30 30
+#define v31 31
+
+#define vs0 0
+#define vs1 1
+#define vs2 2
+#define vs3 3
+#define vs4 4
+#define vs5 5
+#define vs6 6
+#define vs7 7
+#define vs8 8
+#define vs9 9
+#define vs10 10
+#define vs11 11
+#define vs12 12
+#define vs13 13
+#define vs14 14
+#define vs15 15
+#define vs16 16
+#define vs17 17
+#define vs18 18
+#define vs19 19
+#define vs20 20
+#define vs21 21
+#define vs22 22
+#define vs23 23
+#define vs24 24
+#define vs25 25
+#define vs26 26
+#define vs27 27
+#define vs28 28
+#define vs29 29
+#define vs30 30
+#define vs31 31
+#define vs32 32
+#define vs33 33
+#define vs34 34
+#define vs35 35
+#define vs36 36
+#define vs37 37
+#define vs38 38
+#define vs39 39
+#define vs40 40
+#define vs41 41
+#define vs42 42
+#define vs43 43
+#define vs44 44
+#define vs45 45
+#define vs46 46
+#define vs47 47
+#define vs48 48
+#define vs49 49
+#define vs50 50
+#define vs51 51
+#define vs52 52
+#define vs53 53
+#define vs54 54
+#define vs55 55
+#define vs56 56
+#define vs57 57
+#define vs58 58
+#define vs59 59
+#define vs60 60
+#define vs61 61
+#define vs62 62
+#define vs63 63
+
+.abiversion 2
+.section ".data"
+.align 5
+lblock: .skip 256
+cnts0: .long 0x61707865, 0x3320646e, 0x79622d32, 0x6b206574
+cnts1: .long 0x61707865, 0x61707865, 0x61707865, 0x61707865
+cnts2: .long 0x3320646e, 0x3320646e, 0x3320646e, 0x3320646e
+cnts3: .long 0x79622d32, 0x79622d32, 0x79622d32, 0x79622d32
+cnts4: .long 0x6b206574, 0x6b206574, 0x6b206574, 0x6b206574
+st4: .long 0, 0, 0, 0
+cntr: .long 0, 0, 0, 0
+incr: .long 4, 4, 4, 4
+rotl1: .long 0x22330011, 0x66774455, 0xAABB8899, 0xEEFFCCDD
+rotl2: .long 12, 12, 12, 12
+rotl3: .long 0x11223300, 0x55667744, 0x99AABB88, 0xDDEEFFCC
+rotl4: .long 7, 7, 7, 7
+
+.section ".text"
+.align 5
+.globl chacha20vsx
+.type chacha20vsx, @function
+chacha20vsx:
+ # prologue
+ addis 2, r12, .TOC.-chacha20vsx@ha
+ addi 2, 2, .TOC.-chacha20vsx@l
+ .localentry chacha20vsx, .-chacha20vsx
+ std r14, -8(sp)
+ std r15, -16(sp)
+ std r16, -24(sp)
+ std r17, -32(sp)
+ std r18, -40(sp)
+ std r19, -48(sp)
+ std r20, -56(sp)
+ std r21, -64(sp)
+ std r22, -72(sp)
+ std r23, -80(sp)
+ std r24, -88(sp)
+ std r25, -96(sp)
+ std r26, -104(sp)
+ std r27, -112(sp)
+ std r28, -120(sp)
+ std r29, -128(sp)
+ std r30, -136(sp)
+ std r31, -144(sp)
+
+ addi r14, sp, -160
+
+ li r16, -16
+ li r17, -32
+ li r18, -48
+ li r19, -64
+ li r20, -80
+ li r21, -96
+ li r22, -112
+ li r23, -128
+ li r24, -144
+ li r25, -160
+ li r26, -176
+ li r27, -192
+ li r28, -208
+
+ # save f14, f15
+ stxvw4x vs14, 0, r14
+ stxvw4x vs15, r16, r14
+
+ # save v20 - v31
+ stxvw4x vs52, r17, r14
+ stxvw4x vs53, r18, r14
+ stxvw4x vs54, r19, r14
+ stxvw4x vs55, r20, r14
+ stxvw4x vs56, r21, r14
+ stxvw4x vs57, r22, r14
+ stxvw4x vs58, r23, r14
+ stxvw4x vs59, r24, r14
+ stxvw4x vs60, r25, r14
+ stxvw4x vs61, r26, r14
+ stxvw4x vs62, r27, r14
+ stxvw4x vs63, r28, r14
+
+ # offset in src/dst
+ li r17, 16
+ li r18, 32
+ li r19, 48
+ li r20, 64
+ li r21, 80
+ li r22, 96
+ li r23, 112
+ li r24, 128
+ li r25, 144
+ li r26, 160
+ li r27, 176
+ li r28, 192
+ li r29, 208
+ li r30, 224
+ li r31, 240
+
+ # load const's address
+ addis r14, 2, cnts0@toc@ha
+ addi r14, r14, cnts0@toc@l
+
+ # save nonce to st4
+ lwz r15, 0(rNONCE)
+ stw r15, 84(r14)
+ lwz r15, 4(rNONCE)
+ stw r15, 88(r14)
+ lwz r15, 8(rNONCE)
+ stw r15, 92(r14)
+
+ # load state to vectors
+ lxvw4x vs48, 0, r14
+ lxvw4x vs49, 0, rKEY
+ lxvw4x vs50, r17, rKEY
+ lxvw4x vs51, r21, r14
+
+ # load consts for x4 rounds
+ lxvw4x vs52, r17, r14
+ lxvw4x vs53, r18, r14
+ lxvw4x vs54, r19, r14
+ lxvw4x vs55, r20, r14
+
+ # counter
+ stw rCNTR, 96(r14)
+ addi rCNTR, rCNTR, 1
+ stw rCNTR, 100(r14)
+ addi rCNTR, rCNTR, 1
+ stw rCNTR, 104(r14)
+ addi rCNTR, rCNTR, 1
+ stw rCNTR, 108(r14)
+ lxvw4x vs56, r22, r14
+
+ # load increment
+ lxvw4x vs57, r23, r14
+
+ # load rotl to vectors
+ lxvw4x vs60, r24, r14
+ lxvw4x vs61, r25, r14
+ lxvw4x vs62, r26, r14
+ lxvw4x vs63, r27, r14
+
+ # counter for loop = size/256
+ li r15, 256
+ divdu. r16, rSIZE, r15
+ beq lastblock
+ mtctr r16
+
+mainloop:
+ # init 16 vectors (4 states x4)
+ vor v0, v20, v20
+ vor v1, v21, v21
+ vor v2, v22, v22
+ vor v3, v23, v23
+ vspltw v4, v17, v0
+ vspltw v5, v17, v1
+ vspltw v6, v17, v2
+ vspltw v7, v17, v3
+ vspltw v8, v18, v0
+ vspltw v9, v18, v1
+ vspltw v10, v18, v2
+ vspltw v11, v18, v3
+ vor v12, v24, v24
+ vspltw v13, v19, v1
+ vspltw v14, v19, v2
+ vspltw v15, v19, v3
+
+.macro _plus a b_y b_x
+ vadduwm \a, \a, \b_y*4+(\b_x)%4
+ vadduwm \a+1, \a+1, \b_y*4+(\b_x+1)%4
+ vadduwm \a+2, \a+2, \b_y*4+(\b_x+2)%4
+ vadduwm \a+3, \a+3, \b_y*4+(\b_x+3)%4
+.endm
+
+.macro _xor a b_y b_x
+ vxor \a, \a, \b_y*4+(\b_x)%4
+ vxor \a+1, \a+1, \b_y*4+(\b_x+1)%4
+ vxor \a+2, \a+2, \b_y*4+(\b_x+2)%4
+ vxor \a+3, \a+3, \b_y*4+(\b_x+3)%4
+.endm
+
+.macro _rotl a b
+ vrlw \a, \a, \b
+ vrlw \a+1, \a+1, \b
+ vrlw \a+2, \a+2, \b
+ vrlw \a+3, \a+3, \b
+.endm
+
+.macro _pxor a b_y b_x c
+ vpermxor \a, \a, \b_y*4+(\b_x)%4, \c
+ vpermxor \a+1, \a+1, \b_y*4+(\b_x+1)%4, \c
+ vpermxor \a+2, \a+2, \b_y*4+(\b_x+2)%4, \c
+ vpermxor \a+3, \a+3, \b_y*4+(\b_x+3)%4, \c
+.endm
+
+# 00 01 02 03
+# 04 05 06 07
+# 08 09 10 11
+# 12 13 14 15
+.macro doubleround
+ # column round
+ _plus v0, v1, v0 # a+=b
+ _pxor v12, v0, v0, v28 # d^=a; d<<<=16
+ _plus v8, v3, v0 # c+=d
+ _xor v4, v2, v0 # b^=c
+ _rotl v4, v29 # b<<<=12
+ _plus v0, v1, v0 # a+=b
+ _pxor v12, v0, v0, v30 # d^=a; d<<<=8
+ _plus v8, v3, v0 # c+=d
+ _xor v4, v2, v0 # b^=c
+ _rotl v4, v31 # b<<<=7
+
+ # diagonal round
+ _plus v0, v1, v1 # a+=b
+ _pxor v12, v0, v1, v28 # d^=a; d<<<=16
+ _plus v8, v3, v1 # c+=d
+ _xor v4, v2, v1 # b^=c
+ _rotl v4, v29 # b<<<=12
+ _plus v0, v1, v1 # a+=b
+ _pxor v12, v0, v1, v30 # d^=a; d<<<=8
+ _plus v8, v3, v1 # c+=d
+ _xor v4, v2, v1 # b^=c
+ _rotl v4, v31 # b<<<=7
+.endm
+
+ doubleround # 1
+ doubleround # 2
+ doubleround # 3
+ doubleround # 4
+ doubleround # 5
+ doubleround # 6
+ doubleround # 7
+ doubleround # 8
+ doubleround # 9
+ doubleround # 10
+
+ # counter += original counter
+ vadduwm v12, v12, v24
+
+.macro convert a
+ vmrgew 26, 0+\a, 1+\a
+ vmrgew 27, 2+\a, 3+\a
+ vmrgow 0+\a, 0+\a, 1+\a
+ vmrgow 2+\a, 2+\a, 3+\a
+ xxmrghd 33+\a, 32+\a, 34+\a
+ xxmrgld 35+\a, 32+\a, 34+\a
+ xxmrghd 32+\a, 58, 59
+ xxmrgld 34+\a, 58, 59
+.endm
+
+ convert 0
+ convert 4
+ convert 8
+ convert 12
+
+.macro addition a
+ vadduwm 0+\a, 0+\a, 16
+ vadduwm 4+\a, 4+\a, 17
+ vadduwm 8+\a, 8+\a, 18
+ vadduwm 12+\a, 12+\a, 19
+.endm
+
+ addition 0
+ addition 1
+ addition 2
+ addition 3
+
+ # load text/cipher
+ lxvw4x vs0, 0, rSRC
+ lxvw4x vs1, r17, rSRC
+ lxvw4x vs2, r18, rSRC
+ lxvw4x vs3, r19, rSRC
+ lxvw4x vs4, r20, rSRC
+ lxvw4x vs5, r21, rSRC
+ lxvw4x vs6, r22, rSRC
+ lxvw4x vs7, r23, rSRC
+ lxvw4x vs8, r24, rSRC
+ lxvw4x vs9, r25, rSRC
+ lxvw4x vs10, r26, rSRC
+ lxvw4x vs11, r27, rSRC
+ lxvw4x vs12, r28, rSRC
+ lxvw4x vs13, r29, rSRC
+ lxvw4x vs14, r30, rSRC
+ lxvw4x vs15, r31, rSRC
+ # xor (encrypt/decrypt)
+ xxlxor vs0, vs0, vs32
+ xxlxor vs1, vs1, vs36
+ xxlxor vs2, vs2, vs40
+ xxlxor vs3, vs3, vs44
+ xxlxor vs4, vs4, vs33
+ xxlxor vs5, vs5, vs37
+ xxlxor vs6, vs6, vs41
+ xxlxor vs7, vs7, vs45
+ xxlxor vs8, vs8, vs34
+ xxlxor vs9, vs9, vs38
+ xxlxor vs10, vs10, vs42
+ xxlxor vs11, vs11, vs46
+ xxlxor vs12, vs12, vs35
+ xxlxor vs13, vs13, vs39
+ xxlxor vs14, vs14, vs43
+ xxlxor vs15, vs15, vs47
+ # store cipher/text
+ stxvw4x vs0, 0, rDST
+ stxvw4x vs1, r17, rDST
+ stxvw4x vs2, r18, rDST
+ stxvw4x vs3, r19, rDST
+ stxvw4x vs4, r20, rDST
+ stxvw4x vs5, r21, rDST
+ stxvw4x vs6, r22, rDST
+ stxvw4x vs7, r23, rDST
+ stxvw4x vs8, r24, rDST
+ stxvw4x vs9, r25, rDST
+ stxvw4x vs10, r26, rDST
+ stxvw4x vs11, r27, rDST
+ stxvw4x vs12, r28, rDST
+ stxvw4x vs13, r29, rDST
+ stxvw4x vs14, r30, rDST
+ stxvw4x vs15, r31, rDST
+
+ # src/dst increment
+ addi rSRC, rSRC, 256
+ addi rDST, rDST, 256
+
+ # counter increment
+ vadduwm v24, v24, v25
+
+ bdnz mainloop
+
+lastblock:
+ # reminder
+ mulld r16, r16, r15
+ subf. r16, r16, rSIZE
+
+ # check reminder
+ beq exitsub
+
+ addi r14, r14, -256
+ # last block x4
+ # init 16 vectors (4 states x4)
+ vor v0, v20, v20
+ vor v1, v21, v21
+ vor v2, v22, v22
+ vor v3, v23, v23
+ vspltw v4, v17, v0
+ vspltw v5, v17, v1
+ vspltw v6, v17, v2
+ vspltw v7, v17, v3
+ vspltw v8, v18, v0
+ vspltw v9, v18, v1
+ vspltw v10, v18, v2
+ vspltw v11, v18, v3
+ vor v12, v24, v24
+ vspltw v13, v19, v1
+ vspltw v14, v19, v2
+ vspltw v15, v19, v3
+
+ doubleround # 1
+ doubleround # 2
+ doubleround # 3
+ doubleround # 4
+ doubleround # 5
+ doubleround # 6
+ doubleround # 7
+ doubleround # 8
+ doubleround # 9
+ doubleround # 10
+
+ vadduwm v12, v12, v24
+
+ convert 0
+ convert 4
+ convert 8
+ convert 12
+
+ addition 0
+ addition 1
+ addition 2
+ addition 3
+
+ # store vectors
+ stxvw4x vs32, 0, r14
+ stxvw4x vs36, r17, r14
+ stxvw4x vs40, r18, r14
+ stxvw4x vs44, r19, r14
+ stxvw4x vs33, r20, r14
+ stxvw4x vs37, r21, r14
+ stxvw4x vs41, r22, r14
+ stxvw4x vs45, r23, r14
+ stxvw4x vs34, r24, r14
+ stxvw4x vs38, r25, r14
+ stxvw4x vs42, r26, r14
+ stxvw4x vs46, r27, r14
+ stxvw4x vs35, r28, r14
+ stxvw4x vs39, r29, r14
+ stxvw4x vs43, r30, r14
+ stxvw4x vs47, r31, r14
+
+ mtctr r16
+ addi rSIZE, r14, -1
+ addi rSRC, rSRC, -1
+ addi rDST, rDST, -1
+xorlast:
+ lbzu r15, 1(rSIZE)
+ lbzu r16, 1(rSRC)
+ xor r15, r15, r16
+ stbu r15, 1(rDST)
+ bdnz xorlast
+
+ # zeroing last block
+ xxlxor vs0, vs0, vs0
+ stxvw4x vs0, 0, r14
+ stxvw4x vs0, r17, r14
+ stxvw4x vs0, r18, r14
+ stxvw4x vs0, r19, r14
+ stxvw4x vs0, r20, r14
+ stxvw4x vs0, r21, r14
+ stxvw4x vs0, r22, r14
+ stxvw4x vs0, r23, r14
+ stxvw4x vs0, r24, r14
+ stxvw4x vs0, r25, r14
+ stxvw4x vs0, r26, r14
+ stxvw4x vs0, r27, r14
+ stxvw4x vs0, r28, r14
+ stxvw4x vs0, r29, r14
+ stxvw4x vs0, r30, r14
+ stxvw4x vs0, r31, r14
+
+exitsub:
+ # zeroing volatile registers
+ xxlxor vs0, vs0, vs0
+ xxlxor vs1, vs1, vs1
+ xxlxor vs2, vs2, vs2
+ xxlxor vs3, vs3, vs3
+ xxlxor vs4, vs4, vs4
+ xxlxor vs5, vs5, vs5
+ xxlxor vs6, vs6, vs6
+ xxlxor vs7, vs7, vs7
+ xxlxor vs8, vs8, vs8
+ xxlxor vs9, vs9, vs9
+ xxlxor vs10, vs10, vs10
+ xxlxor vs11, vs11, vs11
+ xxlxor vs12, vs12, vs12
+ xxlxor vs13, vs13, vs13
+
+ xxlxor vs32, vs32, vs32
+ xxlxor vs33, vs33, vs33
+ xxlxor vs34, vs34, vs34
+ xxlxor vs35, vs35, vs35
+ xxlxor vs36, vs36, vs36
+ xxlxor vs37, vs37, vs37
+ xxlxor vs38, vs38, vs38
+ xxlxor vs39, vs39, vs39
+ xxlxor vs40, vs40, vs40
+ xxlxor vs41, vs41, vs41
+ xxlxor vs42, vs42, vs42
+ xxlxor vs43, vs43, vs43
+ xxlxor vs44, vs44, vs44
+ xxlxor vs45, vs45, vs45
+ xxlxor vs46, vs46, vs46
+ xxlxor vs47, vs47, vs47
+ xxlxor vs48, vs48, vs48
+ xxlxor vs49, vs49, vs49
+ xxlxor vs50, vs50, vs50
+ xxlxor vs51, vs51, vs51
+
+ li rSIZE, 0
+ li rDST, 0
+ li rSRC, 0
+ li rKEY, 0
+ li rNONCE, 0
+ li rCNTR, 0
+
+ # epilogue
+ addi r14, sp, -160
+
+ li r16, -16
+ li r17, -32
+ li r18, -48
+ li r19, -64
+ li r20, -80
+ li r21, -96
+ li r22, -112
+ li r23, -128
+ li r24, -144
+ li r25, -160
+ li r26, -176
+ li r27, -192
+ li r28, -208
+
+ # load f14, f15
+ lxvw4x vs14, 0, r14
+ lxvw4x vs15, r16, r14
+
+ # load v20 - v31
+ lxvw4x vs52, r17, r14
+ lxvw4x vs53, r18, r14
+ lxvw4x vs54, r19, r14
+ lxvw4x vs55, r20, r14
+ lxvw4x vs56, r21, r14
+ lxvw4x vs57, r22, r14
+ lxvw4x vs58, r23, r14
+ lxvw4x vs59, r24, r14
+ lxvw4x vs60, r25, r14
+ lxvw4x vs61, r26, r14
+ lxvw4x vs62, r27, r14
+ lxvw4x vs63, r28, r14
+
+ ld r14, -8(sp)
+ ld r15, -16(sp)
+ ld r16, -24(sp)
+ ld r17, -32(sp)
+ ld r18, -40(sp)
+ ld r19, -48(sp)
+ ld r20, -56(sp)
+ ld r21, -64(sp)
+ ld r22, -72(sp)
+ ld r23, -80(sp)
+ ld r24, -88(sp)
+ ld r25, -96(sp)
+ ld r26, -104(sp)
+ ld r27, -112(sp)
+ ld r28, -120(sp)
+ ld r29, -128(sp)
+ ld r30, -136(sp)
+ ld r31, -144(sp)
+
+ blr
diff --git a/libs/nss/src/lib/freebl/chacha20poly1305-ppc.c b/libs/nss/src/lib/freebl/chacha20poly1305-ppc.c
new file mode 100644
index 000000000..c9766cd40
--- /dev/null
+++ b/libs/nss/src/lib/freebl/chacha20poly1305-ppc.c
@@ -0,0 +1,588 @@
+/* MIT License
+ *
+ * Copyright (c) 2016-2020 INRIA, CMU and Microsoft Corporation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#include "Hacl_Chacha20Poly1305_32.h"
+
+/* Forward declaration from chacha20-ppc64le.S */
+void chacha20vsx(uint32_t len, uint8_t *output, uint8_t *block, uint8_t *k,
+ uint8_t *nonce, uint32_t ctr);
+
+static inline void
+poly1305_padded_32(uint64_t *ctx, uint32_t len, uint8_t *text)
+{
+ uint32_t n = len / (uint32_t)16U;
+ uint32_t r = len % (uint32_t)16U;
+ uint8_t *blocks = text;
+ uint8_t *rem = text + n * (uint32_t)16U;
+ uint64_t *pre0 = ctx + (uint32_t)5U;
+ uint64_t *acc0 = ctx;
+ uint32_t nb = n * (uint32_t)16U / (uint32_t)16U;
+ uint32_t rem1 = n * (uint32_t)16U % (uint32_t)16U;
+ for (uint32_t i = (uint32_t)0U; i < nb; i++) {
+ uint8_t *block = blocks + i * (uint32_t)16U;
+ uint64_t e[5U] = { 0U };
+ uint64_t u0 = load64_le(block);
+ uint64_t lo = u0;
+ uint64_t u = load64_le(block + (uint32_t)8U);
+ uint64_t hi = u;
+ uint64_t f0 = lo;
+ uint64_t f1 = hi;
+ uint64_t f010 = f0 & (uint64_t)0x3ffffffU;
+ uint64_t f110 = f0 >> (uint32_t)26U & (uint64_t)0x3ffffffU;
+ uint64_t f20 = f0 >> (uint32_t)52U | (f1 & (uint64_t)0x3fffU) << (uint32_t)12U;
+ uint64_t f30 = f1 >> (uint32_t)14U & (uint64_t)0x3ffffffU;
+ uint64_t f40 = f1 >> (uint32_t)40U;
+ uint64_t f01 = f010;
+ uint64_t f111 = f110;
+ uint64_t f2 = f20;
+ uint64_t f3 = f30;
+ uint64_t f41 = f40;
+ e[0U] = f01;
+ e[1U] = f111;
+ e[2U] = f2;
+ e[3U] = f3;
+ e[4U] = f41;
+ uint64_t b = (uint64_t)0x1000000U;
+ uint64_t mask = b;
+ uint64_t f4 = e[4U];
+ e[4U] = f4 | mask;
+ uint64_t *r1 = pre0;
+ uint64_t *r5 = pre0 + (uint32_t)5U;
+ uint64_t r0 = r1[0U];
+ uint64_t r11 = r1[1U];
+ uint64_t r2 = r1[2U];
+ uint64_t r3 = r1[3U];
+ uint64_t r4 = r1[4U];
+ uint64_t r51 = r5[1U];
+ uint64_t r52 = r5[2U];
+ uint64_t r53 = r5[3U];
+ uint64_t r54 = r5[4U];
+ uint64_t f10 = e[0U];
+ uint64_t f11 = e[1U];
+ uint64_t f12 = e[2U];
+ uint64_t f13 = e[3U];
+ uint64_t f14 = e[4U];
+ uint64_t a0 = acc0[0U];
+ uint64_t a1 = acc0[1U];
+ uint64_t a2 = acc0[2U];
+ uint64_t a3 = acc0[3U];
+ uint64_t a4 = acc0[4U];
+ uint64_t a01 = a0 + f10;
+ uint64_t a11 = a1 + f11;
+ uint64_t a21 = a2 + f12;
+ uint64_t a31 = a3 + f13;
+ uint64_t a41 = a4 + f14;
+ uint64_t a02 = r0 * a01;
+ uint64_t a12 = r11 * a01;
+ uint64_t a22 = r2 * a01;
+ uint64_t a32 = r3 * a01;
+ uint64_t a42 = r4 * a01;
+ uint64_t a03 = a02 + r54 * a11;
+ uint64_t a13 = a12 + r0 * a11;
+ uint64_t a23 = a22 + r11 * a11;
+ uint64_t a33 = a32 + r2 * a11;
+ uint64_t a43 = a42 + r3 * a11;
+ uint64_t a04 = a03 + r53 * a21;
+ uint64_t a14 = a13 + r54 * a21;
+ uint64_t a24 = a23 + r0 * a21;
+ uint64_t a34 = a33 + r11 * a21;
+ uint64_t a44 = a43 + r2 * a21;
+ uint64_t a05 = a04 + r52 * a31;
+ uint64_t a15 = a14 + r53 * a31;
+ uint64_t a25 = a24 + r54 * a31;
+ uint64_t a35 = a34 + r0 * a31;
+ uint64_t a45 = a44 + r11 * a31;
+ uint64_t a06 = a05 + r51 * a41;
+ uint64_t a16 = a15 + r52 * a41;
+ uint64_t a26 = a25 + r53 * a41;
+ uint64_t a36 = a35 + r54 * a41;
+ uint64_t a46 = a45 + r0 * a41;
+ uint64_t t0 = a06;
+ uint64_t t1 = a16;
+ uint64_t t2 = a26;
+ uint64_t t3 = a36;
+ uint64_t t4 = a46;
+ uint64_t mask26 = (uint64_t)0x3ffffffU;
+ uint64_t z0 = t0 >> (uint32_t)26U;
+ uint64_t z1 = t3 >> (uint32_t)26U;
+ uint64_t x0 = t0 & mask26;
+ uint64_t x3 = t3 & mask26;
+ uint64_t x1 = t1 + z0;
+ uint64_t x4 = t4 + z1;
+ uint64_t z01 = x1 >> (uint32_t)26U;
+ uint64_t z11 = x4 >> (uint32_t)26U;
+ uint64_t t = z11 << (uint32_t)2U;
+ uint64_t z12 = z11 + t;
+ uint64_t x11 = x1 & mask26;
+ uint64_t x41 = x4 & mask26;
+ uint64_t x2 = t2 + z01;
+ uint64_t x01 = x0 + z12;
+ uint64_t z02 = x2 >> (uint32_t)26U;
+ uint64_t z13 = x01 >> (uint32_t)26U;
+ uint64_t x21 = x2 & mask26;
+ uint64_t x02 = x01 & mask26;
+ uint64_t x31 = x3 + z02;
+ uint64_t x12 = x11 + z13;
+ uint64_t z03 = x31 >> (uint32_t)26U;
+ uint64_t x32 = x31 & mask26;
+ uint64_t x42 = x41 + z03;
+ uint64_t o0 = x02;
+ uint64_t o1 = x12;
+ uint64_t o2 = x21;
+ uint64_t o3 = x32;
+ uint64_t o4 = x42;
+ acc0[0U] = o0;
+ acc0[1U] = o1;
+ acc0[2U] = o2;
+ acc0[3U] = o3;
+ acc0[4U] = o4;
+ }
+ if (rem1 > (uint32_t)0U) {
+ uint8_t *last = blocks + nb * (uint32_t)16U;
+ uint64_t e[5U] = { 0U };
+ uint8_t tmp[16U] = { 0U };
+ memcpy(tmp, last, rem1 * sizeof(last[0U]));
+ uint64_t u0 = load64_le(tmp);
+ uint64_t lo = u0;
+ uint64_t u = load64_le(tmp + (uint32_t)8U);
+ uint64_t hi = u;
+ uint64_t f0 = lo;
+ uint64_t f1 = hi;
+ uint64_t f010 = f0 & (uint64_t)0x3ffffffU;
+ uint64_t f110 = f0 >> (uint32_t)26U & (uint64_t)0x3ffffffU;
+ uint64_t f20 = f0 >> (uint32_t)52U | (f1 & (uint64_t)0x3fffU) << (uint32_t)12U;
+ uint64_t f30 = f1 >> (uint32_t)14U & (uint64_t)0x3ffffffU;
+ uint64_t f40 = f1 >> (uint32_t)40U;
+ uint64_t f01 = f010;
+ uint64_t f111 = f110;
+ uint64_t f2 = f20;
+ uint64_t f3 = f30;
+ uint64_t f4 = f40;
+ e[0U] = f01;
+ e[1U] = f111;
+ e[2U] = f2;
+ e[3U] = f3;
+ e[4U] = f4;
+ uint64_t b = (uint64_t)1U << rem1 * (uint32_t)8U % (uint32_t)26U;
+ uint64_t mask = b;
+ uint64_t fi = e[rem1 * (uint32_t)8U / (uint32_t)26U];
+ e[rem1 * (uint32_t)8U / (uint32_t)26U] = fi | mask;
+ uint64_t *r1 = pre0;
+ uint64_t *r5 = pre0 + (uint32_t)5U;
+ uint64_t r0 = r1[0U];
+ uint64_t r11 = r1[1U];
+ uint64_t r2 = r1[2U];
+ uint64_t r3 = r1[3U];
+ uint64_t r4 = r1[4U];
+ uint64_t r51 = r5[1U];
+ uint64_t r52 = r5[2U];
+ uint64_t r53 = r5[3U];
+ uint64_t r54 = r5[4U];
+ uint64_t f10 = e[0U];
+ uint64_t f11 = e[1U];
+ uint64_t f12 = e[2U];
+ uint64_t f13 = e[3U];
+ uint64_t f14 = e[4U];
+ uint64_t a0 = acc0[0U];
+ uint64_t a1 = acc0[1U];
+ uint64_t a2 = acc0[2U];
+ uint64_t a3 = acc0[3U];
+ uint64_t a4 = acc0[4U];
+ uint64_t a01 = a0 + f10;
+ uint64_t a11 = a1 + f11;
+ uint64_t a21 = a2 + f12;
+ uint64_t a31 = a3 + f13;
+ uint64_t a41 = a4 + f14;
+ uint64_t a02 = r0 * a01;
+ uint64_t a12 = r11 * a01;
+ uint64_t a22 = r2 * a01;
+ uint64_t a32 = r3 * a01;
+ uint64_t a42 = r4 * a01;
+ uint64_t a03 = a02 + r54 * a11;
+ uint64_t a13 = a12 + r0 * a11;
+ uint64_t a23 = a22 + r11 * a11;
+ uint64_t a33 = a32 + r2 * a11;
+ uint64_t a43 = a42 + r3 * a11;
+ uint64_t a04 = a03 + r53 * a21;
+ uint64_t a14 = a13 + r54 * a21;
+ uint64_t a24 = a23 + r0 * a21;
+ uint64_t a34 = a33 + r11 * a21;
+ uint64_t a44 = a43 + r2 * a21;
+ uint64_t a05 = a04 + r52 * a31;
+ uint64_t a15 = a14 + r53 * a31;
+ uint64_t a25 = a24 + r54 * a31;
+ uint64_t a35 = a34 + r0 * a31;
+ uint64_t a45 = a44 + r11 * a31;
+ uint64_t a06 = a05 + r51 * a41;
+ uint64_t a16 = a15 + r52 * a41;
+ uint64_t a26 = a25 + r53 * a41;
+ uint64_t a36 = a35 + r54 * a41;
+ uint64_t a46 = a45 + r0 * a41;
+ uint64_t t0 = a06;
+ uint64_t t1 = a16;
+ uint64_t t2 = a26;
+ uint64_t t3 = a36;
+ uint64_t t4 = a46;
+ uint64_t mask26 = (uint64_t)0x3ffffffU;
+ uint64_t z0 = t0 >> (uint32_t)26U;
+ uint64_t z1 = t3 >> (uint32_t)26U;
+ uint64_t x0 = t0 & mask26;
+ uint64_t x3 = t3 & mask26;
+ uint64_t x1 = t1 + z0;
+ uint64_t x4 = t4 + z1;
+ uint64_t z01 = x1 >> (uint32_t)26U;
+ uint64_t z11 = x4 >> (uint32_t)26U;
+ uint64_t t = z11 << (uint32_t)2U;
+ uint64_t z12 = z11 + t;
+ uint64_t x11 = x1 & mask26;
+ uint64_t x41 = x4 & mask26;
+ uint64_t x2 = t2 + z01;
+ uint64_t x01 = x0 + z12;
+ uint64_t z02 = x2 >> (uint32_t)26U;
+ uint64_t z13 = x01 >> (uint32_t)26U;
+ uint64_t x21 = x2 & mask26;
+ uint64_t x02 = x01 & mask26;
+ uint64_t x31 = x3 + z02;
+ uint64_t x12 = x11 + z13;
+ uint64_t z03 = x31 >> (uint32_t)26U;
+ uint64_t x32 = x31 & mask26;
+ uint64_t x42 = x41 + z03;
+ uint64_t o0 = x02;
+ uint64_t o1 = x12;
+ uint64_t o2 = x21;
+ uint64_t o3 = x32;
+ uint64_t o4 = x42;
+ acc0[0U] = o0;
+ acc0[1U] = o1;
+ acc0[2U] = o2;
+ acc0[3U] = o3;
+ acc0[4U] = o4;
+ }
+ uint8_t tmp[16U] = { 0U };
+ memcpy(tmp, rem, r * sizeof(rem[0U]));
+ if (r > (uint32_t)0U) {
+ uint64_t *pre = ctx + (uint32_t)5U;
+ uint64_t *acc = ctx;
+ uint64_t e[5U] = { 0U };
+ uint64_t u0 = load64_le(tmp);
+ uint64_t lo = u0;
+ uint64_t u = load64_le(tmp + (uint32_t)8U);
+ uint64_t hi = u;
+ uint64_t f0 = lo;
+ uint64_t f1 = hi;
+ uint64_t f010 = f0 & (uint64_t)0x3ffffffU;
+ uint64_t f110 = f0 >> (uint32_t)26U & (uint64_t)0x3ffffffU;
+ uint64_t f20 = f0 >> (uint32_t)52U | (f1 & (uint64_t)0x3fffU) << (uint32_t)12U;
+ uint64_t f30 = f1 >> (uint32_t)14U & (uint64_t)0x3ffffffU;
+ uint64_t f40 = f1 >> (uint32_t)40U;
+ uint64_t f01 = f010;
+ uint64_t f111 = f110;
+ uint64_t f2 = f20;
+ uint64_t f3 = f30;
+ uint64_t f41 = f40;
+ e[0U] = f01;
+ e[1U] = f111;
+ e[2U] = f2;
+ e[3U] = f3;
+ e[4U] = f41;
+ uint64_t b = (uint64_t)0x1000000U;
+ uint64_t mask = b;
+ uint64_t f4 = e[4U];
+ e[4U] = f4 | mask;
+ uint64_t *r1 = pre;
+ uint64_t *r5 = pre + (uint32_t)5U;
+ uint64_t r0 = r1[0U];
+ uint64_t r11 = r1[1U];
+ uint64_t r2 = r1[2U];
+ uint64_t r3 = r1[3U];
+ uint64_t r4 = r1[4U];
+ uint64_t r51 = r5[1U];
+ uint64_t r52 = r5[2U];
+ uint64_t r53 = r5[3U];
+ uint64_t r54 = r5[4U];
+ uint64_t f10 = e[0U];
+ uint64_t f11 = e[1U];
+ uint64_t f12 = e[2U];
+ uint64_t f13 = e[3U];
+ uint64_t f14 = e[4U];
+ uint64_t a0 = acc[0U];
+ uint64_t a1 = acc[1U];
+ uint64_t a2 = acc[2U];
+ uint64_t a3 = acc[3U];
+ uint64_t a4 = acc[4U];
+ uint64_t a01 = a0 + f10;
+ uint64_t a11 = a1 + f11;
+ uint64_t a21 = a2 + f12;
+ uint64_t a31 = a3 + f13;
+ uint64_t a41 = a4 + f14;
+ uint64_t a02 = r0 * a01;
+ uint64_t a12 = r11 * a01;
+ uint64_t a22 = r2 * a01;
+ uint64_t a32 = r3 * a01;
+ uint64_t a42 = r4 * a01;
+ uint64_t a03 = a02 + r54 * a11;
+ uint64_t a13 = a12 + r0 * a11;
+ uint64_t a23 = a22 + r11 * a11;
+ uint64_t a33 = a32 + r2 * a11;
+ uint64_t a43 = a42 + r3 * a11;
+ uint64_t a04 = a03 + r53 * a21;
+ uint64_t a14 = a13 + r54 * a21;
+ uint64_t a24 = a23 + r0 * a21;
+ uint64_t a34 = a33 + r11 * a21;
+ uint64_t a44 = a43 + r2 * a21;
+ uint64_t a05 = a04 + r52 * a31;
+ uint64_t a15 = a14 + r53 * a31;
+ uint64_t a25 = a24 + r54 * a31;
+ uint64_t a35 = a34 + r0 * a31;
+ uint64_t a45 = a44 + r11 * a31;
+ uint64_t a06 = a05 + r51 * a41;
+ uint64_t a16 = a15 + r52 * a41;
+ uint64_t a26 = a25 + r53 * a41;
+ uint64_t a36 = a35 + r54 * a41;
+ uint64_t a46 = a45 + r0 * a41;
+ uint64_t t0 = a06;
+ uint64_t t1 = a16;
+ uint64_t t2 = a26;
+ uint64_t t3 = a36;
+ uint64_t t4 = a46;
+ uint64_t mask26 = (uint64_t)0x3ffffffU;
+ uint64_t z0 = t0 >> (uint32_t)26U;
+ uint64_t z1 = t3 >> (uint32_t)26U;
+ uint64_t x0 = t0 & mask26;
+ uint64_t x3 = t3 & mask26;
+ uint64_t x1 = t1 + z0;
+ uint64_t x4 = t4 + z1;
+ uint64_t z01 = x1 >> (uint32_t)26U;
+ uint64_t z11 = x4 >> (uint32_t)26U;
+ uint64_t t = z11 << (uint32_t)2U;
+ uint64_t z12 = z11 + t;
+ uint64_t x11 = x1 & mask26;
+ uint64_t x41 = x4 & mask26;
+ uint64_t x2 = t2 + z01;
+ uint64_t x01 = x0 + z12;
+ uint64_t z02 = x2 >> (uint32_t)26U;
+ uint64_t z13 = x01 >> (uint32_t)26U;
+ uint64_t x21 = x2 & mask26;
+ uint64_t x02 = x01 & mask26;
+ uint64_t x31 = x3 + z02;
+ uint64_t x12 = x11 + z13;
+ uint64_t z03 = x31 >> (uint32_t)26U;
+ uint64_t x32 = x31 & mask26;
+ uint64_t x42 = x41 + z03;
+ uint64_t o0 = x02;
+ uint64_t o1 = x12;
+ uint64_t o2 = x21;
+ uint64_t o3 = x32;
+ uint64_t o4 = x42;
+ acc[0U] = o0;
+ acc[1U] = o1;
+ acc[2U] = o2;
+ acc[3U] = o3;
+ acc[4U] = o4;
+ return;
+ }
+}
+
+static inline void
+poly1305_do_32(
+ uint8_t *k,
+ uint32_t aadlen,
+ uint8_t *aad,
+ uint32_t mlen,
+ uint8_t *m,
+ uint8_t *out)
+{
+ uint64_t ctx[25U] = { 0U };
+ uint8_t block[16U] = { 0U };
+ Hacl_Poly1305_32_poly1305_init(ctx, k);
+ poly1305_padded_32(ctx, aadlen, aad);
+ poly1305_padded_32(ctx, mlen, m);
+ store64_le(block, (uint64_t)aadlen);
+ store64_le(block + (uint32_t)8U, (uint64_t)mlen);
+ uint64_t *pre = ctx + (uint32_t)5U;
+ uint64_t *acc = ctx;
+ uint64_t e[5U] = { 0U };
+ uint64_t u0 = load64_le(block);
+ uint64_t lo = u0;
+ uint64_t u = load64_le(block + (uint32_t)8U);
+ uint64_t hi = u;
+ uint64_t f0 = lo;
+ uint64_t f1 = hi;
+ uint64_t f010 = f0 & (uint64_t)0x3ffffffU;
+ uint64_t f110 = f0 >> (uint32_t)26U & (uint64_t)0x3ffffffU;
+ uint64_t f20 = f0 >> (uint32_t)52U | (f1 & (uint64_t)0x3fffU) << (uint32_t)12U;
+ uint64_t f30 = f1 >> (uint32_t)14U & (uint64_t)0x3ffffffU;
+ uint64_t f40 = f1 >> (uint32_t)40U;
+ uint64_t f01 = f010;
+ uint64_t f111 = f110;
+ uint64_t f2 = f20;
+ uint64_t f3 = f30;
+ uint64_t f41 = f40;
+ e[0U] = f01;
+ e[1U] = f111;
+ e[2U] = f2;
+ e[3U] = f3;
+ e[4U] = f41;
+ uint64_t b = (uint64_t)0x1000000U;
+ uint64_t mask = b;
+ uint64_t f4 = e[4U];
+ e[4U] = f4 | mask;
+ uint64_t *r = pre;
+ uint64_t *r5 = pre + (uint32_t)5U;
+ uint64_t r0 = r[0U];
+ uint64_t r1 = r[1U];
+ uint64_t r2 = r[2U];
+ uint64_t r3 = r[3U];
+ uint64_t r4 = r[4U];
+ uint64_t r51 = r5[1U];
+ uint64_t r52 = r5[2U];
+ uint64_t r53 = r5[3U];
+ uint64_t r54 = r5[4U];
+ uint64_t f10 = e[0U];
+ uint64_t f11 = e[1U];
+ uint64_t f12 = e[2U];
+ uint64_t f13 = e[3U];
+ uint64_t f14 = e[4U];
+ uint64_t a0 = acc[0U];
+ uint64_t a1 = acc[1U];
+ uint64_t a2 = acc[2U];
+ uint64_t a3 = acc[3U];
+ uint64_t a4 = acc[4U];
+ uint64_t a01 = a0 + f10;
+ uint64_t a11 = a1 + f11;
+ uint64_t a21 = a2 + f12;
+ uint64_t a31 = a3 + f13;
+ uint64_t a41 = a4 + f14;
+ uint64_t a02 = r0 * a01;
+ uint64_t a12 = r1 * a01;
+ uint64_t a22 = r2 * a01;
+ uint64_t a32 = r3 * a01;
+ uint64_t a42 = r4 * a01;
+ uint64_t a03 = a02 + r54 * a11;
+ uint64_t a13 = a12 + r0 * a11;
+ uint64_t a23 = a22 + r1 * a11;
+ uint64_t a33 = a32 + r2 * a11;
+ uint64_t a43 = a42 + r3 * a11;
+ uint64_t a04 = a03 + r53 * a21;
+ uint64_t a14 = a13 + r54 * a21;
+ uint64_t a24 = a23 + r0 * a21;
+ uint64_t a34 = a33 + r1 * a21;
+ uint64_t a44 = a43 + r2 * a21;
+ uint64_t a05 = a04 + r52 * a31;
+ uint64_t a15 = a14 + r53 * a31;
+ uint64_t a25 = a24 + r54 * a31;
+ uint64_t a35 = a34 + r0 * a31;
+ uint64_t a45 = a44 + r1 * a31;
+ uint64_t a06 = a05 + r51 * a41;
+ uint64_t a16 = a15 + r52 * a41;
+ uint64_t a26 = a25 + r53 * a41;
+ uint64_t a36 = a35 + r54 * a41;
+ uint64_t a46 = a45 + r0 * a41;
+ uint64_t t0 = a06;
+ uint64_t t1 = a16;
+ uint64_t t2 = a26;
+ uint64_t t3 = a36;
+ uint64_t t4 = a46;
+ uint64_t mask26 = (uint64_t)0x3ffffffU;
+ uint64_t z0 = t0 >> (uint32_t)26U;
+ uint64_t z1 = t3 >> (uint32_t)26U;
+ uint64_t x0 = t0 & mask26;
+ uint64_t x3 = t3 & mask26;
+ uint64_t x1 = t1 + z0;
+ uint64_t x4 = t4 + z1;
+ uint64_t z01 = x1 >> (uint32_t)26U;
+ uint64_t z11 = x4 >> (uint32_t)26U;
+ uint64_t t = z11 << (uint32_t)2U;
+ uint64_t z12 = z11 + t;
+ uint64_t x11 = x1 & mask26;
+ uint64_t x41 = x4 & mask26;
+ uint64_t x2 = t2 + z01;
+ uint64_t x01 = x0 + z12;
+ uint64_t z02 = x2 >> (uint32_t)26U;
+ uint64_t z13 = x01 >> (uint32_t)26U;
+ uint64_t x21 = x2 & mask26;
+ uint64_t x02 = x01 & mask26;
+ uint64_t x31 = x3 + z02;
+ uint64_t x12 = x11 + z13;
+ uint64_t z03 = x31 >> (uint32_t)26U;
+ uint64_t x32 = x31 & mask26;
+ uint64_t x42 = x41 + z03;
+ uint64_t o0 = x02;
+ uint64_t o1 = x12;
+ uint64_t o2 = x21;
+ uint64_t o3 = x32;
+ uint64_t o4 = x42;
+ acc[0U] = o0;
+ acc[1U] = o1;
+ acc[2U] = o2;
+ acc[3U] = o3;
+ acc[4U] = o4;
+ Hacl_Poly1305_32_poly1305_finish(out, k, ctx);
+}
+
+void
+Chacha20Poly1305_vsx_aead_encrypt(
+ uint8_t *k,
+ uint8_t *n,
+ uint32_t aadlen,
+ uint8_t *aad,
+ uint32_t mlen,
+ uint8_t *m,
+ uint8_t *cipher,
+ uint8_t *mac)
+{
+ chacha20vsx(mlen, cipher, m, k, n, (uint32_t)1U);
+ uint8_t tmp[64U] = { 0U };
+ chacha20vsx((uint32_t)64U, tmp, tmp, k, n, (uint32_t)0U);
+ uint8_t *key = tmp;
+ poly1305_do_32(key, aadlen, aad, mlen, cipher, mac);
+}
+
+uint32_t
+Chacha20Poly1305_vsx_aead_decrypt(
+ uint8_t *k,
+ uint8_t *n,
+ uint32_t aadlen,
+ uint8_t *aad,
+ uint32_t mlen,
+ uint8_t *m,
+ uint8_t *cipher,
+ uint8_t *mac)
+{
+ uint8_t computed_mac[16U] = { 0U };
+ uint8_t tmp[64U] = { 0U };
+ chacha20vsx((uint32_t)64U, tmp, tmp, k, n, (uint32_t)0U);
+ uint8_t *key = tmp;
+ poly1305_do_32(key, aadlen, aad, mlen, cipher, computed_mac);
+ uint8_t res = (uint8_t)255U;
+ for (uint32_t i = (uint32_t)0U; i < (uint32_t)16U; i++) {
+ uint8_t uu____0 = FStar_UInt8_eq_mask(computed_mac[i], mac[i]);
+ res = uu____0 & res;
+ }
+ uint8_t z = res;
+ if (z == (uint8_t)255U) {
+ chacha20vsx(mlen, m, cipher, k, n, (uint32_t)1U);
+ return (uint32_t)0U;
+ }
+ return (uint32_t)1U;
+}
diff --git a/libs/nss/src/lib/freebl/chacha20poly1305.c b/libs/nss/src/lib/freebl/chacha20poly1305.c
index 5c294a9ea..cfb56fca6 100644
--- a/libs/nss/src/lib/freebl/chacha20poly1305.c
+++ b/libs/nss/src/lib/freebl/chacha20poly1305.c
@@ -69,6 +69,80 @@ Hacl_Chacha20Poly1305_32_aead_decrypt(uint8_t *k, uint8_t *n1, uint32_t aadlen,
uint8_t *aad, uint32_t mlen, uint8_t *m,
uint8_t *cipher, uint8_t *mac);
+// Forward declaration from chacha20-ppc64le.S
+void chacha20vsx(uint32_t len, uint8_t *output, uint8_t *block, uint8_t *k,
+ uint8_t *nonce, uint32_t ctr);
+
+// Forward declaration from chacha20poly1305-ppc.c
+extern void
+Chacha20Poly1305_vsx_aead_encrypt(uint8_t *k, uint8_t *n1, uint32_t aadlen,
+ uint8_t *aad, uint32_t mlen, uint8_t *m,
+ uint8_t *cipher, uint8_t *mac);
+extern uint32_t
+Chacha20Poly1305_vsx_aead_decrypt(uint8_t *k, uint8_t *n1, uint32_t aadlen,
+ uint8_t *aad, uint32_t mlen, uint8_t *m,
+ uint8_t *cipher, uint8_t *mac);
+
+SECStatus
+ChaCha20_InitContext(ChaCha20Context *ctx, const unsigned char *key,
+ unsigned int keyLen, const unsigned char *nonce,
+ unsigned int nonceLen, PRUint32 ctr)
+{
+#ifdef NSS_DISABLE_CHACHAPOLY
+ return SECFailure;
+#else
+ if (keyLen != 32) {
+ PORT_SetError(SEC_ERROR_BAD_KEY);
+ return SECFailure;
+ }
+ if (nonceLen != 12) {
+ PORT_SetError(SEC_ERROR_INVALID_ARGS);
+ return SECFailure;
+ }
+
+ ctx->counter = ctr;
+ PORT_Memcpy(ctx->key, key, sizeof(ctx->key));
+ PORT_Memcpy(ctx->nonce, nonce, sizeof(ctx->nonce));
+
+ return SECSuccess;
+#endif
+}
+
+ChaCha20Context *
+ChaCha20_CreateContext(const unsigned char *key, unsigned int keyLen,
+ const unsigned char *nonce, unsigned int nonceLen,
+ PRUint32 ctr)
+{
+#ifdef NSS_DISABLE_CHACHAPOLY
+ return NULL;
+#else
+ ChaCha20Context *ctx;
+
+ ctx = PORT_New(ChaCha20Context);
+ if (ctx == NULL) {
+ return NULL;
+ }
+
+ if (ChaCha20_InitContext(ctx, key, keyLen, nonce, nonceLen, ctr) != SECSuccess) {
+ PORT_Free(ctx);
+ ctx = NULL;
+ }
+
+ return ctx;
+#endif
+}
+
+void
+ChaCha20_DestroyContext(ChaCha20Context *ctx, PRBool freeit)
+{
+#ifndef NSS_DISABLE_CHACHAPOLY
+ PORT_Memset(ctx, 0, sizeof(*ctx));
+ if (freeit) {
+ PORT_Free(ctx);
+ }
+#endif
+}
+
SECStatus
ChaCha20Poly1305_InitContext(ChaCha20Poly1305Context *ctx,
const unsigned char *key, unsigned int keyLen,
@@ -144,6 +218,11 @@ ChaCha20Xor(uint8_t *output, uint8_t *block, uint32_t len, uint8_t *k,
}
#endif
} else
+#elif defined(__powerpc64__) && defined(__LITTLE_ENDIAN__) && \
+ !defined(NSS_DISABLE_ALTIVEC) && !defined(NSS_DISABLE_CRYPTO_VSX)
+ if (ppc_crypto_support()) {
+ chacha20vsx(len, output, block, k, nonce, ctr);
+ } else
#endif
{
Hacl_Chacha20_chacha20_encrypt(len, output, block, k, nonce, ctr);
@@ -212,6 +291,13 @@ ChaCha20Poly1305_Seal(const ChaCha20Poly1305Context *ctx, unsigned char *output,
}
#endif
} else
+#elif defined(__powerpc64__) && defined(__LITTLE_ENDIAN__) && \
+ !defined(NSS_DISABLE_ALTIVEC) && !defined(NSS_DISABLE_CRYPTO_VSX)
+ if (ppc_crypto_support()) {
+ Chacha20Poly1305_vsx_aead_encrypt(
+ (uint8_t *)ctx->key, (uint8_t *)nonce, adLen, (uint8_t *)ad, inputLen,
+ (uint8_t *)input, output, output + inputLen);
+ } else
#endif
{
Hacl_Chacha20Poly1305_32_aead_encrypt(
@@ -274,6 +360,13 @@ ChaCha20Poly1305_Open(const ChaCha20Poly1305Context *ctx, unsigned char *output,
}
#endif
} else
+#elif defined(__powerpc64__) && defined(__LITTLE_ENDIAN__) && \
+ !defined(NSS_DISABLE_ALTIVEC) && !defined(NSS_DISABLE_CRYPTO_VSX)
+ if (ppc_crypto_support()) {
+ res = Chacha20Poly1305_vsx_aead_decrypt(
+ (uint8_t *)ctx->key, (uint8_t *)nonce, adLen, (uint8_t *)ad, ciphertextLen,
+ (uint8_t *)output, (uint8_t *)input, (uint8_t *)input + ciphertextLen);
+ } else
#endif
{
res = Hacl_Chacha20Poly1305_32_aead_decrypt(
@@ -323,6 +416,13 @@ ChaCha20Poly1305_Encrypt(const ChaCha20Poly1305Context *ctx,
(uint8_t *)ctx->key, (uint8_t *)nonce, adLen, (uint8_t *)ad, inputLen,
(uint8_t *)input, output, outTag);
} else
+#elif defined(__powerpc64__) && defined(__LITTLE_ENDIAN__) && \
+ !defined(NSS_DISABLE_ALTIVEC) && !defined(NSS_DISABLE_CRYPTO_VSX)
+ if (ppc_crypto_support()) {
+ Chacha20Poly1305_vsx_aead_encrypt(
+ (uint8_t *)ctx->key, (uint8_t *)nonce, adLen, (uint8_t *)ad, inputLen,
+ (uint8_t *)input, output, outTag);
+ } else
#endif
{
Hacl_Chacha20Poly1305_32_aead_encrypt(
@@ -370,6 +470,13 @@ ChaCha20Poly1305_Decrypt(const ChaCha20Poly1305Context *ctx,
(uint8_t *)ctx->key, (uint8_t *)nonce, adLen, (uint8_t *)ad, ciphertextLen,
(uint8_t *)output, (uint8_t *)input, (uint8_t *)tagIn);
} else
+#elif defined(__powerpc64__) && defined(__LITTLE_ENDIAN__) && \
+ !defined(NSS_DISABLE_ALTIVEC) && !defined(NSS_DISABLE_CRYPTO_VSX)
+ if (ppc_crypto_support()) {
+ res = Chacha20Poly1305_vsx_aead_decrypt(
+ (uint8_t *)ctx->key, (uint8_t *)nonce, adLen, (uint8_t *)ad, ciphertextLen,
+ (uint8_t *)output, (uint8_t *)input, (uint8_t *)tagIn);
+ } else
#endif
{
res = Hacl_Chacha20Poly1305_32_aead_decrypt(
diff --git a/libs/nss/src/lib/freebl/chacha20poly1305.h b/libs/nss/src/lib/freebl/chacha20poly1305.h
index c77632aa1..fff528af3 100644
--- a/libs/nss/src/lib/freebl/chacha20poly1305.h
+++ b/libs/nss/src/lib/freebl/chacha20poly1305.h
@@ -12,4 +12,10 @@ struct ChaCha20Poly1305ContextStr {
unsigned char tagLen;
};
+struct ChaCha20ContextStr {
+ unsigned char key[32];
+ unsigned char nonce[12];
+ PRUint32 counter;
+};
+
#endif /* _CHACHA20_POLY1305_H_ */
diff --git a/libs/nss/src/lib/freebl/freebl.gyp b/libs/nss/src/lib/freebl/freebl.gyp
index 6578fac6a..865f89232 100644
--- a/libs/nss/src/lib/freebl/freebl.gyp
+++ b/libs/nss/src/lib/freebl/freebl.gyp
@@ -264,14 +264,25 @@
'dependencies': [
'<(DEPTH)/exports.gyp:nss_exports'
],
- 'cflags': [
- '-mcrypto',
- '-maltivec'
- ],
- 'cflags_mozilla': [
- '-mcrypto',
- '-maltivec'
- ],
+ 'conditions': [
+ [ 'disable_crypto_vsx==0', {
+ 'cflags': [
+ '-mcrypto',
+ '-maltivec'
+ ],
+ 'cflags_mozilla': [
+ '-mcrypto',
+ '-maltivec'
+ ],
+ }, 'disable_crypto_vsx==1', {
+ 'cflags': [
+ '-maltivec'
+ ],
+ 'cflags_mozilla': [
+ '-maltivec'
+ ],
+ }]
+ ]
},
{
'target_name': 'gcm-sha512-nodepend-ppc_c_lib',
@@ -282,20 +293,35 @@
'dependencies': [
'<(DEPTH)/exports.gyp:nss_exports'
],
- 'cflags': [
- '-mcrypto',
- '-maltivec',
- '-mvsx',
- '-funroll-loops',
- '-fpeel-loops',
- ],
- 'cflags_mozilla': [
- '-mcrypto',
- '-maltivec',
- '-mvsx',
- '-funroll-loops',
- '-fpeel-loops',
- ],
+ 'conditions': [
+ [ 'disable_crypto_vsx==0', {
+ 'cflags': [
+ '-mcrypto',
+ '-maltivec',
+ '-mvsx',
+ '-funroll-loops',
+ '-fpeel-loops'
+ ],
+ 'cflags_mozilla': [
+ '-mcrypto',
+ '-maltivec',
+ '-mvsx',
+ '-funroll-loops',
+ '-fpeel-loops'
+ ],
+ }, 'disable_crypto_vsx==1', {
+ 'cflags': [
+ '-maltivec',
+ '-funroll-loops',
+ '-fpeel-loops'
+ ],
+ 'cflags_mozilla': [
+ '-maltivec',
+ '-funroll-loops',
+ '-fpeel-loops'
+ ],
+ }]
+ ]
},
{
'target_name': 'gcm-sha512-ppc_c_lib',
@@ -306,25 +332,48 @@
'dependencies': [
'<(DEPTH)/exports.gyp:nss_exports'
],
- 'cflags': [
- '-mcrypto',
- '-maltivec',
- '-mvsx',
- '-funroll-loops',
- '-fpeel-loops',
- ],
- 'cflags_mozilla': [
- '-mcrypto',
- '-maltivec',
- '-mvsx',
- '-funroll-loops',
- '-fpeel-loops',
+ 'conditions': [
+ [ 'disable_crypto_vsx==0', {
+ 'cflags': [
+ '-mcrypto',
+ '-maltivec',
+ '-mvsx',
+ '-funroll-loops',
+ '-fpeel-loops'
+ ],
+ 'cflags_mozilla': [
+ '-mcrypto',
+ '-maltivec',
+ '-mvsx',
+ '-funroll-loops',
+ '-fpeel-loops'
+ ],
+ }, 'disable_crypto_vsx==1', {
+ 'cflags': [
+ '-maltivec',
+ '-funroll-loops',
+ '-fpeel-loops'
+ ],
+ 'cflags_mozilla': [
+ '-maltivec',
+ '-funroll-loops',
+ '-fpeel-loops'
+ ],
+ }]
],
'defines!': [
'FREEBL_NO_DEPEND',
],
},
{
+ 'target_name': 'chacha20-ppc_lib',
+ 'type': 'static_library',
+ 'sources': [
+ 'chacha20poly1305-ppc.c',
+ 'chacha20-ppc64le.S',
+ ]
+ },
+ {
'target_name': 'armv8_c_lib',
'type': 'static_library',
'sources': [
@@ -406,10 +455,17 @@
'gcm-aes-aarch64_c_lib',
],
}],
- [ 'disable_altivec==0 and (target_arch=="ppc64" or target_arch=="ppc64le")', {
+ [ 'disable_altivec==0 and target_arch=="ppc64"', {
+ 'dependencies': [
+ 'gcm-aes-ppc_c_lib',
+ 'gcm-sha512-ppc_c_lib',
+ ],
+ }],
+ [ 'disable_altivec==0 and target_arch=="ppc64le"', {
'dependencies': [
'gcm-aes-ppc_c_lib',
'gcm-sha512-ppc_c_lib',
+ 'chacha20-ppc_lib',
],
}],
[ 'disable_altivec==1 and (target_arch=="ppc64" or target_arch=="ppc64le")', {
@@ -417,6 +473,11 @@
'NSS_DISABLE_ALTIVEC',
],
}],
+ [ 'disable_crypto_vsx==1 and (target_arch=="ppc" or target_arch=="ppc64" or target_arch=="ppc64le")', {
+ 'defines!': [
+ 'NSS_DISABLE_CRYPTO_VSX',
+ ],
+ }],
[ 'OS=="linux"', {
'defines!': [
'FREEBL_NO_DEPEND',
@@ -485,6 +546,11 @@
'NSS_DISABLE_ALTIVEC',
],
}],
+ [ 'disable_crypto_vsx==1 and (target_arch=="ppc" or target_arch=="ppc64" or target_arch=="ppc64le")', {
+ 'defines!': [
+ 'NSS_DISABLE_CRYPTO_VSX',
+ ],
+ }],
[ 'OS!="linux"', {
'conditions': [
[ 'moz_fold_libs==0', {
diff --git a/libs/nss/src/lib/freebl/freebl_base.gypi b/libs/nss/src/lib/freebl/freebl_base.gypi
index 39ec14982..afbffac72 100644
--- a/libs/nss/src/lib/freebl/freebl_base.gypi
+++ b/libs/nss/src/lib/freebl/freebl_base.gypi
@@ -95,6 +95,12 @@
'mpi/mpi_arm.c',
],
}],
+ [ 'target_arch=="ppc64le"', {
+ 'sources': [
+ 'chacha20poly1305-ppc.c',
+ 'chacha20-ppc64le.S',
+ ],
+ }]
],
}],
[ 'OS=="win"', {
diff --git a/libs/nss/src/lib/freebl/ldvector.c b/libs/nss/src/lib/freebl/ldvector.c
index f14425f21..ac3b862b5 100644
--- a/libs/nss/src/lib/freebl/ldvector.c
+++ b/libs/nss/src/lib/freebl/ldvector.c
@@ -371,9 +371,14 @@ static const struct FREEBLVectorStr vector =
AESKeyWrap_DecryptKWP,
/* End of version 3.023 */
- KEA_PrimeCheck
+ KEA_PrimeCheck,
/* End of version 3.024 */
+ ChaCha20_InitContext,
+ ChaCha20_CreateContext,
+ ChaCha20_DestroyContext
+
+ /* End of version 3.025 */
};
const FREEBLVector*
diff --git a/libs/nss/src/lib/freebl/loader.c b/libs/nss/src/lib/freebl/loader.c
index 891516fa5..692a8831b 100644
--- a/libs/nss/src/lib/freebl/loader.c
+++ b/libs/nss/src/lib/freebl/loader.c
@@ -2159,6 +2159,36 @@ ChaCha20_Xor(unsigned char *output, const unsigned char *block, unsigned int len
}
SECStatus
+ChaCha20_InitContext(ChaCha20Context *ctx, const unsigned char *key,
+ unsigned int keyLen,
+ const unsigned char *nonce,
+ unsigned int nonceLen,
+ PRUint32 ctr)
+{
+ if (!vector && PR_SUCCESS != freebl_RunLoaderOnce())
+ return SECFailure;
+ return (vector->p_ChaCha20_InitContext)(ctx, key, keyLen, nonce, nonceLen, ctr);
+}
+
+ChaCha20Context *
+ChaCha20_CreateContext(const unsigned char *key, unsigned int keyLen,
+ const unsigned char *nonce, unsigned int nonceLen,
+ PRUint32 ctr)
+{
+ if (!vector && PR_SUCCESS != freebl_RunLoaderOnce())
+ return NULL;
+ return (vector->p_ChaCha20_CreateContext)(key, keyLen, nonce, nonceLen, ctr);
+}
+
+void
+ChaCha20_DestroyContext(ChaCha20Context *ctx, PRBool freeit)
+{
+ if (!vector && PR_SUCCESS != freebl_RunLoaderOnce())
+ return;
+ (vector->p_ChaCha20_DestroyContext)(ctx, freeit);
+}
+
+SECStatus
ChaCha20Poly1305_InitContext(ChaCha20Poly1305Context *ctx,
const unsigned char *key, unsigned int keyLen,
unsigned int tagLen)
diff --git a/libs/nss/src/lib/freebl/loader.h b/libs/nss/src/lib/freebl/loader.h
index 0b5ee5ef0..eb3046d27 100644
--- a/libs/nss/src/lib/freebl/loader.h
+++ b/libs/nss/src/lib/freebl/loader.h
@@ -10,7 +10,7 @@
#include "blapi.h"
-#define FREEBL_VERSION 0x0324
+#define FREEBL_VERSION 0x0325
struct FREEBLVectorStr {
@@ -815,6 +815,23 @@ struct FREEBLVectorStr {
PRBool (*p_KEA_PrimeCheck)(SECItem *prime);
/* Version 3.024 came to here */
+ SECStatus (*p_ChaCha20_InitContext)(ChaCha20Context *ctx,
+ const unsigned char *key,
+ unsigned int keyLen,
+ const unsigned char *nonce,
+ unsigned int nonceLen,
+ PRUint32 ctr);
+
+ ChaCha20Context *(*p_ChaCha20_CreateContext)(const unsigned char *key,
+ unsigned int keyLen,
+ const unsigned char *nonce,
+ unsigned int nonceLen,
+ PRUint32 ctr);
+
+ void (*p_ChaCha20_DestroyContext)(ChaCha20Context *ctx, PRBool freeit);
+
+ /* Version 3.025 came to here */
+
/* Add new function pointers at the end of this struct and bump
* FREEBL_VERSION at the beginning of this file. */
};
diff --git a/libs/nss/src/lib/nss/nss.h b/libs/nss/src/lib/nss/nss.h
index 08e9fc755..48f5003e1 100644
--- a/libs/nss/src/lib/nss/nss.h
+++ b/libs/nss/src/lib/nss/nss.h
@@ -22,10 +22,10 @@
* The format of the version string should be
* "<major version>.<minor version>[.<patch level>[.<build number>]][ <ECC>][ <Beta>]"
*/
-#define NSS_VERSION "3.63.1" _NSS_CUSTOMIZED
+#define NSS_VERSION "3.64" _NSS_CUSTOMIZED
#define NSS_VMAJOR 3
-#define NSS_VMINOR 63
-#define NSS_VPATCH 1
+#define NSS_VMINOR 64
+#define NSS_VPATCH 0
#define NSS_VBUILD 0
#define NSS_BETA PR_FALSE
diff --git a/libs/nss/src/lib/softoken/softkver.h b/libs/nss/src/lib/softoken/softkver.h
index 4656644f8..828267909 100644
--- a/libs/nss/src/lib/softoken/softkver.h
+++ b/libs/nss/src/lib/softoken/softkver.h
@@ -17,10 +17,10 @@
* The format of the version string should be
* "<major version>.<minor version>[.<patch level>[.<build number>]][ <ECC>][ <Beta>]"
*/
-#define SOFTOKEN_VERSION "3.63.1" SOFTOKEN_ECC_STRING
+#define SOFTOKEN_VERSION "3.64" SOFTOKEN_ECC_STRING
#define SOFTOKEN_VMAJOR 3
-#define SOFTOKEN_VMINOR 63
-#define SOFTOKEN_VPATCH 1
+#define SOFTOKEN_VMINOR 64
+#define SOFTOKEN_VPATCH 0
#define SOFTOKEN_VBUILD 0
#define SOFTOKEN_BETA PR_FALSE
diff --git a/libs/nss/src/lib/util/nssutil.h b/libs/nss/src/lib/util/nssutil.h
index 82abba82a..78e12a790 100644
--- a/libs/nss/src/lib/util/nssutil.h
+++ b/libs/nss/src/lib/util/nssutil.h
@@ -19,10 +19,10 @@
* The format of the version string should be
* "<major version>.<minor version>[.<patch level>[.<build number>]][ <Beta>]"
*/
-#define NSSUTIL_VERSION "3.63.1"
+#define NSSUTIL_VERSION "3.64"
#define NSSUTIL_VMAJOR 3
-#define NSSUTIL_VMINOR 63
-#define NSSUTIL_VPATCH 1
+#define NSSUTIL_VMINOR 64
+#define NSSUTIL_VPATCH 0
#define NSSUTIL_VBUILD 0
#define NSSUTIL_BETA PR_FALSE