1KNET_LINK_GET_STATUS(3) Kronosnet Programmer's Manual KNET_LINK_GET_STATUS(3)
2
3
4
6 knet_link_get_status - Get the status (and statistics) for a link.
7
8
10 #include <libknet.h>
11
12 int knet_link_get_status(
13 knet_handle_t knet_h,
14 knet_node_id_t host_id,
15 uint8_t link_id,
16 struct knet_link_status *status,
17 size_t struct_size
18 );
19
21 knet_link_get_status
22
23 knet_h - pointer to knet_handle_t
24
25 host_id - see knet_host_add(3)
26
27 link_id - see knet_link_set_config(3)
28
29 status - pointer to knet_link_status struct
30
31 struct_size - max size of knet_link_status - allows library to add
32 fields without ABI change. Returned structure will be truncated to this
33 length and .size member indicates the full size.
34
36 Status of a knet link as returned from knet_link_get_status()
37
38 struct knet_link_status {
39 size_t size;
40 char src_ipaddr[KNET_MAX_HOST_LEN];
41 char src_port[KNET_MAX_PORT_LEN];
42 char dst_ipaddr[KNET_MAX_HOST_LEN];
43 char dst_port[KNET_MAX_PORT_LEN];
44 uint8_t enabled;
45 uint8_t connected;
46 uint8_t dynconnected;
47 unsigned long long latency;
48 struct timespec pong_last;
49 unsigned int mtu;
50 unsigned int proto_overhead;
51 struct stats;
52 };
53
55 knet_link_get_status returns 0 on success -1 on error and errno is set.
56
58 knet_handle_remove_datafd(3), knet_handle_get_stats(3),
59 knet_host_add(3), knet_handle_pmtud_setfreq(3),
60 knet_handle_pmtud_get(3), knet_handle_crypto_use_config(3),
61 knet_host_get_id_by_host_name(3), knet_host_get_status(3),
62 knet_link_add_acl(3), knet_link_get_pong_count(3),
63 knet_link_get_priority(3), knet_handle_free(3),
64 knet_handle_enable_sock_notify(3), knet_handle_get_datafd(3),
65 knet_recv(3), knet_link_get_ping_timers(3),
66 knet_log_get_subsystem_id(3), knet_host_remove(3),
67 knet_host_enable_status_change_notify(3), knet_strtoaddr(3),
68 knet_link_rm_acl(3), knet_send(3), knet_handle_enable_pmtud_notify(3),
69 knet_handle_get_transport_reconnect_interval(3),
70 knet_link_get_enable(3), knet_link_set_priority(3),
71 knet_log_set_loglevel(3), knet_handle_get_channel(3),
72 knet_link_get_config(3), knet_link_get_link_list(3),
73 knet_get_transport_list(3), knet_get_transport_id_by_name(3),
74 knet_log_get_loglevel_id(3), knet_handle_new_ex(3),
75 knet_host_set_name(3), knet_addrtostr(3), knet_handle_setfwd(3),
76 knet_get_compress_list(3), knet_host_set_policy(3),
77 knet_get_transport_name_by_id(3), knet_handle_enable_filter(3),
78 knet_handle_crypto_rx_clear_traffic(3), knet_handle_compress(3),
79 knet_handle_add_datafd(3), knet_send_sync(3),
80 knet_log_get_loglevel_name(3), knet_handle_enable_access_lists(3),
81 knet_host_get_host_list(3), knet_host_get_policy(3),
82 knet_link_set_enable(3), knet_link_set_pong_count(3),
83 knet_log_get_subsystem_name(3), knet_host_get_name_by_host_id(3),
84 knet_link_clear_config(3), knet_log_get_loglevel(3),
85 knet_handle_new(3), knet_handle_pmtud_getfreq(3),
86 knet_handle_pmtud_set(3), knet_handle_clear_stats(3),
87 knet_link_set_config(3), knet_handle_crypto_set_config(3),
88 knet_handle_crypto(3), knet_get_crypto_list(3),
89 knet_handle_set_transport_reconnect_interval(3),
90 knet_link_clear_acl(3), knet_link_set_ping_timers(3),
91 knet_link_insert_acl(3)
92
94 Copyright (C) 2010-2021 Red Hat, Inc. All rights reserved.
95
96
97
98kronosnet 2021-11-15 KNET_LINK_GET_STATUS(3)