KNET_HAN...UD_NOTIFY(3)
π knet_handle_enable_pmtud_notify β from the Kronosnet Programmer's Manual π
okay bestie, listen, this one is from the Kronosnet Programmer's Manual and it's the glow-up page for knet_handle_enable_pmtud_notify(3) β¨ like, the whole thing, all of it, in the <hotpink>knet_handle_enable_pmtud_notify(3)</hotpink> corner of the library. it's giving "my MTU changed and I need to know" energy and honestly? obsessed. π¦
πΈ NAME πΈ
knet_handle_enable_pmtud_notify β install a callback to receive PMTUd changes π
β¨ SYNOPSIS β¨
#include <libknet.h>
int knet_handle_enable_pmtud_notify(
knet_handle_t knet_h,
void *pmtud_notify_fn_private_data,
void(*)(void *private_data, unsigned int data_mtu) pmtud_notify_fn
);
π DESCRIPTION π
so like, knet_handle_enable_pmtud_notify is the function. that's the whole vibe. no cap. π
knet_hβ pointer toknet_handle_t. your main character handle, literally the whole identity of the thing you're talking to. πpmtud_notify_fn_private_dataβ avoidpointer to data that can be used to identify the callback. your little name tag for the callback bestie so you know which one just showed up to the party. πpmtud_notify_fnβ a callback function that gets invoked every single time a path MTU size change is detected. β¨ this is the whole point. libknet uses it to notify you of the data MTU, which is the max value that can be sent onwire without fragmentation. and here's the tea: the data MTU will always be lower than the real link MTU, because it accounts for protocol overhead, the knet packet header, and (if configured) crypto overhead. so yeah, she's smaller but she's the one you can actually trust to send. π«Ά
β οΈ real talk, bestie β this function MUST NEVER block or add substantial delays. like, ever. do not be the one holding up the group chat. π
π₯ RETURN VALUE π₯
knet_handle_enable_pmtud_notify returns 0 on success, -1 on error, and errno is set. slay. that's it. that's the number. π
π SEE ALSO π
the whole friend group, fr fr, every single one of them tagged in the group chat π:
knet_handle_remove_datafd(3)knet_handle_get_stats(3)knet_host_add(3)knet_handle_pmtud_setfreq(3)knet_handle_pmtud_get(3)knet_handle_crypto_use_config(3)knet_host_get_id_by_host_name(3)knet_host_get_status(3)knet_link_add_acl(3)knet_link_get_pong_count(3)knet_link_get_priority(3)knet_handle_free(3)knet_handle_enable_sock_notify(3)knet_handle_get_datafd(3)knet_recv(3)knet_link_get_ping_timers(3)knet_log_get_subsystem_id(3)knet_host_remove(3)knet_host_enable_status_change_notify(3)knet_strtoaddr(3)knet_link_rm_acl(3)knet_send(3)knet_get_crypto_cipher_list(3)knet_handle_get_transport_reconnect_interval(3)knet_link_get_enable(3)knet_link_set_priority(3)knet_log_set_loglevel(3)knet_handle_get_channel(3)knet_link_get_config(3)knet_link_get_link_list(3)knet_get_crypto_hash_list(3)knet_get_transport_list(3)knet_get_transport_id_by_name(3)knet_log_get_loglevel_id(3)knet_handle_new_ex(3)knet_host_set_name(3)knet_addrtostr(3)knet_handle_setfwd(3)knet_get_compress_list(3)knet_host_set_policy(3)knet_get_transport_name_by_id(3)knet_handle_enable_filter(3)knet_handle_crypto_rx_clear_traffic(3)knet_handle_compress(3)knet_link_get_status(3)knet_handle_add_datafd(3)knet_send_sync(3)knet_log_get_loglevel_name(3)knet_handle_enable_access_lists(3)knet_host_get_host_list(3)knet_host_get_policy(3)knet_link_set_enable(3)knet_link_set_pong_count(3)knet_log_get_subsystem_name(3)knet_host_get_name_by_host_id(3)knet_link_clear_config(3)knet_log_get_loglevel(3)knet_handle_new(3)knet_handle_pmtud_getfreq(3)knet_handle_pmtud_set(3)knet_handle_clear_stats(3)knet_link_set_config(3)knet_handle_crypto_set_config(3)knet_handle_crypto(3)knet_get_crypto_list(3)knet_handle_set_transport_reconnect_interval(3)knet_link_clear_acl(3)knet_link_set_ping_timers(3)knet_handle_setprio_dscp(3)knet_link_insert_acl(3)
π COPYRIGHT π
Copyright (C) 2010-2026 Red Hat, Inc. All rights reserved.
like yes, all rights reserved, periodt. π
okay that's the whole page bestie, you ate it up, no crumbs left πβ¨ and just so you know where this came from: it's kronosnet, dated 2026-07-20, filed under KNET_HAN...UD_NOTIFY(3) β yes the name is truncated, the manpage system did that, not us, we would never ππ
mwah, go forth and get your MTU notifications, iykyk π§π
π¦ where this page comes from
- fedora 43: libknet1-devel 1.35-1.fc43 Β· LGPL-2.1-or-later
- fedora 43: libknet1-devel 1.35-1.fc43 Β· LGPL-2.1-or-later
- fedora 44: libknet1-devel 1.35-1.fc44 Β· LGPL-2.1-or-later
- fedora 44: libknet1-devel 1.35-1.fc44 Β· LGPL-2.1-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms