Closed
Bug 294538
Opened 20 years ago
Closed 9 years ago
unexported functions in NSS header files
Categories
(NSS :: Libraries, defect, P4)
Tracking
(Not tracked)
RESOLVED
WONTFIX
Future
People
(Reporter: jason.m.reid, Unassigned)
References
Details
The following CERT api functions in cert.h are not exported in a .def file.
CERT_CopyAVA NOT exported
CERT_CompareAVA NOT exported
CERT_DestroyRDN NOT exported
CERT_AddAVA NOT exported
CERT_CompareRDN NOT exported
CERT_KMIDPublicKey NOT exported
CERT_GetCertKeyType NOT exported
CERT_InitCertDB NOT exported
CERT_SetDefaultCertDB NOT exported
CERT_NameFromDERCert NOT exported
CERT_IssuerNameFromDERCert NOT exported
CERT_KeyFromDERCert NOT exported
CERT_KeyFromIssuerAndSN NOT exported
CERT_SerialNumberFromDERCert NOT exported
CERT_OpenVolatileCertDB NOT exported
CERT_DestroyCrl NOT exported
CERT_FindCertByKey NOT exported
CERT_FindCertByNameString NOT exported
CERT_FindCertByKeyID NOT exported
CERT_FindCertByEmailAddr NOT exported
CERT_FindCertBySPKDigest NOT exported
CERT_VerifyCertChain NOT exported
CERT_HTMLCertInfo NOT exported
CERT_GetCertificateEmailAddress NOT exported
CERT_ChangeCertTrustByUsage NOT exported
CERT_AddExtensionByOID NOT exported
CERT_FindNSStringExtension NOT exported
CERT_FindCertURLExtension NOT exported
CERT_FindAuthKeyIDExten NOT exported
CERT_FindInvalidDateExten NOT exported
CERT_FindCRLNumberExten NOT exported
CERT_CompareCerts NOT exported
CERT_CompareCertsForRedirection NOT exported
CERT_IsNewer NOT exported
CERT_IsCertRevoked NOT exported
CERT_FixupEmailAddr NOT exported
CERT_EncodeTrustString NOT exported
CERT_PrevSubjectCert NOT exported
CERT_NextSubjectCert NOT exported
CERT_SaveImportedCert NOT exported
CERT_AddNewCerts NOT exported
CERT_CertPackageType NOT exported
CERT_SetCAPolicyStringCallback NOT exported
CERT_GetCertCommentString NOT exported
CERT_GovtApprovedBitSet NOT exported
CERT_AddPermNickname NOT exported
CERT_FindCertByUsage NOT exported
CERT_MatchUserCert NOT exported
CERT_AddCertToListHead NOT exported
CERT_AddCertToListTailWithData NOT exported
CERT_AddCertToListHeadWithData NOT exported
CERT_AddCertToListSorted NOT exported
CERT_SortCBValidity NOT exported
CERT_CheckForEvilCert NOT exported
CERT_EncodeSubjectKeyID NOT exported
CERT_GetNickName NOT exported
CERT_CreateNicknameCertList NOT exported
CERT_CreateEmailAddrCertList NOT exported
CERT_CheckKeyUsage NOT exported
CERT_KeyUsageAndTypeForCertUsage NOT exported
CERT_TrustFlagsForCACertUsage NOT exported
CERT_ExtractNicknameString NOT exported
CERT_GetCertNicknameWithValidity NOT exported
CERT_FindMatchingCert NOT exported
CERT_LockDB NOT exported
CERT_UnlockDB NOT exported
CERT_GetStatusConfig NOT exported
CERT_SetStatusConfig NOT exported
CERT_LockCertRefCount NOT exported
CERT_UnlockCertRefCount NOT exported
CERT_LockCertTrust NOT exported
CERT_UnlockCertTrust NOT exported
CERT_SPKDigestValueForCert NOT exported
CERT_CheckCRL NOT exported
Updated•20 years ago
|
QA Contact: bishakhabanerjee → jason.m.reid
Updated•19 years ago
|
Assignee: wtchang → nobody
QA Contact: jason.m.reid → libraries
Comment 1•19 years ago
|
||
The following API calls in certdb.h are not found in a .def file.
SEC_FindCrlByKey NOT exported
SEC_CrlIsNewer NOT exported
SEC_CheckCrlTimes NOT exported
SEC_AddPermCertificate NOT exported
SEC_FindPermCertByKey NOT exported
SEC_FindPermCertByName NOT exported
SEC_OpenPermCertDB NOT exported
PCERT_TraversePermCerts NOT exported
SEC_AddTempNickname NOT exported
SEC_DeleteTempNickname NOT exported
SEC_CertDBKeyConflict NOT exported
SEC_GetCrlTimes NOT exported
SEC_AddPermCrlToTemp NOT exported
SEC_DeleteTempCrl NOT exported
SEC_CheckKRL NOT exported
SEC_CheckCRL NOT exported
SEC_CrlReplaceUrl NOT exported
The following api calls in cms.h are not found in a .def file.
NSS_CMSMessage_SetEncodingParams NOT exported
NSS_CMSMessage_GetArena NOT exported
NSS_CMSMessage_ContainsCertsOrCrls NOT exported
NSS_CMSMessage_IsContentEmpty NOT exported
NSS_CMSContentInfo_Destroy NOT exported
NSS_CMSContentInfo_GetChildContentInfo NOT exported
NSS_CMSContentInfo_GetInnerContent NOT exported
NSS_CMSContentInfo_GetContentTypeOID NOT exported
NSS_CMSContentInfo_SetContentEncAlgID NOT exported
NSS_CMSArray_SortByDER NOT exported
NSS_CMSUtil_DERCompare NOT exported
NSS_CMSAlgArray_GetIndexByAlgID NOT exported
NSS_CMSAlgArray_GetIndexByAlgTag NOT exported
NSS_CMSUtil_GetHashObjByAlgID NOT exported
NSS_CMSUtil_MakeSignatureAlgorithm NOT exported
NSS_CMSUtil_GetTemplateByTypeTag NOT exported
NSS_CMSUtil_GetSizeByTypeTag NOT exported
NSS_CMSContent_GetContentInfo NOT exported
NSS_CMSSignedData_Encode_BeforeStart NOT exported
NSS_CMSSignedData_Encode_BeforeData NOT exported
NSS_CMSSignedData_Encode_AfterData NOT exported
NSS_CMSSignedData_Decode_BeforeData NOT exported
NSS_CMSSignedData_Decode_AfterData NOT exported
NSS_CMSSignedData_Decode_AfterEnd NOT exported
NSS_CMSSignedData_GetSignerInfos NOT exported
NSS_CMSSignedData_GetCertificateList NOT exported
NSS_CMSSignedData_ContainsCertsOrCrls NOT exported
NSS_CMSSignedData_GetDigestValue NOT exported
NSS_CMSSignerInfo_Sign NOT exported
NSS_CMSSignerInfo_VerifyCertificate NOT exported
NSS_CMSSignerInfo_Verify NOT exported
NSS_CMSSignerInfo_GetDigestAlg NOT exported
NSS_CMSSignerInfo_GetDigestAlgTag NOT exported
NSS_CMSSignerInfo_AddAuthAttr NOT exported
NSS_CMSSignerInfo_AddUnauthAttr NOT exported
NSS_CMSSignerInfo_AddCounterSignature NOT exported
NSS_CMSEnvelopedData_Encode_BeforeStart NOT exported
NSS_CMSEnvelopedData_Encode_BeforeData NOT exported
NSS_CMSEnvelopedData_Encode_AfterData NOT exported
NSS_CMSEnvelopedData_Decode_BeforeData NOT exported
NSS_CMSEnvelopedData_Decode_AfterData NOT exported
NSS_CMSEnvelopedData_Decode_AfterEnd NOT exported
NSS_CMSRecipientInfo_GetVersion NOT exported
NSS_CMSRecipientInfo_GetEncryptedKey NOT exported
NSS_CMSRecipientInfo_GetKeyEncryptionAlgorithmTag NOT exported
NSS_CMSEncryptedData_Encode_BeforeStart NOT exported
NSS_CMSEncryptedData_Encode_BeforeData NOT exported
NSS_CMSEncryptedData_Encode_AfterData NOT exported
NSS_CMSEncryptedData_Decode_BeforeData NOT exported
NSS_CMSEncryptedData_Decode_AfterData NOT exported
NSS_CMSEncryptedData_Decode_AfterEnd NOT exported
NSS_CMSDigestedData_Encode_BeforeStart NOT exported
NSS_CMSDigestedData_Encode_BeforeData NOT exported
NSS_CMSDigestedData_Encode_AfterData NOT exported
NSS_CMSDigestedData_Decode_BeforeData NOT exported
NSS_CMSDigestedData_Decode_AfterData NOT exported
NSS_CMSDigestedData_Decode_AfterEnd NOT exported
The following api call from cryptohi.h is not found in a .def file.
SEC_DestroySignedData NOT exported
The following api calls in keyhi.h are not found in a .def file.
SECKEY_KEAParamCompare NOT exported
SECKEY_DecodeDERPublicKey NOT exported
SECKEY_ConvertAndDecodePublicKey NOT exported
SECKEY_ConvertAndDecodePublicKeyAndChallenge NOT exported
SECKEY_ConvertAndDecodeSubjectPublicKeyInfo NOT exported
SECKEY_NewPublicKeyList NOT exported
SECKEY_RemovePublicKeyListNode NOT exported
SECKEY_AddPublicKeyToListTail NOT exported
SECKEY_ECParamsToKeySize NOT exported
The following api calls in nssbase.h are not found in a .def file.
NSSArena_Create NOT exported
NSSArena_Destroy NOT exported
NSS_GetError NOT exported
NSS_GetErrorStack NOT exported
The following api calls in nssckfw.h are not found in a .def file.
NSSCKFWInstance_GetMDInstance NOT exported
NSSCKFWInstance_GetArena NOT exported
NSSCKFWInstance_MayCreatePthreads NOT exported
NSSCKFWInstance_CreateMutex NOT exported
NSSCKFWInstance_GetConfigurationData NOT exported
NSSCKFWInstance_GetInitArgs NOT exported
NSSCKFWSlot_GetMDSlot NOT exported
NSSCKFWSlot_GetFWInstance NOT exported
NSSCKFWSlot_GetMDInstance NOT exported
NSSCKFWToken_GetMDToken NOT exported
NSSCKFWToken_GetArena NOT exported
NSSCKFWToken_GetFWSlot NOT exported
NSSCKFWToken_GetMDSlot NOT exported
NSSCKFWSession_GetSessionState NOT exported
NSSCKFWMechanism_GetMDMechanism NOT exported
NSSCKFWMechanism_GetParameter NOT exported
NSSCKFWSession_GetMDSession NOT exported
NSSCKFWSession_GetArena NOT exported
NSSCKFWSession_CallNotification NOT exported
NSSCKFWSession_IsRWSession NOT exported
NSSCKFWSession_IsSO NOT exported
NSSCKFWObject_GetMDObject NOT exported
NSSCKFWObject_GetArena NOT exported
NSSCKFWObject_IsTokenObject NOT exported
NSSCKFWObject_GetAttributeCount NOT exported
NSSCKFWObject_GetAttributeTypes NOT exported
NSSCKFWObject_GetAttributeSize NOT exported
NSSCKFWObject_GetAttribute NOT exported
NSSCKFWObject_GetObjectSize NOT exported
NSSCKFWFindObjects_GetMDFindObjects NOT exported
NSSCKFWMutex_Destroy NOT exported
NSSCKFWMutex_Lock NOT exported
NSSCKFWMutex_Unlock NOT exported
The following api call found in nssrwlk.h is not found in a .def file.
nssRWLock_AtomicCreate NOT exported
The following api calls in ocsp.h are not found in a .def file.
CERT_DecodeOCSPRequest NOT exported
CERT_GetEncodedOCSPResponse NOT exported
CERT_CheckOCSPStatus NOT exported
The following api calls in portreg.h are not found in a .def file.
PORT_RegExpValid NOT exported
PORT_RegExpSearch NOT exported
PORT_RegExpCaseSearch NOT exported
The following api calls in secasn1.h are not found in a .def file.
sec_ASN1EncoderSetDER NOT exported
sec_ASN1EncoderClearDER NOT exported
SEC_ASN1EncodeUnsignedInteger NOT exported
SEC_ASN1EncodeLength NOT exported
SEC_ASN1GetSubtemplate NOT exported
SEC_ASN1IsTemplateSimple NOT exported
The following api calls in secder.h are not found in a .def file.
DER_StoreHeader NOT exported
DER_LengthLength NOT exported
DER_SetInteger NOT exported
DER_SetUInteger NOT exported
DER_GetUInteger NOT exported
DER_TimeToUTCTimeArena NOT exported
DER_GeneralizedDayToAscii NOT exported
DER_TimeChoiceDayToAscii NOT exported
DER_TimeToGeneralizedTime NOT exported
DER_TimeToGeneralizedTimeArena NOT exported
CERT_UTCTime2FormattedAscii NOT exported
The following api calls in secdig.h are not found in a .def file.
SGN_EncodeDigestInfo NOT exported
SGN_DecodeDigestInfo NOT exported
The following api calls in secitem.h are not found in a .def file.
SECITEM_ReallocItem NOT exported
SECITEM_Hash NOT exported
SECITEM_HashCompare NOT exported
The following api calls in secmime.h are not found in a .def file.
SECMIME_EnableCipher NOT exported
SECMIME_SetPolicy NOT exported
SECMIME_EncryptionPossible NOT exported
SECMIME_CreateEncrypted NOT exported
SECMIME_CreateSigned NOT exported
The following api calls in secoid.h are not found in a .def file.
SECOID_FindOIDByMechanism NOT exported
SECOID_KnownCertExtenOID NOT exported
SECOID_Shutdown NOT exported
The following api call in secpkcs5.h is not found in a .def file.
SEC_PKCS5CreateAlgorithmID NOT exported
The following api calls in secpkcs7.h are not found in a .def file.
SEC_PKCS7AddSignedAttribute NOT exported
SEC_PKCS7AddCertChain NOT exported
SEC_PKCS7AddSymmetricCapabilities NOT exported
SEC_PKCS7PrepareForEncode NOT exported
SEC_PKCS7EncryptContents NOT exported
SEC_PKCS7GetKeyLength NOT exported
The following api calls in secport.h are not found in a .def file.
PORT_AllocBlock NOT exported
PORT_ReallocBlock NOT exported
PORT_FreeBlock NOT exported
PORT_Time NOT exported
PORT_UCS4_UTF8Conversion NOT exported
PORT_ISO88591_UTF8Conversion NOT exported
The following api calls in smime.h are not found in a .def file.
NSS_SMIMEUtil_EnableCipher NOT exported
NSS_SMIMEUtils_AllowCipher NOT exported
NSS_SMIMEUtil_DecryptionAllowed NOT exported
NSS_SMIMEUtil_EncryptionPossible NOT exported
NSS_SMIMEUtil_CreateSMIMECapabilities NOT exported
NSS_SMIMEUtil_CreateSMIMEEncKeyPrefs NOT exported
NSS_SMIMEUtil_CreateMSSMIMEEncKeyPrefs NOT exported
NSS_SMIMEUtil_GetCertFromEncryptionKeyPreference NOT exported
Severity: normal → minor
OS: Linux → All
Priority: -- → P4
Hardware: PC → All
Summary: unexported CERT api calls in cert.h → unexported functions in NSS header files
Target Milestone: --- → Future
Comment 2•19 years ago
|
||
*** Bug 294539 has been marked as a duplicate of this bug. ***
Comment 3•19 years ago
|
||
*** Bug 294541 has been marked as a duplicate of this bug. ***
Comment 4•19 years ago
|
||
*** Bug 294544 has been marked as a duplicate of this bug. ***
Comment 5•19 years ago
|
||
*** Bug 294547 has been marked as a duplicate of this bug. ***
Comment 6•19 years ago
|
||
*** Bug 294548 has been marked as a duplicate of this bug. ***
Comment 7•19 years ago
|
||
*** Bug 294549 has been marked as a duplicate of this bug. ***
Comment 8•19 years ago
|
||
*** Bug 294550 has been marked as a duplicate of this bug. ***
Comment 9•19 years ago
|
||
*** Bug 294551 has been marked as a duplicate of this bug. ***
Comment 10•19 years ago
|
||
*** Bug 294558 has been marked as a duplicate of this bug. ***
Comment 11•19 years ago
|
||
*** Bug 294559 has been marked as a duplicate of this bug. ***
Comment 12•19 years ago
|
||
*** Bug 294560 has been marked as a duplicate of this bug. ***
Comment 13•19 years ago
|
||
*** Bug 294561 has been marked as a duplicate of this bug. ***
Comment 14•19 years ago
|
||
*** Bug 294562 has been marked as a duplicate of this bug. ***
Comment 15•19 years ago
|
||
*** Bug 294563 has been marked as a duplicate of this bug. ***
Comment 16•19 years ago
|
||
*** Bug 294564 has been marked as a duplicate of this bug. ***
Comment 17•19 years ago
|
||
*** Bug 294565 has been marked as a duplicate of this bug. ***
Comment 18•19 years ago
|
||
*** Bug 294566 has been marked as a duplicate of this bug. ***
Comment 19•19 years ago
|
||
*** Bug 294567 has been marked as a duplicate of this bug. ***
Comment 20•19 years ago
|
||
*** Bug 294568 has been marked as a duplicate of this bug. ***
Comment 21•14 years ago
|
||
Recently after having to write a CRL checking library for our product instead of
being able to use many of the fucntions that are in theory available for use,
I had to roll my own because of the fact that a number of these functions
were not exported, such as SEC_CheckCrlTimes()
Whilst some developers may be willing to use unexported functions and just hope
they don't get burnt by some incompatible change, I simply don't have that
flexibility.
6 years and 19 duplicate bugs later, is there any intention to resolve these
issues?
Comment 22•14 years ago
|
||
In addition I'll note that SEC_FindCrlByKey() is defined in
mozilla/security/nss/lib/certdb/certdb.h as a prototype but no
where else, and therefore all reference to it should be removed.
Comment 23•14 years ago
|
||
CERT_DecodeDERCertificate() is yet another example. In this particular situation
I assume that widespread use of internal function __CERT_DecodeDERCertificate()
was found, and the decision to make it external was made. Presumably
__CERT_DecodeDERCertificate() became CERT_DecodeDERCertificate() and the former
simply became a wrapper to maintain backward compatibility. Yet the new name
was not added to the list of exported functions.
Comment 24•9 years ago
|
||
libreswan currently had to copy:
CheckCrlTimes()
CERT_CompareAVA()
We also had to copy some code that these functions call themselves.
So we have a bit of a hack: https://github.com/libreswan/libreswan/blob/master/lib/libswan/nss_copies.c
Please export these two functions so we can remove this hack in libreswan
Comment 25•9 years ago
|
||
SEC_CheckCrlTimes is exported since NSS 3.18 (see bug 1117897 that you filed). Please file a separate bug for CERT_CompareAVA.
I close this one as wontfix. I don't see the point of this bug. Please file separate issues for individual functions that are not exported.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WONTFIX
Comment 26•9 years ago
|
||
Thanks for the reply.
We fixed our code to no longer carry copied code for SEC_CheckCrlTimes()
It seems CERT_CompareAVA() is also exported now in 3.28, but not yet in 3.21. We will look at how we will handle that for now as 3.21 is still in wide use (eg RHEL7)
Comment 27•9 years ago
|
||
oops. a non-clean compile confused me - it is not exported in the .so and only appears in the header file. I have filed: https://bugzilla.mozilla.org/show_bug.cgi?id=1336487
You need to log in
before you can comment on or make changes to this bug.
Description
•