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

FreeBSD Manual Pages

  
 
  

home | help
KNET_HANDLE_ENABLE_SOCK_NKronosnet ProgrammerKNET_HANDLE_ENABLE_SOCK_NOTIFY(3)

NAME
       knet_handle_enable_sock_notify  - Register a callback to	receive	socket
       events.

SYNOPSIS
       #include	<libknet.h>

       int knet_handle_enable_sock_notify(
	   knet_handle_t  knet_h,
	   void		 *sock_notify_fn_private_data,
	   void(*)(void	*private_data, int datafd, int8_t channel, uint8_t tx_rx, int error, int errorno)  sock_notify_fn
       );

DESCRIPTION
       knet_handle_enable_sock_notify

       knet_h -	pointer	to knet_handle_t

       sock_notify_fn_private_data void	pointer	to data	that can  be  used  to
       identify	the callback.

       sock_notify_fn  A callback function that	is invoked every time a	socket
       in the datafd pool will report an error (-1) or an end of read (0) (see
       socket.7).  This	 function  MUST	NEVER block or add substantial delays.
       The callback is invoked in an internal unlocked area to allow calls  to
       knet_handle_add_datafd/knet_handle_remove_datafd	 to  swap/replace  the
       bad fd. if both err and errno are 0, it means that the socket  has  re-
       ceived a	0 byte packet (EOF?). The callback function must either	remove
       the fd from knet	(by calling knet_handle_remove_fd()) or	dup a  new  fd
       in its place. Failure to	do this	can cause problems.

RETURN VALUE
       knet_handle_enable_sock_notify returns 0	on success -1 on error and er-
       rno 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_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_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_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_link_insert_acl(3)

COPYRIGHT
       Copyright (C) 2010-2020 Red Hat,	Inc. All rights	reserved.

kronosnet			  2020-10-19 KNET_HANDLE_ENABLE_SOCK_NOTIFY(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_enable_sock_notify&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help