nbd_connect_vsock(3)
π nbd_connect_vsock(3) β the libnbd girlies' guide π
okay so this is a page from the LIBNBD manual, and we're talking about nbd_connect_vsock, bestie. it's giving "connect me to the host machine" energy π«Ά
β¨ NAME β¨
nbd_connect_vsock β connect to an NBD server over the AF_VSOCK protocol π
π SYNOPSIS π
#include <libnbd.h>
int nbd_connect_vsock (
struct nbd_handle *h, uint32_t cid, uint32_t port
);
π¦ DESCRIPTION π¦
so this one connects synchronously over the AF_VSOCK protocol, going from a virtual machine to an NBD server β which is usually running on the host. like, the way that vsock is literally made for this π§
the cid and port parameters are the server address, no cap. usually cid should be 2 (that's the "connect to the host" one, iconic), and port might be 10809 or another port number that your host administrator assigned to you.
heads up bestie π β not all systems supportAF_VSOCK. to figure out if libnbd was built on a system with vsock support, go look atnbd_supports_vsock(3).
β RETURN VALUE β
if the call is successful, the function returns 0. slay. β
πΈ ERRORS πΈ
on error, -1 is returned. π
refer to "ERROR HANDLING" in libnbd(3) for how to get further details of the error.
these parameters must not be NULL: h. for more info see "Non-NULL parameters" in libnbd(3). (like, don't pass a null handle, that's not the vibe π)
π₯ NOTES π₯
Blocking connect call
this call returns when the connection has been made β it blocks, periodt.
by default it proceeds all the way to transmission phase, but nbd_set_opt_mode(3) can be used if you want manual control over the option negotiation that happens before transmission phase. iykyk π
π HANDLE STATE π
nbd_connect_vsock can be called when the handle is in the following state:
- Handle created, before connecting β β allowed
- Connecting β β error
- Connecting & handshaking (
opt_mode) β β error - Connected to the server β β error
- Connection shut down β β error
- Handle dead β β error
so basically: only when the handle is fresh and hasn't started connecting yet. main character timing only πβ¨
π VERSION π
this function first appeared in libnbd 1.2.
if you need to test if this function is available at compile time, check if the following macro is defined:
#define LIBNBD_HAVE_NBD_CONNECT_VSOCK 1
π SEE ALSO π
nbd_aio_connect_vsock(3), nbd_create(3), nbd_set_opt_mode(3), nbd_supports_vsock(3), libnbd(3), vsock(7).
(the whole friend group, fr fr π«Ά)
π 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
okay that's the whole page, bestie β mwah π this was libnbd-1.25.8, dated 2026-10-13, and it's the nbd_connect_vsock(3) page. go connect to something iconic π¦β¨
π¦ 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