summaryrefslogtreecommitdiffstats
path: root/util
AgeCommit message (Collapse)Author
2016-01-24Move pqueue into sslRich Salz
This is an internal facility, never documented, not for public consumption. Move it into ssl (where it's only used for DTLS). I also made the typedef's for pqueue and pitem follow our style: they name structures, not pointers. Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-23Remove extra unused variable in util/dofile.plRichard Levitte
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-22Refactor file writing - Adapt util/mkdef.pl to use configdata.pmRichard Levitte
For this adaptation, the variables $options and $version needed to move to %config in Configure, and why not move all other variables holding diverse version numbers at the same time? Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-22Refactor file writing - adapt util/dofile.pl to use with_fallbackRichard Levitte
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-22Refactor file writing - arrange for use of bundled Perl modules as fallbackRichard Levitte
For our own convenience, we need a mechanism to be able to fall back on bundled Perl modules. It's a minimal package that's called like this: use with_fallback qw(Module1 Module2 ...); For each module, it will try to require them from the system installation, and failing that, it will temporarly add external/perl and try to require transfer::{ModuleName}. It requires that each bundled Perl modules is accompanied by a small transfer module (external/perl/transfer/ModuleName.pm in our example) that knows exactly what to load. Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-22Refactor file writing - introduce template driven file writingRichard Levitte
apps/CA.pl and tools/c_rehash are built from template files. So far, this was done by Configure, which created its own problems as it forced everyone to reconfigure just because one of the template files had changed. Instead, have those files created as part of the normal build in apps/ and in tools/. Furthermore, this prepares for a future where Configure may produce entirely other build files than Makefile, and the latter can't be guaranteed to be the holder of all information for other scripts. Instead, configdata.pm (described below) becomes the center of configuration information. This introduces a few new things: %config a hash table to hold all kinds of configuration data that can be used by any other script. configdata.pm a perl module that Configure writes. It currently holds the hash tables %config and %target. util/dofile.pl a script that takes a template on STDIN and outputs the result after applying configuration data on it. It's supposed to be called like this: perl -I$(TOP) -Mconfigdata < template > result or perl -I$(TOP) -Mconfigdata templ1 templ2 ... > result Note: util/dofile.pl requires Text::Template. As part of this changed, remove a number of variables that are really just copies of entries in %target, and use %target directly. The exceptions are $target{cflags} and $target{lflags}, they do get copied to $cflags and $lflags. The reason for this is that those variable potentially go through a lot of changes and would rather deserve a place in %config. That, however, is for another commit. Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-22Refresh the thinking of --prefix and --openssldirRichard Levitte
--prefix is now exclusively used for software and manual installation. --openssldir is not exclusively used as a default location for certs, keys and the default openssl.cnf. This change is made to bring clarity, to have the two less intertwined, and to be more compatible with the usual ways of software installation. Please change your habits and scripts to use --prefix rather than --openssldir for installation location now. Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-19Remove the GOST engineMatt Caswell
The GOST engine is now out of date and is removed by this commit. An up to date GOST engine is now being maintained in an external repository. See: https://wiki.openssl.org/index.php/Binaries Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-19prf redirection build fixesDr. Stephen Henson
Reviewed-by: Matt Caswell <matt@openssl.org> Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-18Don't use "grep -q", "-q" is not POSIX, and fails on Solaris.Kristian Amlie
Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-17Accessor update; fix API, document one.Rich Salz
Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
2016-01-17Add some accessors.Rich Salz
Author: Remi Gacogne <rgacogne-github@coredump.fr> GH334: Add an OCSP_SINGLERESP_get0_id() accessor to the OCSP_CERTID of a OCSP_SINGLERESP. It is possible to do it the other way around using OCSP_resp_find(), but this is more efficient when you have a tree indexed by OCSP_CERTID, like haproxy does. (This is also RT4251) Author: Marek Klein <kleinmrk@gmail.com> GH556: OCSP_resp_get_produced_at() accessor to the producedAt of a OCSP_BASICRESP GH555: TS_STATUS_INFO_get_status(), TS_STATUS_INFO_get_text() and TS_STATUS_INFO_get_failure_info() accessors for a TS_STATUS_INFO Signed-off-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-16fix no-engine buildDr. Stephen Henson
Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-14Avoid the r modifier for s/// (perl)Richard Levitte
It seems that the r modifier for s/// is fairly new. It's reported not to exist in perl 5.10.1, so it's better to avoid it when possible. Reviewed-by: Tim Hudson <tjh@openssl.org>
2016-01-14Add a no-egd option to disable EGD-related codeBenjamin Kaduk
The entropy-gathering daemon is used only on a small number of machines. Provide a configure knob so that EGD support can be disabled by default but re-enabled on those systems that do need it. Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
2016-01-14Make SSL_set_debug deprecated in 1.1Rich Salz
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-14RT4232: Extra space in help message.Rich Salz
It turns out that -pause calls the undocumented function SSL_set_debug. That just sets flag inside the SSL structure. That flag, despite the command is never used. So remove the flag, the field, and the function. Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-13Fix verify(1) to report failure when verification failsViktor Dukhovni
Regenerated expired test certificates, good for the next 100 years. Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
2016-01-13Reorder the ordinals in libeay.numRichard Levitte
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-13Quick fix of debugging option for mk1mf.pl.Richard Levitte
util/mk1mf.pl was relying on the platform having the 'debug-' prefix for doing a debug build. Since the setup of targets has changed, this is no longer true. However, it can look for '--debug' in the command line options. Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-13Add CRYPTO_EX_DATA; remove EC_EXTRA_DATARich Salz
Add CRYPTO_EX_DATA add EndC_KEY_[gs]et_method, From Roumen Petrov. Had to add various exdata calls to init/copy/free the exdata. Had to remove const from some EC functions because exdata isn't const-correct. :( Also remove EC_EXTRA_DATA and use a union to hold the possible pre-computed values and an enum to tell which value is in the union. (Rich Salz) Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
2016-01-13recognise no-crypto-mdebugDr. Stephen Henson
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-12make updateRichard Levitte
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-12Make sure to have both upper and mixed case symbols in SYMBOL_VECTORRichard Levitte
It was assumed that the syntax FOO/Foo=PROCEDURE would create both an upper case and mixed case symbol in the GST. Not so, it requires having both FOO/Foo=PROCEDURE (to create the upper case alias) and Foo=PROCEDURE (to create the mixed case slot). We make sure that any symbol always occupies two slots (even those that don't exist) by filling up with SPARE when necessary. That will assure that any changes will still have the same symbols in the same slots no matter what (save a complete rewrite of the ordinals files). Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-12Use SPARE instead of PRIVATE_PROCEDURE to reserve unused SYMBOL_VECTOR slotsRichard Levitte
It was assumed that a dummy with the type PRIVATE_PROCEDURE would simply occupy a slot but otherwise ignore the symbol. Not so, but there is SPARE for that purpose. Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-12The limit per SYMBOL_VECTOR isn't the amount of symbols, it's the line lengthRichard Levitte
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-12VMS INDENTIFICATION should only have the version numberRichard Levitte
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-11Have mkdef.pl use case sensitive symbols for shareable symbol vectorRichard Levitte
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-11update ordinalsDr. Stephen Henson
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-11Remove mkstack.pl: it is no longer needed.Dr. Stephen Henson
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-11Add lh_doall_arg inliningDr. Stephen Henson
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-11Add lh_doall inliningDr. Stephen Henson
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-11Add lh_new() inliningDr. Stephen Henson
Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-11Inline LHASH_OFDr. Stephen Henson
Make LHASH_OF use static inline functions. Add new lh_get_down_load and lh_set_down_load functions and their typesafe inline equivalents. Make lh_error a function instead of a macro. Reviewed-by: Rich Salz <rsalz@openssl.org>
2016-01-11GH540: add casts to safestack.hAlessandro Ghedini
Signed-off-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
2016-01-11Make SSL{_CTX,}_{get,set,clear}_options functionsViktor Dukhovni
These now take and return unsigned long, and get is constified. Updated related documentation and util/ssleay.num Reviewed-by: Matt Caswell <matt@openssl.org>
2016-01-11Enable/disable crypto-mdebug just like other featuresViktor Dukhovni
Also always abort() on leak failure. Reviewed-by: Stephen Henson <steve@openssl.org>
2016-01-11Disable some algorithms by defaultDr. Stephen Henson
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-09Future-proof deprecated declartion parsingViktor Dukhovni
Support two-digest major/minor/micro numbers and die when the input fails to parse Reviewed-by: Dr. Stephen Henson <steve@openssl.org>
2016-01-09RT41897: Add an CRYPTO_secure_actual_sizeRich Salz
This is already documented, I just forgot to include the code :) Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-09update ordinalsDr. Stephen Henson
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-09Add DEPRECATEDIN support.Dr. Stephen Henson
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-09remove hard coded algorithmsDr. Stephen Henson
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-09Recognise disabled algorithms automatically.Dr. Stephen Henson
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-08Fix no CRYPTO_MDEBUG build (windows)Rich Salz
In order for mkdep to find #ifdef'd functions, they must be wrapped (in the header file) with #ifndef OPENSSL_NO_... So do that for various CRYPTO_mem_debug... things. Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-08Remove all remaining traces if PEM_SealRichard Levitte
Reviewed-by: Viktor Dukhovni <viktor@openssl.org>
2016-01-07mem functions cleanupRich Salz
Only two macros CRYPTO_MDEBUG and CRYPTO_MDEBUG_ABORT to control this. If CRYPTO_MDEBUG is not set, #ifdef out the whole debug machinery. (Thanks to Jakob Bohm for the suggestion!) Make the "change wrapper functions" be the only paradigm. Wrote documentation! Format the 'set func' functions so their paramlists are legible. Format some multi-line comments. Remove ability to get/set the "memory debug" functions at runtme. Remove MemCheck_* and CRYPTO_malloc_debug_init macros. Add CRYPTO_mem_debug(int flag) function. Add test/memleaktest. Rename CRYPTO_malloc_init to OPENSSL_malloc_init; remove needless calls. Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-07Enhance util/mkdef.pl to provide a VMS linker option file for shlibsRichard Levitte
Reviewed-by: Tim Hudson <tjh@openssl.org>
2016-01-07use more descriptive name DEFINE_STACK_OF_CONSTDr. Stephen Henson
Reviewed-by: Richard Levitte <levitte@openssl.org>
2016-01-07Rename DECLARE*STACK_OF to DEFINE*STACK_OFDr. Stephen Henson
Applications wishing to include their own stacks now just need to include DEFINE_STACK_OF(foo) in a header file. Reviewed-by: Richard Levitte <levitte@openssl.org>