aboutsummaryrefslogtreecommitdiffstats
path: root/fuzz/server.c
Commit message (Collapse)AuthorAgeFilesLines
* Fix fuzz test to handle memory failuresJakub Zelenka2026-07-151-88/+103
| | | | | | | | | | It also fixes related memory leaks and removes extensive asserts that should not be present in fuzzy tests. Reviewed-by: Nikola Pajkovsky <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> MergeDate: Wed Jul 15 16:01:42 2026 (Merged from https://github.com/openssl/openssl/pull/30944)
* Fix broken hex data by reformattingNorbert Pocs2026-06-031-1964/+247
| | | | | | | | | | | | | | | | The clang format broke some data in hexadecimal format. To make the tool obedient, the trailing comma needs to be removed, then it interpretes the data differently and therefore does not reformat it. The format can then be changed to the correct form. Fixes: https://github.com/openssl/project/issues/1959 Signed-off-by: Norbert Pocs <[email protected]> Reviewed-by: Milan Broz <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> MergeDate: Wed Jun 3 07:46:14 2026 (Merged from https://github.com/openssl/openssl/pull/31350)
* Copyright year updatesopenssl-machine2026-03-101-1/+1
| | | | | | | Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Eugene Syromiatnikov <[email protected]> MergeDate: Tue Mar 10 14:37:54 2026 Release: yes
* Removes fixed version TLS methods.Frederik Wedel-Heinen2026-02-241-1/+1
| | | | | | | | | | | | Fixes #28343 Reviewed-by: Kurt Roeckx <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Matt Caswell <[email protected]> Reviewed-by: Paul Dale <[email protected]> Reviewed-by: Neil Horman <[email protected]> MergeDate: Tue Feb 24 21:19:39 2026 (Merged from https://github.com/openssl/openssl/pull/30128)
* 4.0-POST-CLANG-FORMAT-WEBKIT4.0-POST-CLANG-FORMAT-WEBKITBob Beck2025-12-091-175/+1979
| | | | | | | Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Neil Horman <[email protected]> Reviewed-by: Nikola Pajkovsky <[email protected]> (Merged from https://github.com/openssl/openssl/pull/29242)
* Copyright year updatesopenssl-machine2025-09-021-1/+1
| | | | | | Reviewed-by: Neil Horman <[email protected]> Reviewed-by: Saša Nedvědický <[email protected]> Release: yes
* fuzz: Silence warnings on Win64 buildsTomas Mraz2025-07-021-2/+2
| | | | | | Reviewed-by: Saša Nedvědický <[email protected]> Reviewed-by: Neil Horman <[email protected]> (Merged from https://github.com/openssl/openssl/pull/27806)
* Add return check to BIO_new, SSL_CTX_new and EVP_PKEY_newicy172025-06-201-1/+10
| | | | | | Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Matt Caswell <[email protected]> (Merged from https://github.com/openssl/openssl/pull/27829)
* Copyright year updatesTomas Mraz2024-09-051-1/+1
| | | | | Reviewed-by: Neil Horman <[email protected]> Release: yes
* that open brace { should be on the previous lineDimitri Papadopoulos2024-07-221-2/+1
| | | | | | | | | Found by running the checkpatch.pl Linux script to enforce coding style. Reviewed-by: Neil Horman <[email protected]> Reviewed-by: David von Oheimb <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/22097)
* fuzz: remove TODOsPauli2021-06-021-6/+0
| | | | | Reviewed-by: Tim Hudson <[email protected]> (Merged from https://github.com/openssl/openssl/pull/15539)
* RAND_METHOD deprecation: fuzzerPauli2021-02-231-4/+3
| | | | | Reviewed-by: Tim Hudson <[email protected]> (Merged from https://github.com/openssl/openssl/pull/13652)
* Update copyright yearRichard Levitte2021-01-281-1/+1
| | | | | Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/13999)
* Deprecate EC_KEY + Update ec apps to use EVP_PKEYShane Lontis2021-01-261-7/+9
| | | | | | | | | Co-author: Richard Levitte <[email protected]> Co-author: Tomas Mraz <[email protected]> Reviewed-by: Matt Caswell <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/13139)
* Fix 'no-deprecated'Richard Levitte2020-12-191-7/+8
| | | | | | | | | | | | | | Some of the handling of no-deprecated stuff wasn't quite complete, or even plain wrong. This restores i2d_PublicKey() to be able to handle EVP_PKEYs with legacy internal keys. This also refactors the DSA key tests in test/evp_extra_test.c to use EVP functionality entirely. Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/13706)
* dsa: fuzzer deprecation changesPauli2020-12-171-4/+5
| | | | | | Reviewed-by: Tomas Mraz <[email protected]> Reviewed-by: Richard Levitte <[email protected]> (Merged from https://github.com/openssl/openssl/pull/13638)
* fuzz/server.c: Fix build error on OPENSSL_NO_{DSA,EC,DEPECATED_3_0}Dr. David von Oheimb2020-12-041-0/+3
| | | | | Reviewed-by: Matt Caswell <[email protected]> (Merged from https://github.com/openssl/openssl/pull/13110)
* Deprecate RSA harderRichard Levitte2020-11-181-0/+9
| | | | | | | This deprecates all functions that deal with the types RSA and RSA_METHOD Reviewed-by: Paul Dale <[email protected]> (Merged from https://github.com/openssl/openssl/pull/13096)
* Fix safestack issues in ssl.hMatt Caswell2020-09-131-2/+0
| | | | | | | | | | | | | | | | | | | | | We fix 3 problems with safestack: - Including an openssl header file without linking against libcrypto can cause compilation failures (even if the app does not otherwise need to link against libcrypto). See issue #8102 - Recent changes means that applications in no-deprecated builds will need to include additional macro calls in the source code for all stacks that they need to use - which is an API break. This changes avoids that necessity. - It is not possible to write code using stacks that works in both a no-deprecated and a normal build of OpenSSL. See issue #12707. Fixes #12707 Contains a partial fix for #8102. A similar PR will be needed for hash to fully fix. Reviewed-by: Richard Levitte <[email protected]> Reviewed-by: Paul Dale <[email protected]> (Merged from https://github.com/openssl/openssl/pull/12781)
* Update copyright yearMatt Caswell2020-05-151-1/+1
| | | | | Reviewed-by: Richard Levitte <[email protected]> (Merged from https://github.com/openssl/openssl/pull/11839)
* In OpenSSL builds, declare STACK for datatypes ...Rich Salz2020-04-241-0/+2
| | | | | | | | | | | | | | | | | | | | | | ... and only *define* them in the source files that need them. Use DEFINE_OR_DECLARE which is set appropriately for internal builds and not non-deprecated builds. Deprecate stack-of-block Better documentation Move some ASN1 struct typedefs to types.h Update ParseC to handle this. Most of all, ParseC needed to be more consistent. The handlers are "recursive", in so far that they are called again and again until they terminate, which depends entirely on what the "massager" returns. There's a comment at the beginning of ParseC that explains how that works. {Richard Levtte} Reviewed-by: Dmitry Belyavskiy <[email protected]> Reviewed-by: Tomas Mraz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/10669)
* Deprecate ERR_get_state()Richard Levitte2019-09-121-1/+1
| | | | | | | | | Internally, we still need this function, so we make it internal and then add a new ERR_get_state() that simply calls the internal variant, unless it's "removed" by configuration. Reviewed-by: Matt Caswell <[email protected]> (Merged from https://github.com/openssl/openssl/pull/9462)
* Following the license change, modify the boilerplates in fuzz/Richard Levitte2018-12-061-1/+1
| | | | | | | [skip ci] Reviewed-by: Matt Caswell <[email protected]> (Merged from https://github.com/openssl/openssl/pull/7833)
* Update copyright yearMatt Caswell2018-09-111-1/+1
| | | | | Reviewed-by: Richard Levitte <[email protected]> (Merged from https://github.com/openssl/openssl/pull/7176)
* Fix no-compMatt Caswell2018-08-091-2/+2
| | | | | | | | Commit 8839324 removed some NULL checks from the stack code. This caused a no-comp build to fail in the client and server fuzzers. Reviewed-by: Richard Levitte <[email protected]> (Merged from https://github.com/openssl/openssl/pull/6893)
* Enable all protocols and ciphers in the fuzzerKurt Roeckx2018-07-171-2/+5
| | | | | | | | | The config file can override it. In case of the server, it needs to be set on the ctx or some of the other functions on the ctx might file. Reviewed-by: Rich Salz <[email protected]> DH: #6718
* Remove unused variable.Ben Laurie2017-10-161-0/+2
| | | | | | Reviewed-by: Tim Hudson <[email protected]> Reviewed-by: Rich Salz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/4367)
* Stack sorting safetyPauli2017-09-181-1/+1
| | | | | | | | Use the defined typechecking stack method to sort the compression methods stack rather than using the generic function and apply type casts. Reviewed-by: Richard Levitte <[email protected]> (Merged from https://github.com/openssl/openssl/pull/4382)
* Move FuzzerSetRand to separate file.Rich Salz2017-08-111-0/+2
| | | | | | | Use an inline rand.inc; this fixes Google's OSS-Fuzz builds. Reviewed-by: Paul Dale <[email protected]> (Merged from https://github.com/openssl/openssl/pull/4141)
* Install custom RAND_METHOD for fuzzingRich Salz2017-07-271-11/+1
| | | | | | | | | | | | Instead of setting a "magic" global variable to force RAND to keep consistent state and always generate the same bytestream, have the fuzzing code install its own RAND_METHOD that does this. For BN_RAND_DEBUG, we just don't do it; that debugging was about mucking with BN's internal representation, not requiring predictable rand bytes. Reviewed-by: Paul Dale <[email protected]> (Merged from https://github.com/openssl/openssl/pull/4025)
* fuzz/{client,server}.c: omit _time64 "overload method".Andy Polyakov2017-04-271-8/+6
| | | | | | | | | | | Approach was opportunistic in Windows context from its inception and on top of that it was proven to be error-prone at link stage. Correct answer is to introduce library-specific time function that we can control in platform-neutral manner. Meanwhile we just let be attempts to override time on Windows. Reviewed-by: Matt Caswell <[email protected]> (Merged from https://github.com/openssl/openssl/pull/3320)
* Change 64-bit time type for windowsJon Spillett2017-04-191-1/+1
| | | | | Reviewed-by: Andy Polyakov <[email protected]> Reviewed-by: Rich Salz <[email protected]> (Merged from https://github.com/openssl/openssl/pull/3248)
* Optionally check for early dataKurt Roeckx2017-04-161-1/+19
| | | | | | | | | | | This adds a way to use the last byte of the buffer to change the behavior of the server. The last byte is used so that the existing corpus can be reused either without changing it, or just adding a single byte, and that it can still be used by other projects. Reviewed-by: Rich Salz <[email protected]> Reviewed-by: Andy Polyakov <[email protected]> GH: #2683
* Use a fixed time when fuzzing.Kurt Roeckx2017-04-161-1/+18
| | | | | | Reviewed-by: Rich Salz <[email protected]> Reviewed-by: Andy Polyakov <[email protected]> GH: #2683
* Make default_method mostly compile-timeRich Salz2017-04-071-10/+0
| | | | | | | | Document thread-safety issues Have RSA_null return NULL (always fails) Reviewed-by: Matt Caswell <[email protected]> (Merged from https://github.com/openssl/openssl/pull/2244)
* Fix build issues with no-dh, no-dsa and no-ecRichard Levitte2017-01-091-0/+18
| | | | Reviewed-by: Kurt Roeckx <[email protected]> (Merged from https://github.com/openssl/openssl/pull/2192)
* Make client and server fuzzer reproducibleKurt Roeckx2017-01-061-0/+6
| | | | | Reviewed-by: Rich Salz <[email protected]> GH: #2182
* server fuzzer: add support for DSA and ECDSAKurt Roeckx2017-01-061-1/+321
| | | | | Reviewed-by: Rich Salz <[email protected]> GH: #2182
* Make client and server fuzzer support all ciphersKurt Roeckx2016-12-161-0/+2
| | | | | | | Also send a SNI extension in the client so the fuzzer can react to it. Reviewed-by: Rich Salz <[email protected]> GH: #2088
* Make the fuzzers more reproducibleKurt Roeckx2016-12-031-27/+46
| | | | | | | | | | | | | | | | | We want to be in the same global state each time we come in FuzzerTestOneInput(). There are various reasons why we might not be that include: - Initialization that happens on first use. This is mostly the RUN_ONCE() things, or loading of error strings. - Results that get cached. For instance a stack that is sorted, RSA blinding that has been set up, ... So I try to trigger as much as possible in FuzzerInitialize(), and for things I didn't find out how to trigger this it needs to happen in FuzzerTestOneInput(). Reviewed-by: Rich Salz <[email protected]> GH: #2023
* Make the random number generator predictable when fuzzing.Kurt Roeckx2016-12-031-0/+8
| | | | | Reviewed-by: Rich Salz <[email protected]> GH: #2023
* Add a FuzzerClean() functionKurt Roeckx2016-12-031-0/+5
| | | | | | | | This allows to free everything we allocated, so we can detect memory leaks. Reviewed-by: Rich Salz <[email protected]> GH: #2023
* Fix formatting of fuzzersKurt Roeckx2016-12-031-2/+4
| | | | | Reviewed-by: Rich Salz <[email protected]> GH: #2023
* [fuzzers] do not fail fuzzers with empty inputMike Aizatsky2016-11-011-3/+9
| | | | | | | Reviewed-by: Kurt Roeckx <[email protected]> Reviewed-by: Rich Salz <[email protected]> GH: #1788
* Don't rely on implicit rsa.h inclusionViktor Dukhovni2016-07-111-0/+1
| | | | | | With no-deprecated, some nested includes don't happen by default. Reviewed-by: Rich Salz <[email protected]>
* Run the fuzzing corpora as tests.Ben Laurie2016-07-011-17/+23
| | | | | Reviewed-by: Richard Levitte <[email protected]> Reviewed-by: Rich Salz <[email protected]>
* Add support for fuzzing with AFLKurt Roeckx2016-06-041-1/+1
| | | | | | Reviewed-by: Ben Laurie <[email protected]> MR: #2740
* Add fuzzing!Ben Laurie2016-05-071-0/+237
Reviewed-by: Emilia Käsper <[email protected]>