summaryrefslogtreecommitdiff
path: root/include/netinet/tcp.h
AgeCommit message (Collapse)AuthorLines
2016-07-03make brace placement in public header struct definitions consistentRich Felker-4/+2
placing the opening brace on the same line as the struct keyword/tag is the style I prefer and seems to be the prevailing practice in more recent additions. these changes were generated by the command: find include/ arch/*/bits -name '*.h' \ -exec sed -i '/^struct [^;{]*$/{N;s/\n/ /;}' {} + and subsequently checked by hand to ensure that the regex did not pick up any false positives.
2016-06-09add new tcp_info fields from linux v4.6Szabolcs Nagy-0/+4
new fields and associated linux commit: tcpi_notsent_bytes, tcpi_min_rtt cd9b266095f422267bddbec88f9098b48ea548fc tcpi_data_segs_in, tcpi_data_segs_out a44d6eacdaf56f74fad699af7f4925a5f5ac0e7f
2016-01-24update netinet/tcp.h for linux v4.2Szabolcs Nagy-0/+7
TCP_CC_INFO is a new socket option to get congestion control info without netlink (union tcp_cc_info is in linux/inet_diag.h kernel header). linux commit 6e9250f59ef9efb932c84850cd221f22c2a03c4a TCP_SAVE_SYN, TCP_SAVED_SYN socket options are for saving and getting the SYN headers of passive connections in a server application. linux commit cd8ae85299d54155702a56811b2e035e63064d3d Add new tcpi_* fields to struct tcp_info implementing RFC4898 counters. linux commit 2efd055c53c06b7e89c167c98069bab9afce7e59
2016-01-17netinet/tcp: Add TCPOPT, TCPOLEN constantsKylie McClain-0/+13
Programs such as iptables depend on these constants, which can also be found defined in other libcs. Since only TCP_* is reserved as part of tcp.h's namespace, we hide them behind _BSD_SOURCE (and therefore _DEFAULT_SOURCE) to expose them by default, but keep it standard conforming.
2014-07-20add pacing rate information to the tcp_info struct in tcp.hSzabolcs Nagy-0/+2
used by monitoring applications such as ss from iproute2 introduced in linux 3.15 commit 977cb0ecf82eb6d15562573c31edebf90db35163
2014-02-05fix use of legacy u_intN_t types in netinet/tcp.hRich Felker-73/+74
policy is to avoid using these types except where they are needed for namespace conformance. C99-style stdint.h types should be used instead.
2014-02-05add support for BSD struct tcphdr in netinet/tcp.hRich Felker-4/+41
there are two versions of this structure: the BSD version and the GNU version. previously only the GNU version was supported. the only way to support both simultaneously is with an anonymous union, which was a nonstandard extension prior to C11, so some effort is made to avoid breakage with compilers which do not support anonymous unions. this commit is based on a patch by Timo Teräs, but with some changes. in particular, the GNU version of the structure is not exposed unless _GNU_SOURCE is defined; this both avoids namespace pollution and dependency on anonymous unions in the default feature profile.
2013-12-20add TCP_INFO and TCP_MD5SIG socket option related structuresTimo Teräs-0/+58
2013-11-23add TCP_NOTSENT_LOWAT tcp socket option, new in linux v3.12Szabolcs Nagy-0/+1
2013-11-23add linux tcp state enumsTimo Teräs-0/+12
2013-08-30only expose struct tcphdr under _GNU_SOURCERich Felker-1/+3
the BSD and GNU versions of this structure differ, so exposing it in the default _BSD_SOURCE profile is possibly problematic. both versions could be simultaneously supported with anonymous unions if needed in the future, but for now, just omitting it except under _GNU_SOURCE should be safe.
2013-08-30add struct tcphdr in netinet/tcp.hRich Felker-0/+33
2013-07-24remove TCP_COOKIE_TRANSACTIONS from tcp.hSzabolcs Nagy-1/+0
removed in linux-v3.10 in commit 1a2c6181c4a1922021b4d7df373bba612c3e5f04
2013-04-01add new linux tcp socket option flags to netinet/tcp.hSzabolcs Nagy-0/+10
2013-01-31SOL_TCP is nonstandard and not in the reserved namespaceRich Felker-2/+1
alternatively, we could define it in sys/socket.h since SO* is reserved there, and tcp.h includes sys/socket.h in extensions mode. note that SOL_TCP is simply wrong and it's only here for compatibility with broken applications. the correct argument to pass for setting TCP socket options is IPPROTO_TCP, which of course has the same value as SOL_TCP but works everywhere.
2012-12-06tcp.h: add SOL_TCP, analoguous to udp.hrofl0r-0/+2
2012-09-07TCP_* is in the reserved namespace for tcp.h; make use of thatRich Felker-3/+4
2012-09-07default features: make musl usable without feature test macrosRich Felker-0/+2
the old behavior of exposing nothing except plain ISO C can be obtained by defining __STRICT_ANSI__ or using a compiler option (such as -std=c99) that predefines it. the new default featureset is POSIX with XSI plus _BSD_SOURCE. any explicit feature test macros will inhibit the default. installation docs have also been updated to reflect this change.
2012-05-22support _BSD_SOURCE feature test macroRich Felker-0/+17
patch by Isaac Dunham. matched closely (maybe not exact) to glibc's idea of what _BSD_SOURCE should make visible.
2011-09-18more bits junk (tcp.h)Rich Felker-1/+1
2011-02-12initial check-in, version 0.5.0v0.5.0Rich Felker-0/+6