Add placeholder constants to reserve a portion of the socket option

name space for use by downstream vendors to add custom options.

MFC after:	2 weeks
This commit is contained in:
jhb 2013-02-01 15:32:20 +00:00
parent 8f6d8825cb
commit b55183a894
4 changed files with 17 additions and 0 deletions

View File

@ -166,6 +166,9 @@ struct tcphdr {
#define TCP_KEEPINTVL 512 /* L,N interval between keepalives */
#define TCP_KEEPCNT 1024 /* L,N number of keepalives before close */
/* Start of reserved space for third-party user-settable options. */
#define TCP_VENDOR SO_VENDOR
#define TCP_CA_NAME_MAX 16 /* max congestion control name length */
#define TCPI_OPT_TIMESTAMPS 0x01

View File

@ -50,6 +50,8 @@ struct udphdr {
*/
#define UDP_ENCAP 1
/* Start of reserved space for third-party user-settable options. */
#define UDP_VENDOR SO_VENDOR
/*
* UDP Encapsulation of IPsec Packets options.

View File

@ -142,6 +142,15 @@ typedef __uid_t uid_t;
#define SO_PROTOTYPE SO_PROTOCOL /* alias for SO_PROTOCOL (SunOS name) */
#endif
/*
* Space reserved for new socket options added by third-party vendors.
* This range applies to all socket option levels. New socket options
* in FreeBSD should always use an option value less than SO_VENDOR.
*/
#if __BSD_VISIBLE
#define SO_VENDOR 0x80000000
#endif
/*
* Structure used for manipulating linger option.
*/

View File

@ -57,6 +57,9 @@ struct sockaddr_un {
#define LOCAL_CREDS 2 /* pass credentials to receiver */
#define LOCAL_CONNWAIT 4 /* connects block until accepted */
/* Start of reserved space for third-party socket options. */
#define LOCAL_VENDOR SO_VENDOR
#ifndef _KERNEL
/* actual length of an initialized sockaddr_un */