SSL_GET_RBIO(3)

πŸ“¦ version 4.4.0, in alpine 3.24, arch rolling

πŸ’… SSL_GET_RBIO πŸ’…

okay bestie, welcome to the libssl girlies β€” this one's a tiny little cutie from the OpenSSL corner of the universe, and it's honestly so straightforward you're gonna slay it.


✨ NAME ✨

SSL_get_rbio, SSL_get_wbio β€” get the BIO that's linked to an SSL object πŸŽ€


πŸ¦‹ SYNOPSIS πŸ¦‹

library β€œlibssl” libcrypto

#include <openssl/ssl.h>

BIO *
SSL_get_rbio(SSL *ssl);

BIO *
SSL_get_wbio(SSL *ssl);

🌸 DESCRIPTION 🌸

okay so picture this: your SSL object has a read channel and a write channel, and they're not necessarily the same thing, right? iconic behavior, honestly.

SSL_get_rbio() hands you back a pointer to the BIO for the read channel, and SSL_get_wbio() hands you back a pointer to the BIO for the write channel. two separate channels, two separate BIOs, they can totally be different. no cap.

⚠️ but listen β€” the reference count of the BIO is NOT incremented. so like, don't go freeing it and then acting surprised, bestie. it's giving "borrowed pointer energy." πŸ’€

πŸ‘‘ RETURN VALUES πŸ‘‘

here's what you might get back, fr fr:

  • NULL β€” absolutely no BIO was connected to the SSL object. empty. void. nothing. 😭
  • Any other pointer β€” that's the BIO linked to ssl. go off, it's yours (to look at, not to own, remember what we said about refcounts πŸ’…).

πŸ”₯ SEE ALSO πŸ”₯


⭐ HISTORY ⭐

SSL_get_rbio() and SSL_get_wbio() first appeared in SSLeay 0.6.0 β€” ancient times, main character origin story β€” and they've been available since OpenBSD 2.4. periodt. πŸ’œ


and that's the whole page, bestie 🫢 go forth and check your rbios responsibly ✨

this little legend comes to you from Debian, dated June 8, 2025 β€” mwah, ily, bye πŸ’–πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from