Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(237)

Side by Side Diff: net/third_party/nss/ssl/sslimpl.h

Issue 7327029: Add client-side support for the origin bound certificate TLS extension. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « net/third_party/nss/ssl/ssl3ext.c ('k') | net/third_party/nss/ssl/sslsock.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 332 matching lines...) Expand 10 before | Expand all | Expand 10 after
343 unsigned int noStepDown : 1; /* 15 */ 343 unsigned int noStepDown : 1; /* 15 */
344 unsigned int bypassPKCS11 : 1; /* 16 */ 344 unsigned int bypassPKCS11 : 1; /* 16 */
345 unsigned int noLocks : 1; /* 17 */ 345 unsigned int noLocks : 1; /* 17 */
346 unsigned int enableSessionTickets : 1; /* 18 */ 346 unsigned int enableSessionTickets : 1; /* 18 */
347 unsigned int enableDeflate : 1; /* 19 */ 347 unsigned int enableDeflate : 1; /* 19 */
348 unsigned int enableRenegotiation : 2; /* 20-21 */ 348 unsigned int enableRenegotiation : 2; /* 20-21 */
349 unsigned int requireSafeNegotiation : 1; /* 22 */ 349 unsigned int requireSafeNegotiation : 1; /* 22 */
350 unsigned int enableFalseStart : 1; /* 23 */ 350 unsigned int enableFalseStart : 1; /* 23 */
351 unsigned int enableOCSPStapling : 1; /* 24 */ 351 unsigned int enableOCSPStapling : 1; /* 24 */
352 unsigned int enableCachedInfo : 1; /* 25 */ 352 unsigned int enableCachedInfo : 1; /* 25 */
353 unsigned int enableOBCerts : 1; /* 26 */
353 } sslOptions; 354 } sslOptions;
354 355
355 typedef enum { sslHandshakingUndetermined = 0, 356 typedef enum { sslHandshakingUndetermined = 0,
356 sslHandshakingAsClient, 357 sslHandshakingAsClient,
357 sslHandshakingAsServer 358 sslHandshakingAsServer
358 } sslHandshakingType; 359 } sslHandshakingType;
359 360
360 typedef struct sslServerCertsStr { 361 typedef struct sslServerCertsStr {
361 /* Configuration state for server sockets */ 362 /* Configuration state for server sockets */
362 CERTCertificate * serverCert; 363 CERTCertificate * serverCert;
(...skipping 1198 matching lines...) Expand 10 before | Expand all | Expand 10 after
1561 extern SECStatus ssl3_HandleSupportedPointFormatsXtn(sslSocket * ss, 1562 extern SECStatus ssl3_HandleSupportedPointFormatsXtn(sslSocket * ss,
1562 PRUint16 ex_type, SECItem *data); 1563 PRUint16 ex_type, SECItem *data);
1563 extern SECStatus ssl3_ClientHandleSessionTicketXtn(sslSocket *ss, 1564 extern SECStatus ssl3_ClientHandleSessionTicketXtn(sslSocket *ss,
1564 PRUint16 ex_type, SECItem *data); 1565 PRUint16 ex_type, SECItem *data);
1565 extern SECStatus ssl3_ClientHandleNextProtoNegoXtn(sslSocket *ss, 1566 extern SECStatus ssl3_ClientHandleNextProtoNegoXtn(sslSocket *ss,
1566 PRUint16 ex_type, SECItem *data); 1567 PRUint16 ex_type, SECItem *data);
1567 extern SECStatus ssl3_ClientHandleCachedInfoXtn(sslSocket *ss, 1568 extern SECStatus ssl3_ClientHandleCachedInfoXtn(sslSocket *ss,
1568 PRUint16 ex_type, SECItem *data); 1569 PRUint16 ex_type, SECItem *data);
1569 extern SECStatus ssl3_ClientHandleStatusRequestXtn(sslSocket *ss, 1570 extern SECStatus ssl3_ClientHandleStatusRequestXtn(sslSocket *ss,
1570 PRUint16 ex_type, SECItem *data); 1571 PRUint16 ex_type, SECItem *data);
1572 extern SECStatus ssl3_ClientHandleOBCertXtn(sslSocket *ss,
1573 PRUint16 ex_type, SECItem *data);
1571 extern SECStatus ssl3_ServerHandleSessionTicketXtn(sslSocket *ss, 1574 extern SECStatus ssl3_ServerHandleSessionTicketXtn(sslSocket *ss,
1572 PRUint16 ex_type, SECItem *data); 1575 PRUint16 ex_type, SECItem *data);
1573 extern SECStatus ssl3_ServerHandleNextProtoNegoXtn(sslSocket *ss, 1576 extern SECStatus ssl3_ServerHandleNextProtoNegoXtn(sslSocket *ss,
1574 PRUint16 ex_type, SECItem *data); 1577 PRUint16 ex_type, SECItem *data);
1578 extern SECStatus ssl3_ServerHandleOBCertXtn(sslSocket *ss,
1579 PRUint16 ex_type, SECItem *data);
1575 1580
1576 /* ClientHello and ServerHello extension senders. 1581 /* ClientHello and ServerHello extension senders.
1577 * Note that not all extension senders are exposed here; only those that 1582 * Note that not all extension senders are exposed here; only those that
1578 * that need exposure. 1583 * that need exposure.
1579 */ 1584 */
1580 extern PRInt32 ssl3_SendSessionTicketXtn(sslSocket *ss, PRBool append, 1585 extern PRInt32 ssl3_SendSessionTicketXtn(sslSocket *ss, PRBool append,
1581 PRUint32 maxBytes); 1586 PRUint32 maxBytes);
1582 extern PRInt32 ssl3_ClientSendStatusRequestXtn(sslSocket *ss, PRBool append, 1587 extern PRInt32 ssl3_ClientSendStatusRequestXtn(sslSocket *ss, PRBool append,
1583 PRUint32 maxBytes); 1588 PRUint32 maxBytes);
1584 1589
1585 /* ClientHello and ServerHello extension senders. 1590 /* ClientHello and ServerHello extension senders.
1586 * The code is in ssl3ext.c. 1591 * The code is in ssl3ext.c.
1587 */ 1592 */
1588 extern PRInt32 ssl3_SendServerNameXtn(sslSocket *ss, PRBool append, 1593 extern PRInt32 ssl3_SendServerNameXtn(sslSocket *ss, PRBool append,
1589 PRUint32 maxBytes); 1594 PRUint32 maxBytes);
1590 extern PRInt32 ssl3_ClientSendCachedInfoXtn(sslSocket *ss, PRBool append, 1595 extern PRInt32 ssl3_ClientSendCachedInfoXtn(sslSocket *ss, PRBool append,
1591 PRUint32 maxBytes); 1596 PRUint32 maxBytes);
1597 extern PRInt32 ssl3_SendOBCertXtn(sslSocket *ss, PRBool append,
1598 PRUint32 maxBytes);
1592 1599
1593 /* Assigns new cert, cert chain and keys to ss->serverCerts 1600 /* Assigns new cert, cert chain and keys to ss->serverCerts
1594 * struct. If certChain is NULL, tries to find one. Aborts if 1601 * struct. If certChain is NULL, tries to find one. Aborts if
1595 * fails to do so. If cert and keyPair are NULL - unconfigures 1602 * fails to do so. If cert and keyPair are NULL - unconfigures
1596 * sslSocket of kea type.*/ 1603 * sslSocket of kea type.*/
1597 extern SECStatus ssl_ConfigSecureServer(sslSocket *ss, CERTCertificate *cert, 1604 extern SECStatus ssl_ConfigSecureServer(sslSocket *ss, CERTCertificate *cert,
1598 CERTCertificateList *certChain, 1605 CERTCertificateList *certChain,
1599 ssl3KeyPair *keyPair, SSLKEAType kea); 1606 ssl3KeyPair *keyPair, SSLKEAType kea);
1600 /* Return key type for the cert */ 1607 /* Return key type for the cert */
1601 extern SSLKEAType ssl_FindCertKEAType(CERTCertificate * cert); 1608 extern SSLKEAType ssl_FindCertKEAType(CERTCertificate * cert);
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
1728 #elif defined(_WIN32_WCE) 1735 #elif defined(_WIN32_WCE)
1729 #define SSL_GETPID GetCurrentProcessId 1736 #define SSL_GETPID GetCurrentProcessId
1730 #elif defined(WIN32) 1737 #elif defined(WIN32)
1731 extern int __cdecl _getpid(void); 1738 extern int __cdecl _getpid(void);
1732 #define SSL_GETPID _getpid 1739 #define SSL_GETPID _getpid
1733 #else 1740 #else
1734 #define SSL_GETPID() 0 1741 #define SSL_GETPID() 0
1735 #endif 1742 #endif
1736 1743
1737 #endif /* __sslimpl_h_ */ 1744 #endif /* __sslimpl_h_ */
OLDNEW
« no previous file with comments | « net/third_party/nss/ssl/ssl3ext.c ('k') | net/third_party/nss/ssl/sslsock.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698