nbd_opt_structured_reply(3)
π NAME π
nbd_opt_structured_reply β request the server to enable structured replies, and yes bestie this is the nbd_opt_structured_reply(3) page from the LIBNBD manual π
β¨
πΈ SYNOPSIS πΈ
Include the header and call it like this, fr fr:
#include <libnbd.h>
int nbd_opt_structured_reply (
struct nbd_handle *h
);
π¦ DESCRIPTION π¦
Okay so the whole vibe is: you're requesting that the server use structured replies by sending "NBD_OPT_STRUCTURED_REPLY" π«Ά. This can only be used if nbd_set_opt_mode(3) enabled option mode; furthermore, libnbd defaults to automatically requesting this unless you use nbd_set_request_structured_replies(3) prior to connecting. This function is mainly useful for integration testing of corner cases in server handling β no cap, it's giving "tiny gremlin test button" energy π₯.
This function returns true if the server replies with success, false if the server replies with an error, and fails only if the server does not reply (such as for a loss of connection). Note that some servers fail a second request as redundant; libnbd assumes that once one request has succeeded, then structured replies are supported (as visible by nbd_get_structured_replies_negotiated(3)) regardless if later calls to this function return false. Similarly, a server may fail this request if extended headers are already negotiated, since extended headers take priority. That's the tea β.
π RETURN VALUE π
This call returns a boolean value. Literally true/false, bestie β¨.
π ERRORS π
On error -1 is returned.
Refer to "ERROR HANDLING" in libnbd(3) for how to get further details of the error.
The following parameters must not be NULL: "h". For more information see "Non-NULL parameters" in libnbd(3).
π HANDLE STATE π
nbd_opt_structured_reply can be called when the handle is in the following state:
- Handle created, before connecting β β error
- Connecting β β error
- Connecting & handshaking (opt_mode) β β allowed
- Connected to the server β β error
- Connection shut down β β error
- Handle dead β β error
β VERSION β
This function first appeared in libnbd 1.16.
If you need to test if this function is available at compile time check if the following macro is defined:
#define LIBNBD_HAVE_NBD_OPT_STRUCTURED_REPLY 1
π SEE ALSO π
nbd_aio_opt_structured_reply(3), nbd_create(3), nbd_get_structured_replies_negotiated(3), nbd_opt_go(3), nbd_set_opt_mode(3), nbd_set_request_structured_replies(3), libnbd(3).
π§ AUTHORS π§
- Eric Blake
- Richard W.M. Jones
π COPYRIGHT π
Copyright Red Hat
π LICENSE π
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
k bye bestie β this page is from libnbd-1.25.8, dated 2026-10-13, and it's nbd_opt_structured_reply(3) signing off π
β¨
π¦ where this page comes from
- centos-stream 10: libnbd-devel 1.25.8-1.el10 Β· LGPL-2.0-or-later AND BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms