gensio_alloc_channel(3)
π gensio_alloc_channel β Library Functions Manual π
okay bestie, so like... this one lives in section 3 of the manual, and it's literally called gensio_alloc_channel and it's about making a whole new channel. yes. a channel. on a gensio that can do channels. let's get into it π«Ά
β¨ NAME β¨
gensio_alloc_channel β bestie, it creates a brand new channel on a channel-capable gensio. that's the whole vibe. π
πΈ SYNOPSIS πΈ
#include <gensio/gensio.h>
int gensio_alloc_channel(struct gensio *io, const char * const args[],
gensio_event cb, void *user_data,
struct gensio **new_io);
like look at that signature. she's serving. copy it exactly, no cap. π
π¦ DESCRIPTION π¦
so gensio_alloc_channel creates a new channel on a channel-capable gensio. periodt. π«
and here's the thing β what "channel" even means here, and what args even means, is not a universal thing. it depends entirely on the particular gensio you're working with, so go check that particular gensio class over in gensio(5). iykyk. π
π¨ not me dropping a lowkey important detail: the new gensio that gets created will be closed, and you must call gensio_open on it to actually start it up. it does NOT start itself. she's sitting there waiting for you to open her. do not forget. do not skip this. fr fr. π
π RETURN VALUES π
- Zero β returned on success. slay. β
- a gensio error β returned on failure. that's the failure vibe. π
π SEE ALSO π
go read these too, bestie, they're part of the lore:
and that's the whole page, bestie πβ¨ this one was dated 27 Feb 2019 and it came out of the library functions manual, and honestly? iconic. main character energy from a function that just makes channels. go call gensio_open on your new gensio or it's giving nothing. π¦πΈπ
π¦ where this page comes from
- alpine 3.22: gensio-doc 2.8.14-r0 Β· GPL-2.0-only AND LGPL-2.1-only AND Apache-2.0
- alpine 3.23: gensio-doc 2.8.14-r0 Β· GPL-2.0-only AND LGPL-2.1-only AND Apache-2.0
- alpine 3.24: gensio-doc 2.8.14-r0 Β· GPL-2.0-only AND LGPL-2.1-only AND Apache-2.0
- arch rolling: gensio 3.0.4-1 Β· GPL
- debian bookworm: libgensio-dev 2.6.2-4 Β· GPL-2.0-only
- debian trixie: libgensio-dev 2.8.13-7 Β· GPL-2.0-only
- epel 9: libgensio-devel 2.8.15-1.el9 Β· GPL-2.0-only AND LGPL-2.1-only AND Apache-2.0
- fedora 43: libgensio-devel 2.8.15-5.fc43 Β· GPL-2.0-only AND LGPL-2.1-only AND Apache-2.0
- fedora 43: libgensio-devel 2.8.15-5.fc43 Β· GPL-2.0-only AND LGPL-2.1-only AND Apache-2.0
- fedora 43: libgensio-devel 3.0.4-1.fc43 Β· GPL-2.0-only AND LGPL-2.1-only AND Apache-2.0
- fedora 43: libgensio-devel 3.0.4-1.fc43 Β· GPL-2.0-only AND LGPL-2.1-only AND Apache-2.0
- fedora 44: libgensio-devel 3.0.2-1.fc44 Β· GPL-2.0-only AND LGPL-2.1-only AND Apache-2.0
- fedora 44: libgensio-devel 3.0.2-1.fc44 Β· GPL-2.0-only AND LGPL-2.1-only AND Apache-2.0
- fedora 44: libgensio-devel 3.0.4-1.fc44 Β· GPL-2.0-only AND LGPL-2.1-only AND Apache-2.0
- fedora 44: libgensio-devel 3.0.4-1.fc44 Β· GPL-2.0-only AND LGPL-2.1-only AND Apache-2.0
- nixos 26.05: gensio 3.0.2
- nixpkgs unstable: gensio 3.0.2
- opensuse-leap 16.0: gensio-devel 2.8.2-bp160.1.13 Β· Apache-2.0 AND GPL-2.0-only AND LGPL-2.1-only
- opensuse-leap 16.0: gensio-devel 2.8.2-bp160.1.13 Β· Apache-2.0 AND GPL-2.0-only AND LGPL-2.1-only
- opensuse-leap 16.0: gensio-devel 2.8.2-bp160.1.13 Β· Apache-2.0 AND GPL-2.0-only AND LGPL-2.1-only
- opensuse-leap 16.0: gensio-devel 2.8.2-bp160.1.13 Β· Apache-2.0 AND GPL-2.0-only AND LGPL-2.1-only
- ubuntu jammy: libgensio-dev 2.3.5-1build2 Β· GPL-2.0-only
- ubuntu noble: libgensio-dev 2.8.2-6.1build1 Β· GPL-2.0-only
- ubuntu questing: libgensio-dev 2.8.13-7
- ubuntu resolute: libgensio-dev 3.0.0-1build1 Β· GPL-2.0-only
- ubuntu stonking: libgensio-dev 3.0.0-1ubuntu1 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms