.\" commit ea02f9411d9faa3553ed09ce0ec9f00ceae9885e
.\" Author: Michal Sekletar <msekleta@redhat.com>
.\"
-.TH SOCKET 7 2018-02-02 Linux "Linux Programmer's Manual"
+.TH SOCKET 7 2019-03-06 Linux "Linux Programmer's Manual"
.SH NAME
socket \- Linux socket interface
.SH SYNOPSIS
is a file descriptor returned by the
.BR bpf (2)
system call and must refer to a program of type
-.BR BPF_PROG_TYPE_SOCKET_FILTER.
+.BR BPF_PROG_TYPE_SOCKET_FILTER .
.IP
These options may be set multiple times for a given socket,
each time replacing the previous filter program.
and
.BR SO_ATTACH_REUSEPORT_EBPF
takes the same argument type as
-.BR SO_ATTACH_BPF.
+.BR SO_ATTACH_BPF .
.IP
UDP support for this feature is available since Linux 4.5;
TCP support is available since Linux 4.6.
.BR SO_ATTACH_BPF ,
.BR SO_ATTACH_REUSEPORT_CBPF ,
and
-.BR SO_ATTACH_REUSEPORT_EPBF .
+.BR SO_ATTACH_REUSEPORT_EBPF .
.IP
The typical use case is for a privileged process to set up a raw socket
(an operation that requires the
.B SO_RCVLOWAT
is changeable
only since Linux 2.4.
-The
-.BR select (2)
+.IP
+Before Linux 2.6.28
+.\" commit c7004482e8dcb7c3c72666395cfa98a216a4fb70
+.BR select (2),
+.BR poll (2),
and
-.BR poll (2)
-system calls currently do not respect the
+.BR epoll (7)
+did not respect the
.B SO_RCVLOWAT
setting on Linux,
-and mark a socket readable when even a single byte of data is available.
-A subsequent read from the socket will block until
+and indicated a socket as readable when even a single byte of data
+was available.
+A subsequent read from the socket would then block until
.B SO_RCVLOWAT
bytes are available.
.\" See http://marc.theaimsgroup.com/?l=linux-kernel&m=111049368106984&w=2