Closed Bug 402773 Opened 17 years ago Closed 17 years ago

Verify the list of public header files in NSS 3.12

Categories

(NSS :: Libraries, defect, P1)

defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: KaiE, Assigned: alvolkov.bgs)

Details

(Whiteboard: NSS312B1)

Attachments

(2 files)

I compared the contents of mozilla/dist/public/nss between 3.11.x and 3.12 The NSS 3.12 build process places several new headers files into dist/public/nss: sdb.h sftkdbt.h pkix*.h (about 15-20 files) Should these files really be public? If the answer is "no", then we should not copy those files to dist/public/nss
Alexei, If I'm not mistaken, the pkix header files should all be private exports. Right? If so, Please fix it so that they are not exported as public files. Kai, Good catch!
Target Milestone: --- → 3.12
Definitely a NSS213Beta1 blocker. We can't be publishing private API headers.
Priority: -- → P1
Whiteboard: NSS312B1
Attachment #288361 - Flags: review?(nelson)
Comment on attachment 288361 [details] [diff] [review] move pkix header file into private export directory r=nelson
Attachment #288361 - Flags: review?(nelson) → review+
What about the non-libpkix header files? sdb.h sftkdbt.h Should they be private or public?
Did you look at the files actually contained in dist/public/nss ? Your patches addresses 14 files, but I see 16 files starting with "pkix" appearing in that directory. I compared the filenames and the ones not addressed by your patch are: pkix_comcertselparams.h pkix_certselector.h
Please ignore comment 6, you have addressed them So only my question from comment 5 is open.
I think Bob must answer the question in comment 5.
Committing attachment 288361 [details] [diff] [review]: /cvsroot/mozilla/security/nss/lib/libpkix/pkix/certsel/manifest.mn,v <-- manifest.mn new revision: 1.5; previous revision: 1.4 /cvsroot/mozilla/security/nss/lib/libpkix/include/manifest.mn,v <-- manifest.mn new revision: 1.4; previous revision: 1.3
Version: 3.12 → trunk
RE: comment 5. sdb.h and sftkdbt.h should be nss private. bob
Is this the right patch?
Attachment #291262 - Flags: review?(rrelyea)
Attachment #291262 - Flags: review?(rrelyea) → review+
Comment on attachment 291262 [details] [diff] [review] make sdb.h and sftkdbt.h private checked in this patch. /cvsroot/mozilla/security/nss/lib/softoken/manifest.mn,v <-- manifest.mn new revision: 1.34; previous revision: 1.33
fixed
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
Are sdb.h and sftkdbt.h included by any files outside of lib/softoken? If not, then they don't need to be exported at all. Only header files that exist in one directory but are included by files in another directory need to be exported either publicly or privately.
sdb.h and sftkdbt.h are included by files in lib/softoken/legacydb, which look like they're inside lib/softoken but are considered to be outside lib/softoken by our build system. This is why sdb.h and sftkdbt.h still need to be exported privately. It's reported in our newsgroup that stale copies of these headers are still in dist/public/nss in some Mozilla developer and tinderbox's long-lived build trees. I think it's less work to ask them to delete the dist/public/nss directories from those build trees, but if it becomes an issue, a patch for the Makefile in lib/softoken, lib/libpkix/pkix/certsel and lib/libpkix/include directories like this would work: Index: Makefile =================================================================== RCS file: /cvsroot/mozilla/security/nss/lib/softoken/Makefile,v retrieving revision 1.5 diff -u -r1.5 Makefile --- Makefile 25 Apr 2004 15:03:16 -0000 1.5 +++ Makefile 24 Feb 2008 02:18:55 -0000 @@ -93,3 +93,9 @@ endif endif endif + +# Remove headers that were formerly exported to dist/public/nss. +# Remove this makefile rule after NSS 3.12 ships. +export:: + rm -f $(PUBLIC_EXPORT_DIR)/sdb.h + rm -f $(PUBLIC_EXPORT_DIR)/sftkdbt.h
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: