1KNET_LINK_ADD_ACL(3)     Kronosnet Programmer's Manual    KNET_LINK_ADD_ACL(3)
2
3
4

NAME

6       knet_link_add_acl - Add access list entry to an open link.
7
8

SYNOPSIS

10       #include <libknet.h>
11
12       int knet_link_add_acl(
13           knet_handle_t              knet_h,
14           knet_node_id_t             host_id,
15           uint8_t                    link_id,
16           struct sockaddr_storage   *ss1,
17           struct sockaddr_storage   *ss2,
18           check_type_t               type,
19           check_acceptreject_t       acceptreject
20       );
21

DESCRIPTION

23       knet_link_add_acl
24
25       knet_h - pointer to knet_handle_t
26
27       host_id - see knet_host_add(3)
28
29       link_id - see knet_link_set_config(3)
30
31       ss1 / ss2 / type / acceptreject - see typedef definitions for details
32
33       IMPORTANT: the order in which access lists are added is critical and it
34       is left to the user to add them in the right order. knet will  not  at‐
35       tempt to logically sort them.
36
37       For example: 1 - accept from 10.0.0.0/8 2 - reject from 10.0.0.1/32
38
39       is not the same as:
40
41       1 - reject from 10.0.0.1/32 2 - accept from 10.0.0.0/8
42
43       In  the  first  example, rule number 2 will never match because packets
44       from 10.0.0.1 will be accepted by rule number 1.
45

STRUCTURES

47       enum check_type_t {
48             CHECK_TYPE_ADDRESS;
49             CHECK_TYPE_MASK;
50             CHECK_TYPE_RANGE;
51       };
52
53       enum check_acceptreject_t {
54             CHECK_ACCEPT;
55             CHECK_REJECT;
56       };
57

RETURN VALUE

59       knet_link_add_acl returns 0 on success. -1 on error and errno is set.
60

SEE ALSO

62       knet_handle_remove_datafd(3), knet_handle_get_stats(3),
63       knet_host_add(3), knet_handle_pmtud_setfreq(3),
64       knet_handle_pmtud_get(3), knet_handle_crypto_use_config(3),
65       knet_host_get_id_by_host_name(3), knet_host_get_status(3),
66       knet_link_get_pong_count(3), knet_link_get_priority(3),
67       knet_handle_free(3), knet_handle_enable_sock_notify(3),
68       knet_handle_get_datafd(3), knet_recv(3), knet_link_get_ping_timers(3),
69       knet_log_get_subsystem_id(3), knet_host_remove(3),
70       knet_host_enable_status_change_notify(3), knet_strtoaddr(3),
71       knet_link_rm_acl(3), knet_send(3), knet_handle_enable_pmtud_notify(3),
72       knet_handle_get_transport_reconnect_interval(3),
73       knet_link_get_enable(3), knet_link_set_priority(3),
74       knet_log_set_loglevel(3), knet_handle_get_channel(3),
75       knet_link_get_config(3), knet_link_get_link_list(3),
76       knet_get_transport_list(3), knet_get_transport_id_by_name(3),
77       knet_log_get_loglevel_id(3), knet_handle_new_ex(3),
78       knet_host_set_name(3), knet_addrtostr(3), knet_handle_setfwd(3),
79       knet_get_compress_list(3), knet_host_set_policy(3),
80       knet_get_transport_name_by_id(3), knet_handle_enable_filter(3),
81       knet_handle_crypto_rx_clear_traffic(3), knet_handle_compress(3),
82       knet_link_get_status(3), knet_handle_add_datafd(3), knet_send_sync(3),
83       knet_log_get_loglevel_name(3), knet_handle_enable_access_lists(3),
84       knet_host_get_host_list(3), knet_host_get_policy(3),
85       knet_link_set_enable(3), knet_link_set_pong_count(3),
86       knet_log_get_subsystem_name(3), knet_host_get_name_by_host_id(3),
87       knet_link_clear_config(3), knet_log_get_loglevel(3),
88       knet_handle_new(3), knet_handle_pmtud_getfreq(3),
89       knet_handle_pmtud_set(3), knet_handle_clear_stats(3),
90       knet_link_set_config(3), knet_handle_crypto_set_config(3),
91       knet_handle_crypto(3), knet_get_crypto_list(3),
92       knet_handle_set_transport_reconnect_interval(3),
93       knet_link_clear_acl(3), knet_link_set_ping_timers(3),
94       knet_link_insert_acl(3)
95
97       Copyright (C) 2010-2023 Red Hat, Inc. All rights reserved.
98
99
100
101kronosnet                         2023-09-27              KNET_LINK_ADD_ACL(3)
Impressum