Scroll to navigation

knet_handle_enable_access_lists(3) Kronosnet Programmer's Manual knet_handle_enable_access_lists(3)

NAME

knet_handle_enable_access_lists - Enable or disable usage of access lists (default: off)

SYNOPSIS

#include <libknet.h>

int knet_handle_enable_access_lists(
    knet_handle_t  knet_h,
    unsigned int   enabled
);

DESCRIPTION

knet_handle_enable_access_lists

knet_h - pointer to knet_handle_t

enable - set to 1 to use access lists, 0 to disable access_lists.

access lists are bound to links. There are 2 types of links: 1) point to point, where both source and destinations are well known at configuration time. 2) open links, where only the source is known at configuration time.

knet will automatically generate access lists for point to point links.

For open links, knet provides 4 API calls to manipulate access lists: knet_link_add_acl(3), knet_link_rm_acl(3), knet_link_insert_acl(3) and knet_link_clear_acl(3). Those API calls will work exclusively on open links as they are of no use on point to point links.

knet will not enforce any access list unless specifically enabled by knet_handle_enable_access_lists(3).

From a security / programming perspective we recommend:

create the knet handle

enable access lists

configure hosts and links

configure access lists for open links

RETURN VALUE

knet_handle_enable_access_lists returns 0 on success -1 on error and errno is set.

SEE ALSO

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_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_handle_enable_pmtud_notify(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_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_compress(3), knet_link_get_status(3), knet_handle_add_datafd(3), knet_send_sync(3), knet_log_get_loglevel_name(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(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_link_insert_acl(3)

COPYRIGHT

Copyright (C) 2010-2020 Red Hat, Inc. All rights reserved.
2020-04-23 kronosnet