The default bug view has changed. See this FAQ.

Verify the list of public header files in NSS 3.12

RESOLVED FIXED in 3.12

Status

NSS
Libraries
P1
normal
RESOLVED FIXED
10 years ago
9 years ago

People

(Reporter: kaie, Assigned: Alexei Volkov)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: NSS312B1)

Attachments

(2 attachments)

(Reporter)

Description

10 years ago
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
(Assignee)

Comment 3

10 years ago
Created attachment 288361 [details] [diff] [review]
move pkix header file into private export directory
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+
(Reporter)

Comment 5

10 years ago
What about the non-libpkix header files?
 sdb.h
 sftkdbt.h

Should they be private or public?
(Reporter)

Comment 6

10 years ago
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
(Reporter)

Comment 7

10 years ago
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.
(Assignee)

Comment 9

10 years ago
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

Comment 10

9 years ago
RE: comment 5.

sdb.h and sftkdbt.h should be nss private.

bob
(Reporter)

Comment 11

9 years ago
Created attachment 291262 [details] [diff] [review]
make sdb.h and sftkdbt.h private

Is this the right patch?
Attachment #291262 - Flags: review?(rrelyea)

Updated

9 years ago
Attachment #291262 - Flags: review?(rrelyea) → review+
(Reporter)

Comment 12

9 years ago
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
(Reporter)

Comment 13

9 years ago
fixed
Status: NEW → RESOLVED
Last Resolved: 9 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.

Comment 15

9 years ago
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.