accf_data(9)

accf_data9

Buffer incoming connections until data arrives

Usage

options INET

options ACCEPT_FILTER_DATA

kldload accf_data

Overview

This is a filter to be placed on a socket that will be using accept() to receive incoming connections.

It prevents the application from receiving the connected descriptor via accept() until data arrives on the connection.

The ACCEPT_FILTER_DATA kernel option is also a module that can be enabled at runtime via kldload(8) if the INET option has been compiled into the kernel.

Examples

Assuming ACCEPT_FILTER_DATA has been included in the kernel config file or the accf_data module has been loaded, this will enable the data accept filter on the socket sok.

	struct accept_filter_arg afa;
	bzero(&afa, sizeof(afa));
	strcpy(afa.af_name, "dataready");
	setsockopt(sok, SOL_SOCKET, SO_ACCEPTFILTER, &afa, sizeof(afa));

History

The accept filter mechanism and the accf_data filter were introduced in FreeBSD 4.0.

Authors

This manual page and the filter were written by Alfred Perlstein.

From freebsd-manpages 6.0-5 in Debian 4.0 (Etch). Parsed by carta from the page's mdoc source.