summaryrefslogtreecommitdiff
path: root/src/lib/libc/stdlib/recallocarray.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2022-06-26Provide and use long_{get,set}()jsing1-11/+35
Apparently at some point a LONG_it was misaligned - provide and use long_{get,set}() so that we always memcpy() rather than doing it some times but not others. While here provide long_clear() rather than abusing and reusing long_free(). ok tb@
2022-06-26Fix URI name constraints, allow for URI's with no host part.beck2-3/+38
Such uri's must be parsed and allowed, but then should fail if a name constraint is present. Adds regress testing for this same case. fixes https://github.com/libressl-portable/openbsd/issues/131 ok tb@
2022-06-26whitespacetb1-2/+2
2022-06-25Move leaf certificate checks to the last thing after chain validation.beck3-20/+317
While seemingly illogical and not what is done in Go's validator, this mimics OpenSSL's behavior so that callback overrides for the expiry of a certificate will not "sticky" override a failure to build a chain. ok jsing@
2022-06-25Use ints for boolean values.jsing1-31/+31
Switch to using ints for boolean values and use 0 or 1 for constructed, rather than using 0 the ASN.1 tag encoded value (1 << 5). ok tb@
2022-06-25Reuse ASN1_INTEGER functions for ASN1_ENUMERATED_{get,set}()jsing2-56/+59
Instead of having a separate get/set implementation, reuse the ASN1_INTEGER code. Also prepare to provide ASN1_ENUMERATED_{get,set}_int64(). ok beck@ tb@
2022-06-25Check pointer argument after {d2i,i2d}_ASN1_{BIT_STRING,BOOLEAN,INTEGER}()jsing1-2/+46
2022-06-25Add regress for ASN1_INTEGER_{get,set}_{u,}int64()jsing1-1/+103
2022-06-25Rewrite ASN1_INTEGER_{get,set}() using CBS/CBBjsing4-65/+197
In the process, prepare to provide ASN1_INTEGER_{get,set}_{u,}int64(). ok beck@ tb@
2022-06-25Simplify ASN1_INTEGER_cmp()jsing1-16/+9
ok beck@ tb@
2022-06-25Add regress for ASN1_INTEGER_cmp()jsing1-1/+76
2022-06-23Use dynamic linking correctly. bntest and bn_to_string need static linking.tb1-3/+5
2022-06-22Explicitly include fcntl.h and unistd.h for pipe2tb1-1/+4
2022-06-22Fix format strings for size_ttb1-5/+5
2022-06-22Fix format string: use %zu for size_t, not %lu.tb1-3/+3
2022-06-22Error out on negative shifts in BN_{r,l}shift()tb1-1/+13
Without these checks in both functions nw = n / BN_BITS2 will be negative and this leads to out-of-bounds accesses via negative array indices and memset with a negative size. Pointed out by cheloha ok jsing
2022-06-20Tweak a commenttb1-2/+2
2022-06-20Flip roles of lowercase and uppercase A and B.tb1-44/+44
This matches Cohen's text better and makes the entire thing easier to read. suggested by jsing
2022-06-20Clean up BN_kronecker()tb1-73/+88
Instead of "Cohen's step N" explain in words what is being done. Things such as (A & B & 2) != 0 being equivalent to (-1)^((A-1)(B-1)/4) being negative are not entirely obvious... Remove the strange error dance and adjust variable names to what Cohen's book uses. Simplify various curly bits. ok jsing
2022-06-20Fix some bizarre indentation and line breaks.tb1-8/+7
2022-06-19Use uppercase for SUCCESS for consistencytb1-2/+2
2022-06-19None of these tests needs to link statically.tb2-4/+4
2022-06-19Drop bogus DPADD += ${LIBSSL}tb3-7/+6
2022-06-18Quick regression test that checks that BN_is_prime_fasttest_ex()tb2-1/+97
recognizes the primes in the primes[] table with and without trial division. Would have caught the bug fixed in bn_primes.c r1.9.
2022-06-18Fix prime recognition when doing trial divisionstb1-2/+2
If gcd(a, primes[i]) == 0 then a could still be a prime, namely in the case that a == primes[i], so check for that case as well. Problem noted by Martin Grenouilloux ok jsing
2022-06-15Switch to using TLS_INT instead of handrolling ittb1-3/+2
2022-06-10More %i vs %d cleanuptb7-20/+20
2022-06-08do not refuse valid IPv6 addresses in -X connect (HTTP CONNECT proxy)djm1-2/+2
support. Identified by Wilmer van der Gaast, ok millert@
2022-06-08KNF, mostly whitespace - no binary change on amd64tb1-22/+19
2022-06-07Fix format strings: change %i, %li, %lli to %d, %ld, %lld and switch totb1-18/+18
%zu for master_key_length, session_id_length and sid_ctx_length, which are now size_t.
2022-06-07Change the loop index from an unsigned int to size_t now that alltb1-2/+2
upper bounds are known to be size_t. ok jsing
2022-06-07Simplify another CBS_write_bytes() call in d2i_SSL_SESSION()tb1-5/+2
ok jsing
2022-06-07Switch sid_ctx_length in SSL, SSL_CTX and SSL_SESSION to a size_ttb1-4/+4
ok jsing
2022-06-07Use CBS_write_bytes() instead of manual unpacking of a CBS and assigningtb1-3/+5
length and using memcpy(). This also provides a missing overflow check (which is done by the only caller, however). ok jsing
2022-06-07Simplify various CBS_write_bytes() callstb3-13/+7
Now that session_id_length is a size_t, we can pass it directly to CBS_write_bytes() instead of using a temporary variable. ok jsing
2022-06-07Switch SSL_SESSION's session_id_length to a size_ttb1-2/+2
ok jsing
2022-06-07Add missing error check call in ssl3_get_new_session_ticket()tb1-4/+9
EVP_Digest() can fail, so handle failure appropriately and prepare switch of session_id_length to a size_t. ok jsing
2022-06-07Another small readability tweak: compare explicitly against 0 and NULL,tb1-4/+3
respectively ok jsing
2022-06-07Tweak readability of a test: compare tmp explicitly against 0 and droptb1-2/+2
redundant parentheses. ok jsing
2022-06-07Add a cast to SSL_SESSION_get_id() to indicate that session_id_lengthtb1-2/+2
is deliberately reduced to an unsigned int. Since the session_id is at most 32 bytes, this is not a concern. ok jsing
2022-06-07fix indenttb1-2/+2
2022-06-07Unindent and simplify remove_session_lock()tb1-21/+22
ok jsing (who informs me he had the same diff in his jungle)
2022-06-07Drop an unnecessary casttb1-2/+2
ok jsing
2022-06-07Simplify CBS_write_bytes() invocationtb1-5/+2
Now that master_key_length is a size_t, we no longer have to fiddle with data_len. We can rather pass a pointer to it to CBS_write_bytes(). ok jsing
2022-06-07The master_key_length can no longer be < 0tb1-2/+2
ok jsing
2022-06-07Switch the SSL_SESSION's master_key_length to a size_ttb1-2/+2
ok jsing
2022-06-07Add error checking to tls_session_secret_cb() callstb2-32/+49
Failure of this undocumented callback was previously silently ignored. Follow OpenSSL's behavior and throw an internal error (for lack of a better choice) if the callback failed or if it set the master_key_length to a negative number. Unindent the success path and clean up some strange idioms. ok jsing
2022-06-06Use SSL3_CK_VALUE_MASK instead of hardcoded 0xffff and remove sometb2-12/+6
SSLv2 remnants. ok jsing
2022-06-06Tweak comment describing the SSL_SESSION ASN.1tb1-4/+5
ok jsing
2022-06-06Minor style cleanup in ssl_txt.ctb1-23/+41
Wrap long lines and fix a bug where the wrong struct member was checked for NULL. ok jsing