| OLD | NEW |
| 1 /* | 1 /* |
| 2 * This file is PRIVATE to SSL and should be the first thing included by | 2 * This file is PRIVATE to SSL and should be the first thing included by |
| 3 * any SSL implementation file. | 3 * any SSL implementation file. |
| 4 * | 4 * |
| 5 * ***** BEGIN LICENSE BLOCK ***** | 5 * ***** BEGIN LICENSE BLOCK ***** |
| 6 * Version: MPL 1.1/GPL 2.0/LGPL 2.1 | 6 * Version: MPL 1.1/GPL 2.0/LGPL 2.1 |
| 7 * | 7 * |
| 8 * The contents of this file are subject to the Mozilla Public License Version | 8 * The contents of this file are subject to the Mozilla Public License Version |
| 9 * 1.1 (the "License"); you may not use this file except in compliance with | 9 * 1.1 (the "License"); you may not use this file except in compliance with |
| 10 * the License. You may obtain a copy of the License at | 10 * the License. You may obtain a copy of the License at |
| (...skipping 662 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 673 /* The following values pertain to the slot that did the signature | 673 /* The following values pertain to the slot that did the signature |
| 674 ** for client auth. (used only in client) | 674 ** for client auth. (used only in client) |
| 675 */ | 675 */ |
| 676 SECMODModuleID clAuthModuleID; | 676 SECMODModuleID clAuthModuleID; |
| 677 CK_SLOT_ID clAuthSlotID; | 677 CK_SLOT_ID clAuthSlotID; |
| 678 PRUint16 clAuthSeries; | 678 PRUint16 clAuthSeries; |
| 679 | 679 |
| 680 char masterValid; | 680 char masterValid; |
| 681 char clAuthValid; | 681 char clAuthValid; |
| 682 | 682 |
| 683 #ifdef NSS_PLATFORM_CLIENT_AUTH | |
| 684 PlatformAuthInfo clPlatformAuthInfo; | |
| 685 char clPlatformAuthValid; | |
| 686 #endif /* NSS_PLATFORM_CLIENT_AUTH */ | |
| 687 | |
| 688 /* Session ticket if we have one, is sent as an extension in the | 683 /* Session ticket if we have one, is sent as an extension in the |
| 689 * ClientHello message. This field is used by clients. | 684 * ClientHello message. This field is used by clients. |
| 690 */ | 685 */ |
| 691 NewSessionTicket sessionTicket; | 686 NewSessionTicket sessionTicket; |
| 692 SECItem srvName; | 687 SECItem srvName; |
| 693 } ssl3; | 688 } ssl3; |
| 694 } u; | 689 } u; |
| 695 }; | 690 }; |
| 696 | 691 |
| 697 | 692 |
| (...skipping 1048 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1746 extern SECStatus ssl_InitSessionCacheLocks(PRBool lazyInit); | 1741 extern SECStatus ssl_InitSessionCacheLocks(PRBool lazyInit); |
| 1747 | 1742 |
| 1748 extern SECStatus ssl_FreeSessionCacheLocks(void); | 1743 extern SECStatus ssl_FreeSessionCacheLocks(void); |
| 1749 | 1744 |
| 1750 /***************** platform client auth ****************/ | 1745 /***************** platform client auth ****************/ |
| 1751 | 1746 |
| 1752 #ifdef NSS_PLATFORM_CLIENT_AUTH | 1747 #ifdef NSS_PLATFORM_CLIENT_AUTH |
| 1753 // Releases the platform key. | 1748 // Releases the platform key. |
| 1754 extern void ssl_FreePlatformKey(PlatformKey key); | 1749 extern void ssl_FreePlatformKey(PlatformKey key); |
| 1755 | 1750 |
| 1756 // Frees any memory allocated to store a persistent reference to the | |
| 1757 // platform key. | |
| 1758 extern void ssl_FreePlatformAuthInfo(PlatformAuthInfo* info); | |
| 1759 | |
| 1760 // Initializes the PlatformAuthInfo to empty/invalid values. | |
| 1761 extern void ssl_InitPlatformAuthInfo(PlatformAuthInfo* info); | |
| 1762 | |
| 1763 // Determine if the given key is still present in the system. This is used | |
| 1764 // to check for things like smart cards being ejected after handshaking, | |
| 1765 // since no further operations on the key will happen which would detect this. | |
| 1766 extern PRBool ssl_PlatformAuthTokenPresent(PlatformAuthInfo* info); | |
| 1767 | |
| 1768 // Obtain a persistent reference to a key, sufficient for | |
| 1769 // ssl_PlatformAuthTokenPresent to determine if the key is still present. | |
| 1770 extern void ssl_GetPlatformAuthInfoForKey(PlatformKey key, | |
| 1771 PlatformAuthInfo* info); | |
| 1772 | |
| 1773 // Implement the client CertificateVerify message for SSL3/TLS1.0 | 1751 // Implement the client CertificateVerify message for SSL3/TLS1.0 |
| 1774 extern SECStatus ssl3_PlatformSignHashes(SSL3Hashes *hash, | 1752 extern SECStatus ssl3_PlatformSignHashes(SSL3Hashes *hash, |
| 1775 PlatformKey key, SECItem *buf, | 1753 PlatformKey key, SECItem *buf, |
| 1776 PRBool isTLS); | 1754 PRBool isTLS); |
| 1777 | 1755 |
| 1778 // Converts a CERTCertList* (A collection of CERTCertificates) into a | 1756 // Converts a CERTCertList* (A collection of CERTCertificates) into a |
| 1779 // CERTCertificateList* (A collection of SECItems), or returns NULL if | 1757 // CERTCertificateList* (A collection of SECItems), or returns NULL if |
| 1780 // it cannot be converted. | 1758 // it cannot be converted. |
| 1781 // This is to allow the platform-supplied chain to be created with purely | 1759 // This is to allow the platform-supplied chain to be created with purely |
| 1782 // public API functions, using the preferred CERTCertList mutators, rather | 1760 // public API functions, using the preferred CERTCertList mutators, rather |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1819 #elif defined(_WIN32_WCE) | 1797 #elif defined(_WIN32_WCE) |
| 1820 #define SSL_GETPID GetCurrentProcessId | 1798 #define SSL_GETPID GetCurrentProcessId |
| 1821 #elif defined(WIN32) | 1799 #elif defined(WIN32) |
| 1822 extern int __cdecl _getpid(void); | 1800 extern int __cdecl _getpid(void); |
| 1823 #define SSL_GETPID _getpid | 1801 #define SSL_GETPID _getpid |
| 1824 #else | 1802 #else |
| 1825 #define SSL_GETPID() 0 | 1803 #define SSL_GETPID() 0 |
| 1826 #endif | 1804 #endif |
| 1827 | 1805 |
| 1828 #endif /* __sslimpl_h_ */ | 1806 #endif /* __sslimpl_h_ */ |
| OLD | NEW |