aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-05-23Slight cleanup of the collection of READMEs, INSTALLs and NOTESRichard Levitte5-10/+14
README is a fairly independent document, and so is INSTALL. NOTES are merely addendums to INSTALL. Therefore , INSTALL.DJGPP and README.PERL get renamed to NOTES.DJGPP and NOTES.PERL. Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-05-23Remove INSTALL.WCE and refs to it.Rich Salz4-99/+2
Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-05-23Add text/x509aux to gitignoreTodd Short1-0/+1
Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org>
2016-05-23Add checks on CRYPTO_set_ex_data return valueFdaSilvaYY3-10/+12
Fix possible leak in danetest.c Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org>
2016-05-23Fix some malloc failure crashes on X509_STORE_CTX_set_ex_dataFdaSilvaYY1-1/+3
from BoringSSL 306ece31bcaaed49e0240a2e5555f8901ebb2d45 Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org>
2016-05-23Fix and simplify error handling in (RSA/EC_kmeth)_new_method()FdaSilvaYY2-42/+31
Inspired from PR #873. Nearly same as 2bbf0ba. Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org>
2016-05-23Remove useless NULL checksFdaSilvaYY3-6/+3
Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org>
2016-05-23Windows: shut DEL upRichard Levitte1-2/+2
Reviewed-by: Matt Caswell <matt@openssl.org>
2016-05-23Complete the rename of LHASH functions and typesRichard Levitte1-1/+1
LHASH_NODE was used internally, which doesn't work when configured 'no-deprecated' Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-05-23util/process_docs.pl: Add more debugging outputRichard Levitte1-1/+9
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-05-23Improve the checking of pod sectionsRichard Levitte1-2/+4
(i.e. remove some bugs) Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-05-23HTML docs on Unix: Add a HTML titleRichard Levitte1-1/+2
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-05-23process_docs.pl: When starting to read a new head1 section, remove previous textRichard Levitte1-1/+2
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-05-23Add a missing comma in OPENSSL_malloc.podRichard Levitte1-1/+1
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-05-23Add the missing NAME header in the OCSP docsRichard Levitte5-0/+10
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-05-22Avoid creating an illegal pointerKurt Roeckx1-2/+4
Found by tis-interpreter Reviewed-by: Rich Salz <rsalz@openssl.org> GH: #1106
2016-05-22Avoid creating an illegal pointerKurt Roeckx1-1/+5
Found by tis-interpreter Reviewed-by: Rich Salz <rsalz@openssl.org> GH: #1106
2016-05-22Have doc-nit-check look for mandatory manual sectionsRichard Levitte1-8/+32
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-05-21Constify stack and lhash macros.Dr. Stephen Henson4-15/+17
RT#4471 Reviewed-by: Tim Hudson <tjh@openssl.org>
2016-05-21Indent and dead code cleanupFdaSilvaYY2-44/+43
tofree pointer is no more used... Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/1103)
2016-05-21Add OpenSSL copyright to .pl filesRich Salz134-137/+1070
Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-05-20Doc nits cleanup, round 2Rich Salz430-1226/+231
Fix some code examples, trailing whitespace Fix TBA sections in verify, remove others. Remove empty sections Use Mixed Case not ALL CAPS in head2 Enhance doc-nits script. Remove extra =cut line Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-05-20Fix Windows 64 bit crashesMatt Caswell2-29/+5
The function InitOnceExceuteOnce is the best way to support the implementation of CRYPTO_THREAD_run_once() on Windows. Unfortunately WinXP doesn't have it. To get around that we had two different implementations: one for WinXP and one for later versions. Which one was used was based on the value of _WIN32_WINNT. This approach was starting to cause problems though because other parts of OpenSSL assume _WIN32_WINNT is going to be 0x0501 and crashes were occurring dependant on include file ordering. In addition a conditional based on _WIN32_WINNT had made its way into a public header file through commit 5c4328f. This is problematic because the value of this macro can vary between OpenSSL build time and application build time. The simplest solution to this mess is just to always use the WinXP version of CRYPTO_THREAD_run_once(). Its perhaps slightly sub-optimal but probably not noticably. GitHub Issue #1086 Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-05-20Rename lh_xxx,sk_xxx tp OPENSSL_{LH,SK}_xxxRich Salz22-639/+623
Rename sk_xxx to OPENSSL_sk_xxx and _STACK to OPENSSL_STACK Rename lh_xxx API to OPENSSL_LH_xxx and LHASH_NODE to OPENSSL_LH_NODE Make lhash stuff opaque. Use typedefs for function pointers; makes the code simpler. Remove CHECKED_xxx macros. Add documentation; remove old X509-oriented doc. Add API-compat names for entire old API Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
2016-05-20Clean up the VMS hacks in crypto/rand/randfile.cRichard Levitte1-16/+6
Reviewed-by: Andy Polyakov <appro@openssl.org>
2016-05-20VMS: setbuf() only takes 32-bit pointersRichard Levitte1-4/+40
Giving setbuf() a 64-bit pointer isn't faulty, as the argument is passed by a 64-bit register anyway, so you only get a warning (MAYLOSEDATA2) pointing out that only the least significant 32 bits will be used. However, we know that a FILE* returned by fopen() and such really is a 32-bit pointer (a study of the system header files make that clear), so we temporarly turn off that warning when calling setbuf(). Reviewed-by: Andy Polyakov <appro@openssl.org>
2016-05-20Add an async io testMatt Caswell3-1/+407
This adds an async IO test. There are two test runs. The first one does a normal handshake with lots of async IO events. The second one does the same but this time breaks up all the written records into multiple records of one byte in length. We do this all the way up until the CCS. Reviewed-by: Andy Polyakov <appro@openssl.org>
2016-05-20Ensure async IO works with new state machineMatt Caswell1-1/+4
In the new state machine if using nbio and we get the header of a handshake message is one record with the body in the next, with an nbio event in the middle, then the connection was failing. This is because s->init_num was getting reset. We should only reset it after we have read the whole message. RT#4394 Reviewed-by: Andy Polyakov <appro@openssl.org>
2016-05-20Tighten up logic around ChangeCipherSpec.David Benjamin1-0/+10
ChangeCipherSpec messages have a defined value. They also may not occur in the middle of a handshake message. The current logic will accept a ChangeCipherSpec with value 2. It also would accept up to three bytes of handshake data before the ChangeCipherSpec which it would discard (because s->init_num gets reset). Instead, require that s->init_num is 0 when a ChangeCipherSpec comes in. RT#4391 Reviewed-by: Andy Polyakov <appro@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org>
2016-05-20Simplify SSL BIO buffering logicMatt Caswell5-41/+23
The write BIO for handshake messages is bufferred so that we only write out to the network when we have a complete flight. There was some complexity in the buffering logic so that we switched buffering on and off at various points through out the handshake. The only real reason to do this was historically it complicated the state machine when you wanted to flush because you had to traverse through the "flush" state (in order to cope with NBIO). Where we knew up front that there was only going to be one message in the flight we switched off buffering to avoid that. In the new state machine there is no longer a need for a flush state so it is simpler just to have buffering on for the whole handshake. This also gives us the added benefit that we can simply call flush after every flight even if it only has one message in it. This means that BIO authors can implement their own buffering strategies and not have to be aware of the state of the SSL object (previously they would have to switch off their own buffering during the handshake because they could not rely on a flush being received when they really needed to write data out). This last point addresses GitHub Issue #322. Reviewed-by: Andy Polyakov <appro@openssl.org>
2016-05-20Fixup READLINE caseRichard Levitte1-1/+1
RT#4543 Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Andy Polyakov <appro@openssl.org>
2016-05-20Fix nits in pod files.Rich Salz209-1295/+1263
Add doc-nit-check to help find future issues. Make podchecker be almost clean. Remove trailing whitespace. Tab expansion Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-05-19Use the process_docs script to install docs on Windows and VMSRichard Levitte2-0/+6
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-05-19Documentation processor in perl, for platforms that don't have shRichard Levitte1-0/+252
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-05-19Use correct EOL in headers.Dr. Stephen Henson4-6/+23
RT#1817 Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-05-19Move Haiku configuration to separate config file to denoteAndy Polyakov4-37/+31
the fact that it's community-supported target. Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-05-19Add assembly CRYPTO_memcmp.Andy Polyakov12-11/+318
GH: #102 Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-05-19rand/randfile.c: remove _XOPEN_SOURCE definition.Andy Polyakov1-8/+26
Defintions of macros similar to _XOPEN_SOURCE belong in command line or in worst case prior first #include directive in source. As for macros is was allegedly controlling. One can argue that we are probably better off demanding S_IS* macros but there are systems that just don't comply, hence this compromise solution... Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-05-19Check that the obtained public key is validMatt Caswell1-0/+4
In the X509 app check that the obtained public key is valid before we attempt to use it. Issue reported by Yuan Jochen Kang. Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-05-19Add copyrightRich Salz1-0/+11
Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-05-19Add copyright to manpagesRich Salz430-18/+4736
Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-05-19Remove needless license terms (for docs)Rich Salz3-69/+0
Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-05-19Ensure =cut is last line in every file.Rich Salz38-6/+63
Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-05-19ok was uninitialised on failure.Ben Laurie1-1/+1
Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Andy Polyakov <appro@openssl.org>
2016-05-19When strict SCT fails record verification failureViktor Dukhovni4-12/+41
Since with SSL_VERIFY_NONE, the connection may continue and the session may even be cached, we should save some evidence that the chain was not sufficiently verified and would have been rejected with SSL_VERIFY_PEER. To that end when a CT callback returs failure we set the verify result to X509_V_ERR_NO_VALID_SCTS. Note: We only run the CT callback in the first place if the verify result is still X509_V_OK prior to start of the callback. RT #4502 Reviewed-by: Tim Hudson <tjh@openssl.org>
2016-05-19make updateViktor Dukhovni2-4/+8
Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
2016-05-19Improve and document low-level PEM read routinesViktor Dukhovni2-59/+188
PEM_read(), PEM_read_bio(), PEM_get_EVP_CIPHER_INFO() and PEM_do_header(). Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
2016-05-18Fixes non __GNUC__ compilationMat1-1/+1
adds missing check for defined(__GNUC__) Reviewed-by: Richard Levitte <levitte@openssl.org> Reviewed-by: Rich Salz <rsalz@openssl.org> (Merged from https://github.com/openssl/openssl/pull/1094)
2016-05-18Fix SRP client key computationCynh1-2/+2
Signed-off-by: Kurt Roeckx <kurt@roeckx.be> Reviewed-by: Matt Caswell <matt@openssl.org> GH: #1017
2016-05-18Small typo, a tab where there should have been a spaceRichard Levitte1-1/+1
Reviewed-by: Rich Salz <rsalz@openssl.org>