1# In this file, every section corresponds to a header file. 2# A corresponding binding file will be created in $OUT_DIR. 3 4[nss_ssl] 5types = [ 6 "HpkeSymmetricSuite", 7 "PRCList", 8 "PRUint16", 9 "PRUint64", 10 "PRUint8", 11 "SECStatus", 12 "SSLAeadContext", 13 "SSLExtensionHandler", 14 "SSLExtensionType", 15 "SSLExtensionWriter", 16 "SSLHelloRetryRequestAction", 17 "SSLHelloRetryRequestCallback", 18 "SSLNamedGroup", 19 "SSLProtocolVariant", 20 "SSLRecordWriteCallback", 21 "SSLResumptionTokenCallback", 22 "SSLResumptionTokenInfo", 23 "SSLSecretCallback", 24 "SSLSignatureScheme", 25 "SSLTimeFunc", 26] 27functions = [ 28 "SSL_AlertSentCallback", 29 "SSL_AuthCertificateComplete", 30 "SSL_AuthCertificateHook", 31 "SSL_CipherPrefSet", 32 "SSL_ConfigServerCert", 33 "SSL_ConfigServerSessionIDCache", 34 "SSL_DestroyResumptionTokenInfo", 35 "SSL_GetChannelInfo", 36 "SSL_GetExperimentalAPI", 37 "SSL_GetImplementedCiphers", 38 "SSL_GetNextProto", 39 "SSL_GetNumImplementedCiphers", 40 "SSL_GetPreliminaryChannelInfo", 41 "SSL_GetResumptionTokenInfo", 42 "SSL_ForceHandshake", 43 "SSL_ImportFD", 44 "SSL_NamedGroupConfig", 45 "SSL_OptionSet", 46 "SSL_OptionGetDefault", 47 "SSL_PeerCertificate", 48 "SSL_PeerCertificateChain", 49 "SSL_PeerSignedCertTimestamps", 50 "SSL_PeerStapledOCSPResponses", 51 "SSL_ResetHandshake", 52 "SSL_SetNextProtoNego", 53 "SSL_SetURL", 54 "SSL_VersionRangeSet", 55] 56enums = [ 57 "HpkeAeadId", 58 "HpkeKdfId", 59 "SSLAuthType", 60 "SSLCipherAlgorithm", 61 "SSLCompressionMethod", 62 "SSLContentType", 63 "SSLExtensionType", 64 "SSLHandshakeType", 65 "SSLHelloRetryRequestAction", 66 "SSLKEAType", 67 "SSLMACAlgorithm", 68 "SSLNamedGroup", 69 "SSLNextProtoState", 70 "SSLProtocolVariant", 71 "SSLSecretDirection", 72 "SSLSignatureScheme", 73 "SECStatus", 74] 75variables = [ 76 "SSL_LIBRARY_VERSION_TLS_\\d_\\d", 77 "SSL_NumImplementedCiphers", 78 "ssl_preinfo_.*", 79] 80opaque = [ 81 "CERTCertificate", 82 "PK11SymKey", 83 "PLArenaPool", 84 "PRFileDesc", 85 "SECKEYPrivateKey", 86 "SECKEYPublicKey", 87 "SSLExtraServerCertData", 88] 89 90[nss_sslopt] 91variables = [ 92 "SSL_REQUEST_CERTIFICATE", 93 "SSL_REQUIRE_CERTIFICATE", 94 "SSL_NO_LOCKS", 95 "SSL_ENABLE_SESSION_TICKETS", 96 "SSL_ENABLE_OCSP_STAPLING", 97 "SSL_ENABLE_ALPN", 98 "SSL_ENABLE_EXTENDED_MASTER_SECRET", 99 "SSL_ENABLE_SIGNED_CERT_TIMESTAMPS", 100 "SSL_ENABLE_0RTT_DATA", 101 "SSL_RECORD_SIZE_LIMIT", 102 "SSL_ENABLE_TLS13_COMPAT_MODE", 103 "SSL_ENABLE_HELLO_DOWNGRADE_CHECK", 104 "SSL_SUPPRESS_END_OF_EARLY_DATA", 105] 106 107[nss_ciphers] 108variables = ["TLS_.*"] 109exclude = [ 110 ".*_(?:EXPORT(?:1024)?|anon|DES|RC4)_.*", 111 ".*_(?:MD5|NULL_SHA)", 112] 113 114[nss_secerr] 115types = ["SECErrorCodes"] 116enums = ["SECErrorCodes"] 117 118[nss_sslerr] 119types = ["SSLErrorCodes"] 120enums = ["SSLErrorCodes"] 121 122[nss_init] 123functions = [ 124 "NSS_Initialize", 125 "NSS_IsInitialized", 126 "NSS_NoDB_Init", 127 "NSS_SetDomesticPolicy", 128 "NSS_Shutdown", 129 "NSS_VersionCheck", 130] 131variables = [ 132 "NSS_INIT_READONLY", 133 "SECMOD_DB", 134] 135 136[nss_p11] 137types = [ 138 "CERTCertList", 139 "CERTCertListNode", 140 "CK_ATTRIBUTE_TYPE", 141 "CK_FLAGS", 142 "CK_MECHANISM_TYPE", 143 "HpkeAeadId", 144 "HpkeKdfId", 145 "HpkeKemId", 146 "SECItem", 147 "SECItemArray", 148] 149functions = [ 150 "CERT_DestroyCertificate", 151 "CERT_DestroyCertList", 152 "CERT_GetCertificateDer", 153 "PK11_Encrypt", 154 "PK11_ExtractKeyValue", 155 "PK11_FindCertFromNickname", 156 "PK11_FindKeyByAnyCert", 157 "PK11_FreeSlot", 158 "PK11_FreeSymKey", 159 "PK11_GenerateKeyPairWithOpFlags", 160 "PK11_GenerateRandom", 161 "PK11_GetBlockSize", 162 "PK11_GetInternalSlot", 163 "PK11_GetKeyData", 164 "PK11_GetMechanism", 165 "PK11_HPKE_Serialize", 166 "PK11_ImportDataKey", 167 "PK11_ReadRawAttribute", 168 "PK11_ReferenceSymKey", 169 "SECITEM_FreeItem", 170 "SECKEY_CopyPrivateKey", 171 "SECKEY_CopyPublicKey", 172 "SECKEY_DestroyPrivateKey", 173 "SECKEY_DestroyPublicKey", 174 "SECOID_FindOIDByTag", 175] 176enums = [ 177 "HpkeAeadId", 178 "HpkeKdfId", 179 "HpkeKemId", 180 "PK11ObjectType", 181 "PK11Origin", 182 "SECItemType", 183 "SECOidTag", 184] 185opaque = [ 186 "CERTCertificate", 187 "PK11SlotInfo", 188 "PK11SymKey", 189 "SECKEYPrivateKey", 190 "SECKEYPublicKey", 191] 192variables = [ 193 "CKA_DERIVE", 194 "CKA_VALUE", 195 "CKF_DERIVE", 196 "CKM_AES_ECB", 197 "CKM_AES_GCM", 198 "CKM_EC_KEY_PAIR_GEN", 199 "CKM_HKDF_DERIVE", 200 "CKM_INVALID_MECHANISM", 201 "CKM_NSS_CHACHA20_CTR", 202 "CKM_NSS_CHACHA20_POLY1305", 203 "PK11_ATTR_INSENSITIVE", 204 "PK11_ATTR_PRIVATE", 205 "PK11_ATTR_PUBLIC", 206 "PK11_ATTR_SENSITIVE", 207 "PK11_ATTR_SESSION", 208 "SEC_ASN1_OBJECT_ID", 209] 210 211[nspr_err] 212# NSPR doesn't use an enum for errors, so we have to pull in everything in the header file. 213# Specifying no types, functions, or variables does that, but then exclude some. 214exclude = [ 215 "nspr_.*", 216 "PR_MAX_ERROR", 217 "ERROR_TABLE_BASE_nspr" 218] 219 220[nspr_error] 221functions = [ 222 "PR_ErrorToName", 223 "PR_ErrorToString", 224 "PR_GetError", 225 "PR_SetError", 226] 227variables = [ 228 "PR_LANGUAGE_I_DEFAULT", 229] 230 231[nspr_io] 232types = ["PRIOMethods"] 233functions = [ 234 "PR_Close", 235 "PR_CreateIOLayerStub", 236 "PR_GetUniqueIdentity", 237] 238variables = [ 239 "PR_AF_INET", 240] 241# opaque is for the stuff we don't plan to use, but we need for function signatures. 242opaque = [ 243 "PRFileInfo", 244 "PRFileInfo64", 245 "PRFilePrivate", 246 "PRIOVec", 247 "PRSendFileData", 248] 249enums = [ 250 "PRDescType", 251 "PRStatus", 252 "PRSeekWhence", 253 "PRSockOption", 254 "PRTransmitFileFlags", 255] 256 257[nspr_time] 258types = ["PRTime"] 259functions = ["PR_Now"] 260 261[mozpkix] 262cplusplus = true 263types = ["mozilla::pkix::ErrorCode"] 264enums = ["mozilla::pkix::ErrorCode"] 265