OLD | NEW |
1 /* | 1 /* |
2 * SSL3 Protocol | 2 * SSL3 Protocol |
3 * | 3 * |
4 * ***** BEGIN LICENSE BLOCK ***** | 4 * ***** BEGIN LICENSE BLOCK ***** |
5 * Version: MPL 1.1/GPL 2.0/LGPL 2.1 | 5 * Version: MPL 1.1/GPL 2.0/LGPL 2.1 |
6 * | 6 * |
7 * The contents of this file are subject to the Mozilla Public License Version | 7 * The contents of this file are subject to the Mozilla Public License Version |
8 * 1.1 (the "License"); you may not use this file except in compliance with | 8 * 1.1 (the "License"); you may not use this file except in compliance with |
9 * the License. You may obtain a copy of the License at | 9 * the License. You may obtain a copy of the License at |
10 * http://www.mozilla.org/MPL/ | 10 * http://www.mozilla.org/MPL/ |
(...skipping 8348 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
8359 if (rv != SECSuccess) | 8359 if (rv != SECSuccess) |
8360 goto fail; /* err set by AppendHandshake. */ | 8360 goto fail; /* err set by AppendHandshake. */ |
8361 } | 8361 } |
8362 if ((flags & ssl_SEND_FLAG_NO_FLUSH) == 0) { | 8362 if ((flags & ssl_SEND_FLAG_NO_FLUSH) == 0) { |
8363 rv = ssl3_FlushHandshake(ss, flags); | 8363 rv = ssl3_FlushHandshake(ss, flags); |
8364 if (rv != SECSuccess) { | 8364 if (rv != SECSuccess) { |
8365 goto fail; /* error code set by ssl3_FlushHandshake */ | 8365 goto fail; /* error code set by ssl3_FlushHandshake */ |
8366 } | 8366 } |
8367 } | 8367 } |
8368 | 8368 |
8369 if ((ss->ssl3.hs.snapStartType == snap_start_recovery || | |
8370 ss->ssl3.hs.snapStartType == snap_start_resume_recovery) && | |
8371 ss->ssl3.snapStartApplicationData.data) { | |
8372 /* In the event that the server ignored the application data in our | |
8373 * snap start extension, we need to retransmit it now. */ | |
8374 PRInt32 sent = ssl3_SendRecord(ss, content_application_data, | |
8375 ss->ssl3.snapStartApplicationData.data, | |
8376 ss->ssl3.snapStartApplicationData.len, | |
8377 flags); | |
8378 SECITEM_FreeItem(&ss->ssl3.snapStartApplicationData, PR_FALSE); | |
8379 if (sent < 0) | |
8380 return (SECStatus)sent; /* error code set by ssl3_SendRecord */ | |
8381 } | |
8382 | |
8383 return SECSuccess; | 8369 return SECSuccess; |
8384 | 8370 |
8385 fail: | 8371 fail: |
8386 return rv; | 8372 return rv; |
8387 } | 8373 } |
8388 | 8374 |
8389 /* wrap the master secret, and put it into the SID. | 8375 /* wrap the master secret, and put it into the SID. |
8390 * Caller holds the Spec read lock. | 8376 * Caller holds the Spec read lock. |
8391 */ | 8377 */ |
8392 SECStatus | 8378 SECStatus |
(...skipping 1295 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
9688 | 9674 |
9689 ss->ssl3.initialized = PR_FALSE; | 9675 ss->ssl3.initialized = PR_FALSE; |
9690 | 9676 |
9691 if (ss->ssl3.nextProto.data) { | 9677 if (ss->ssl3.nextProto.data) { |
9692 PORT_Free(ss->ssl3.nextProto.data); | 9678 PORT_Free(ss->ssl3.nextProto.data); |
9693 ss->ssl3.nextProto.data = NULL; | 9679 ss->ssl3.nextProto.data = NULL; |
9694 } | 9680 } |
9695 } | 9681 } |
9696 | 9682 |
9697 /* End of ssl3con.c */ | 9683 /* End of ssl3con.c */ |
OLD | NEW |