summaryrefslogtreecommitdiffstats
path: root/sshbuf.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* upstream: Reorder calloc argumentstobias@openbsd.org2024-08-151-3/+3
| | | | | | | | | | | | The first argument should be the amount, the second argument should be the element size. Fixing this also silences some gcc compiler warnings for portable. Spotted with Benny Baumann (BenBE at geshi dot org). ok djm@ OpenBSD-Commit-ID: 711ad6f7bd7fb48bf52208f2cf9f108cddb6d41a
* upstream: Extend sshbuf validationtobias@openbsd.org2024-08-151-2/+4
| | | | | | | | | | | | | | | | Multiple sshbuf structs can be linked through a parent/child relationship. Make sure that a single sshbuf cannot be its own parent. If this would ever happen, it would result in reference counting issues. This is a cheap way of testing this with very little overhead. It does not detect A->B->A linkages though for performance reason and the fact that it takes a programming error for this to occur anyway. Authored with Benny Baumann (BenBE at geshi dot org). ok djm@ OpenBSD-Commit-ID: fb3fa9ee2cad3c7e842ebadfd7f5db220c4aaf16
* upstream: Use freezero for better readabilitytobias@openbsd.org2024-08-151-5/+3
| | | | | | | | | It has the same meaning as the current pair of calling explicit_bzero and free. Spotted with Benny Baumann (BenBE at geshi dot org). ok djm@ OpenBSD-Commit-ID: 939fbe9ccf52d0d48c5fa53694d6f3bb9927970c
* upstream: Fix typo in commenttobias@openbsd.org2024-08-151-2/+2
| | | | | | | | Spotted with Benny Baumann (BenBE at geshi dot org). ok djm@ OpenBSD-Commit-ID: 829160ac8ef3ad3409695ce3a3ade835061cae57
* upstream: make struct sshbuf privatedjm@openbsd.org2022-12-041-2/+25
| | | | | | and remove an unused field; ok dtucker OpenBSD-Commit-ID: c7a3d77c0b8c153d463398606a8d57569186a0c3
* upstream: revert previous; it was broken (spotted by Theo)djm@openbsd.org2022-05-251-12/+12
| | | | OpenBSD-Commit-ID: 457c79afaca2f89ec2606405c1059b98b30d8b0d
* upstream: make SSHBUF_DBG/SSHBUF_TELL (off by default and only enableddjm@openbsd.org2022-05-251-12/+12
| | | | | | via #define) dump to stderr rather than stdout OpenBSD-Commit-ID: 10298513ee32db8390aecb0397d782d68cb14318
* upstream: two defensive changes from Tobias Stoeckmann via GHPR287djm@openbsd.org2022-04-121-3/+6
| | | | | | | | | | enforce stricter invarient for sshbuf_set_parent() - never allow a buffer to have a previously-set parent changed. In sshbuf_reset(), if the reallocation fails, then zero the entire buffer and not the (potentially smaller) default initial alloc size. OpenBSD-Commit-ID: 14583203aa5d50ad38d2e209ae10abaf8955e6a9
* upstream: change explicit_bzero();free() to freezero()jsg@openbsd.org2020-02-281-3/+2
| | | | | | | | | | While freezero() returns early if the pointer is NULL the tests for NULL in callers are left to avoid warnings about passing an uninitialised size argument across a function boundry. ok deraadt@ djm@ OpenBSD-Commit-ID: 2660fa334fcc7cd05ec74dd99cb036f9ade6384a
* upstream: Replace all calls to signal(2) with a wrapper arounddtucker@openbsd.org2020-01-231-2/+2
| | | | | | | | sigaction(2). This wrapper blocks all other signals during the handler preventing races between handlers, and sets SA_RESTART which should reduce the potential for short read/write operations. OpenBSD-Commit-ID: 5e047663fd77a40d7b07bdabe68529df51fd2519
* upstream: make grandparent-parent-child sshbuf chains robust todjm@openbsd.org2018-11-161-7/+10
| | | | | | | use-after-free faults if the ancestors are freed before the descendents. Nothing in OpenSSH uses this deallocation pattern. Reported by Jann Horn OpenBSD-Commit-ID: d93501d1d2734245aac802a252b9bb2eccdba0f2
* upstream: remove legacy buffer API emulation layer; ok djm@markus@openbsd.org2018-07-101-20/+2
| | | | OpenBSD-Commit-ID: 2dd5dc17cbc23195be4299fa93be2707a0e08ad9
* upstream commitdjm@openbsd.org2017-06-071-3/+3
| | | | | | | unconditionally zero init size of buffer; ok markus@ deraadt@ Upstream-ID: 218963e846d8f26763ba25afe79294547b99da29
* upstream commitderaadt@openbsd.org2017-06-011-8/+8
| | | | | | | | | Switch to recallocarray() for a few operations. Both growth and shrinkage are handled safely, and there also is no need for preallocation dances. Future changes in this area will be less error prone. Review and one bug found by markus Upstream-ID: 822d664d6a5a1d10eccb23acdd53578a679d5065
* upstream commitmarkus@openbsd.org2017-05-271-1/+4
| | | | | | sshbuf_consume: reset empty buffer; ok djm@ Upstream-ID: 0d4583ba57f69e369d38bbd7843d85cac37fa821
* upstream commitdjm@openbsd.org2016-11-291-33/+43
| | | | | | | split allocation out of sshbuf_reserve() into a separate sshbuf_allocate() function; ok markus@ Upstream-ID: 11b8a2795afeeb1418d508a2c8095b3355577ec2
* upstream commitderaadt@openbsd.org2016-09-121-4/+4
| | | | | | | | Add MAXIMUM(), MINIMUM(), and ROUNDUP() to misc.h, then use those definitions rather than pulling <sys/param.h> and unknown namespace pollution. ok djm markus dtucker Upstream-ID: 712cafa816c9f012a61628b66b9fbd5687223fb8
* upstream commitdjm@openbsd.org2016-01-131-5/+5
| | | | | | | use explicit_bzero() more liberally in the buffer code; ok deraadt Upstream-ID: 0ece37069fd66bc6e4f55eb1321f93df372b65bf
* upstream commitmmcc@openbsd.org2015-12-181-5/+3
| | | | | | | | Remove NULL-checks before sshbuf_free(). ok djm@ Upstream-ID: 5ebed00ed5f9f03b119a345085e8774565466917
* upstream commitdjm@openbsd.org2015-10-061-2/+2
| | | | | | some more bzero->explicit_bzero, from Michael McConville Upstream-ID: 17f19545685c33327db2efdc357c1c9225ff00d0
* upstream commitderaadt@openbsd.org2015-01-261-2/+2
| | | | | Reduce use of <sys/param.h> and transition to <limits.h> throughout. ok djm markus
* - (djm) [defines.h sshbuf.c] Move __predict_true|false to defines.h andDamien Miller2014-09-021-10/+0
| | | | conditionalise to avoid duplicate definition.
* - deraadt@cvs.openbsd.org 2014/06/25 14:16:09Damien Miller2014-07-021-1/+2
| | | | | | [sshbuf.c] unblock SIGSEGV before raising it ok djm
* - (djm) [sshbuf.c] need __predict_falseDamien Miller2014-05-151-0/+10
|
* - (djm) [Makefile.in configure.ac sshbuf-getput-basic.c]Damien Miller2014-05-151-1/+1
| | | | [sshbuf-getput-crypto.c sshbuf.c] compilation and portability fixes
* - djm@cvs.openbsd.org 2014/04/30 05:29:56Damien Miller2014-05-151-0/+405
[bufaux.c bufbn.c bufec.c buffer.c buffer.h sshbuf-getput-basic.c] [sshbuf-getput-crypto.c sshbuf-misc.c sshbuf.c sshbuf.h ssherr.c] [ssherr.h] New buffer API; the first installment of the conversion/replacement of OpenSSH's internals to make them usable as a standalone library. This includes a set of wrappers to make it compatible with the existing buffer API so replacement can occur incrementally. With and ok markus@ Thanks also to Ben Hawkes, David Tomaschik, Ivan Fratric, Matthew Dempsky and Ron Bowes for a detailed review.