openssl/crypto/bio
Neil Horman 4bad474746 embed bio_dgram_data inside bio_dgram_sctp_data
the sctp BIO implementation uses the generic BIO dgram implementation
under the covers for some operations.  However, the private data for
each bio is incongruous, leading to segfaults when doing things like
passing a dgram_sctp_ctrl operation to the underlying dgram_ctrl method.

Fix this by removing the common fields between the two strcutres and
embedding a bio_dgram_data as the first member of the
bio_dgram_sctp_data struct.  This allows implicit casting when that call
path is taken, avoiding any memory mis-use

Fixes #20643

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/22278)
2023-10-05 19:09:06 +02:00
..
bf_buff.c Copyright year updates 2023-09-07 09:59:15 +01:00
bf_lbuf.c Copyright year updates 2023-09-07 09:59:15 +01:00
bf_nbio.c
bf_null.c
bf_prefix.c
bf_readbuff.c
bio_addr.c Copyright year updates 2023-09-28 14:23:29 +01:00
bio_cb.c
bio_dump.c
bio_err.c
bio_lib.c Copyright year updates 2023-09-07 09:59:15 +01:00
bio_local.h Copyright year updates 2023-09-07 09:59:15 +01:00
bio_meth.c Copyright year updates 2023-09-07 09:59:15 +01:00
bio_print.c Fix typos found by codespell 2023-09-13 08:13:08 +02:00
bio_sock2.c
bio_sock.c
bss_acpt.c Copyright year updates 2023-09-07 09:59:15 +01:00
bss_bio.c
bss_conn.c Copyright year updates 2023-09-07 09:59:15 +01:00
bss_core.c
bss_dgram_pair.c Fix a failure in bio_dgram_test on the NonStop platform 2023-09-13 11:53:13 +01:00
bss_dgram.c embed bio_dgram_data inside bio_dgram_sctp_data 2023-10-05 19:09:06 +02:00
bss_fd.c
bss_file.c
bss_log.c Copyright year updates 2023-09-07 09:59:15 +01:00
bss_mem.c Copyright year updates 2023-09-07 09:59:15 +01:00
bss_null.c
bss_sock.c Copyright year updates 2023-09-28 14:23:29 +01:00
build.info
ossl_core_bio.c Copyright year updates 2023-09-07 09:59:15 +01:00