Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
knet_handle_new_ex(3)	 Kronosnet Programmer's	Manual	 knet_handle_new_ex(3)

NAME
       knet_handle_new_ex - create a new instance of a knet handle

SYNOPSIS
       #include	<libknet.h>

       knet_handle_t knet_handle_new_ex(
	   knet_node_id_t  host_id,
	   int		   log_fd,
	   uint8_t	   default_log_level,
	   uint64_t	   flags
       );

DESCRIPTION
       knet_handle_new_ex

       host_id - Each host in a	knet is	identified with	a unique ID. when cre-
       ating a new handle local	host_id	must be	specified (0 to	UINT16_MAX are
       all  valid). It is the user's responsibility to check that the value is
       unique, or bad things might happen.

       log_fd -	Write file descriptor. If set to a value > 0, it will be  used
       to write	log packets from libknet to the	application. Setting to	0 will
       disable logging from libknet. It	is possible to enable logging  at  any
       given  time  (see  logging  API).  Make	sure  to either	read from this
       filedescriptor properly and/or mark it O_NONBLOCK, otherwise if the  fd
       becomes	full,  libknet	could  block. It is strongly encouraged	to use
       pipes (ex: pipe(2) or pipe2(2)) for logging fds due to the  atomic  na-
       ture  of	 writes	between	fds. See also libknet test suite for reference
       and guidance.

       default_log_level - If logfd is specified, it will initialize all  sub-
       systems to log at default_log_level value. (see logging API)

       flags   -  bitwise  OR  of  some	 of  the  following  flags:  KNET_HAN-
       DLE_FLAG_PRIVILEGED: use	privileged operations setting up the  communi-
       cation  sockets.	 If  disabled,	failure	to acquire large enough	socket
       buffers is ignored but logged. Inadequate buffers lead to poor  perfor-
       mance.

RETURN VALUE
       on  success,  a	new knet_handle_t is returned. on failure, NULL	is re-
       turned and errno	is set.	knet-specific  errno  values:  ENAMETOOLONG  -
       socket  buffers	couldn't be set	big enough and KNET_HANDLE_FLAG_PRIVI-
       LEGED was specified ERANGE - buffer size	readback  returned  unexpected
       type

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_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_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(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.

kronosnet			  2020-04-23		 knet_handle_new_ex(3)

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUE | SEE ALSO | COPYRIGHT

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=knet_handle_new_ex&sektion=3&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help