Retire prev_bio
authortb <tb@openbsd.org>
Mon, 28 Nov 2022 07:50:00 +0000 (07:50 +0000)
committertb <tb@openbsd.org>
Mon, 28 Nov 2022 07:50:00 +0000 (07:50 +0000)
commit45d9c5e8b80d3a4047d2b0610cca05fba6b023de
tree415d4c77f512c3aacbff9d27f29cd34e7cfb616b
parent4bd78b6ffdece10b1f622609538b7c552addd673
Retire prev_bio

While BIO chains are doubly linked lists, nothing has ever made use of this
fact internally. Even libssl has failed to maintain prev_bio properly in
two places for a long time. When BIO was made opaque, the opportunity to
fix that was missed. Instead, BIO_set_next() now allows breaking the lists
from outside the library, which freerdp has long done.

Problem found by schwarze while trying to document BIO_set_next().

schwarze likes the idea
ok jsing
lib/libcrypto/bio/bio_lib.c
lib/libcrypto/bio/bio_local.h