Closed Bug 290345 Opened 20 years ago Closed 17 years ago

Changes in NSS's public interface between NSS_3_9_RTM and NSS_3_10_RTM

Categories

(NSS :: Libraries, defect, P2)

3.10
defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: wtc, Assigned: wtc)

Details

Attachments

(2 files)

This bug contains information on the changes in NSS's
public interface between NSS_3_9_RTM and NSS_3_10_RTM.

This information can be used to
1) verify that NSS 3.10 is backward compatible with
NSS 3.9; and
2) generate the What's New section in NSS 3.10's release
notes.

NSS's public interface consists of:
1. public exported header files;
2. *.def files for the shared libraries/DLLs;
3. pkg/solaris/SUNWtlsd/prototype

Before I attach the diffs in these files, I'll first
describe the new and removed header files.

1. Two new header files are added in NSS 3.10: pk11pub.h
and pk11priv.h, which contain the public and private
functions declared in the original pk11func.h header.
pk11func.h in NSS 3.10 simply includes pk11pub.h and
pk11priv.h.

2. Three headers are removed in NSS 3.10: secutil.h,
zconf.h, and zlib.h.  These headers are from NSS's
"cmd" directory and should not have been exported.
Note that the Solaris SUNWtlsd package never exported
these three headers.
Comment on attachment 180731 [details] [diff] [review]
Diffs in NSS's public interface between 3.9 and 3.10, excluding pk11func.h and license block changes

These are the diffs in NSS's public interface between
NSS_3_9_RTM and the NSS tip as of Wednesday 2005-04-13
afternoon, shortly after NSS_3_10_BETA3.

The changes to pk11func.h are excluded.

The license block in all NSS files changed in NSS 3.10
from MPL/GPL dual license to MPL/GPL/LGPL triple license.
These changes are omitted in this patch.

The diffs for mozilla/security/nss/pkg/solaris/SUNWtlds/prototype
are against NSS_3_9_3_RTM because that file isn't in NSS_3_9_RTM.
Attachment #180731 - Attachment description: Diffs in NSS' → Diffs in NSS's public interface between 3.9 and 3.10, excluding pk11func.h and license block changes
This patch is my best attempt to capture the diffs in
pk11func.h between NSS 3.9 and NSS 3.10.

I first took the diffs of pk11func.h, right before the
pk11wrap refactoring, against NSS_3_9_RTM.  Bob Relyea
said in his cvs commit comment:

  This patch should only have refactoring, no new
  functions or other changes.

Then I took the diffs of the new headers, pk11pub.h
and pk11priv.h, against their initial revisions.

So the sum of these diffs should represent the changes
in pk11func.h between NSS 3.9 and 3.10.
I went through all the changes to see if anything
may break backward compatibility.  They all look good.
I only found three structure definition changes that
may be problematic.  Please proofread my explanations
below why these three structure definition changes do
not break backward compatibility.

1. In certt.h, the CERTCertificateRequestStr structure,
the type of the "attributes" field changed from SECItem **
to CERTAttribute **.

This change is okay because the old type is wrong, so no
NSS clients may possibly be using that field.

2. In keythi.h, the SECKEYPrivateKeyStr structure,
a new field, PRUint32 staticflags, is added at the end
of the structure.

This change is okay because NSS clients do not create
this structure directly; this structure is only created
and returned to NSS clients by NSS

3. In secmodt.h, the SECMODModuleStr structure,
a new field, unsigned long evControlMask, is added at
the end of the structure.

This change is okay because NSS clients do not create
this structure directly; this structure is only created
and returned to NSS clients by NSS.
Status: NEW → ASSIGNED
QA Contact: bishakhabanerjee → jason.m.reid
QA Contact: jason.m.reid → libraries
3.10 was released a long time ago, and we don't know of any binary compatibility issue. Wan-Teh, please close this bug. It should probably be either WORKSFORME or FIXED (since although no changes were made, the changes were reviewed).
Priority: -- → P2
Target Milestone: --- → 3.10
Thank you, Julien.  As you noted, this bug was intended to
review all the changes in public headers in NSS 3.10 and
verify that none of them broke binary compatibility.
Status: ASSIGNED → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: