SSL_GET_RBIO(3SSL)

πŸ’– SSL_GET_RBIO πŸ’–

okay bestie, gather round, because today we're talking about SSL_get_rbio and SSL_get_wbio β€” two lil functions from the OpenSSL library (yep, this is from the 3SSL manual section) that hand you back the BIOs your SSL object is chillin' with. it's giving "peek behind the curtain" and honestly? obsessed. πŸ¦‹


✨ NAME ✨

SSL_get_rbio, SSL_get_wbio β€” get the BIO linked to an SSL object πŸ’…


🌸 SYNOPSIS 🌸

#include <openssl/ssl.h>

BIO *SSL_get_rbio(SSL *ssl);
BIO *SSL_get_wbio(SSL *ssl);

πŸŽ€ DESCRIPTION πŸŽ€

so like. SSL_get_rbio() and SSL_get_wbio() return pointers to the BIOs for the read channel and the write channel respectively. and here's the plot twist bestie β€” those two can be different BIOs. yes really. read and write living separate lives, and that's valid fr fr. 🫢

one thing though, and this is the important part, no cap: the reference count of the BIO is not incremented. so don't go freeing it thinking you own it now. you don't. it's on loan. πŸ™ˆ


πŸ‘‘ RETURN VALUES πŸ‘‘

here's what can come back at you:

  • NULL β€” no BIO was connected to the SSL object. literally nothing there. main character energy of an empty room πŸ’€
  • any other pointer β€” the BIO linked to ssl. slay, it exists 🌈

πŸ”₯ SEE ALSO πŸ”₯


Copyright 2000-2016 The OpenSSL Project Authors. All Rights Reserved.

Licensed under the Apache License 2.0 (the "License"). You may not use this file except in compliance with the License. You can obtain a copy in the file LICENSE in the source distribution or at <https://www.openssl.org/source/license.html>.


and that's the whole vibe check, bestie ✨ this was OpenSSL version 4.0.3, dated 2026-09-29 β€” go forth and read your BIOS responsibly, and remember: you don't own that pointer, you're just borrowing it πŸŽ€πŸ’–πŸŒΈ

πŸ“¦ where this page comes from