diff options
author | Thomas Haller <thaller@redhat.com> | 2014-11-24 16:14:50 (GMT) |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2014-11-24 17:30:21 (GMT) |
commit | 94039ca48aad406acaffe6421ea2a06b05a69dde (patch) | |
tree | 3afb891f8b7088a53b6aba3c408c1587331968d5 | |
parent | 3b5226e3a2c4dc53c0932b7a65196345ffe5245a (diff) | |
download | libnl-94039ca48aad406acaffe6421ea2a06b05a69dde.zip libnl-94039ca48aad406acaffe6421ea2a06b05a69dde.tar.gz libnl-94039ca48aad406acaffe6421ea2a06b05a69dde.tar.bz2 |
idiag: deprecate IDIAG_SS_* socket states
These values mirror TCP_* socket states from 'netinit/tcp.h'.
There is no good reason to expose a copy of those values.
User space should use the original values (if they care).
The only value that is actually useful is IDIAGNL_SS_ALL.
Acked-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: Thomas Haller <thaller@redhat.com>
-rw-r--r-- | include/netlink/idiag/idiagnl.h | 39 | ||||
-rw-r--r-- | lib/idiag/idiag.c | 27 | ||||
-rw-r--r-- | src/idiag-socket-details.c | 2 |
3 files changed, 38 insertions, 30 deletions
diff --git a/include/netlink/idiag/idiagnl.h b/include/netlink/idiag/idiagnl.h index 9f3345a..3b3b57e 100644 --- a/include/netlink/idiag/idiagnl.h +++ b/include/netlink/idiag/idiagnl.h @@ -32,28 +32,39 @@ extern "C" { /** * Socket state identifiers * @ingroup idiag + * @deprecated: use instead the TCP_* defines from netinet/tcp.h. */ enum { - IDIAG_SS_UNKNOWN, - IDIAG_SS_ESTABLISHED, - IDIAG_SS_SYN_SENT, - IDIAG_SS_SYN_RECV, - IDIAG_SS_FIN_WAIT1, - IDIAG_SS_FIN_WAIT2, - IDIAG_SS_TIME_WAIT, - IDIAG_SS_CLOSE, - IDIAG_SS_CLOSE_WAIT, - IDIAG_SS_LAST_ACK, - IDIAG_SS_LISTEN, - IDIAG_SS_CLOSING, - IDIAG_SS_MAX + IDIAG_SS_UNKNOWN = 0, + + IDIAG_SS_ESTABLISHED = 1, /* TCP_ESTABLISHED */ + IDIAG_SS_SYN_SENT = 2, /* TCP_SYN_SENT */ + IDIAG_SS_SYN_RECV = 3, /* TCP_SYN_RECV */ + IDIAG_SS_FIN_WAIT1 = 4, /* TCP_FIN_WAIT1 */ + IDIAG_SS_FIN_WAIT2 = 5, /* TCP_FIN_WAIT2 */ + IDIAG_SS_TIME_WAIT = 6, /* TCP_TIME_WAIT */ + IDIAG_SS_CLOSE = 7, /* TCP_CLOSE */ + IDIAG_SS_CLOSE_WAIT = 8, /* TCP_CLOSE_WAIT */ + IDIAG_SS_LAST_ACK = 9, /* TCP_LAST_ACK */ + IDIAG_SS_LISTEN = 10, /* TCP_LISTEN */ + IDIAG_SS_CLOSING = 11, /* TCP_CLOSING */ + + IDIAG_SS_MAX = 12, }; /** * Macro to represent all socket states. * @ingroup idiag */ -#define IDIAG_SS_ALL ((1<<IDIAG_SS_MAX)-1) +#define IDIAGNL_SS_ALL (((1<<12)-1)) + +/** + * Macro to represent all socket states. + * @ingroup idiag + * @deprecated + */ +#define IDIAG_SS_ALL IDIAGNL_SS_ALL + /** * Inet Diag extended attributes diff --git a/lib/idiag/idiag.c b/lib/idiag/idiag.c index 2162352..303ffea 100644 --- a/lib/idiag/idiag.c +++ b/lib/idiag/idiag.c @@ -82,25 +82,22 @@ int idiagnl_send_simple(struct nl_sock *sk, int flags, uint8_t family, */ static const struct trans_tbl idiag_states[] = { - __ADD(IDIAG_SS_UNKNOWN, unknown), - __ADD(IDIAG_SS_ESTABLISHED, established), - __ADD(IDIAG_SS_SYN_SENT, syn_sent), - __ADD(IDIAG_SS_SYN_RECV, syn_recv), - __ADD(IDIAG_SS_FIN_WAIT1, fin_wait), - __ADD(IDIAG_SS_FIN_WAIT2, fin_wait2), - __ADD(IDIAG_SS_TIME_WAIT, time_wait), - __ADD(IDIAG_SS_CLOSE, close), - __ADD(IDIAG_SS_CLOSE_WAIT, close_wait), - __ADD(IDIAG_SS_LAST_ACK, last_ack), - __ADD(IDIAG_SS_LISTEN, listen), - __ADD(IDIAG_SS_CLOSING, closing), - __ADD(IDIAG_SS_MAX, max), - { ((1<<IDIAG_SS_MAX)-1), "all" } + __ADD(TCP_ESTABLISHED, established), + __ADD(TCP_SYN_SENT, syn_sent), + __ADD(TCP_SYN_RECV, syn_recv), + __ADD(TCP_FIN_WAIT1, fin_wait), + __ADD(TCP_FIN_WAIT2, fin_wait2), + __ADD(TCP_TIME_WAIT, time_wait), + __ADD(TCP_CLOSE, close), + __ADD(TCP_CLOSE_WAIT, close_wait), + __ADD(TCP_LAST_ACK, last_ack), + __ADD(TCP_LISTEN, listen), + __ADD(TCP_CLOSING, closing), }; /** * Convert inet diag socket states to strings. - * @arg state inetdiag socket state (e.g., IDIAG_SS_ESTABLISHED) + * @arg state inetdiag socket state (e.g., TCP_ESTABLISHED) * @arg buf output buffer which will hold string result * @arg len length in bytes of the output buffer * diff --git a/src/idiag-socket-details.c b/src/idiag-socket-details.c index 9568676..17bcef2 100644 --- a/src/idiag-socket-details.c +++ b/src/idiag-socket-details.c @@ -72,7 +72,7 @@ int main(int argc, char *argv[]) } } - if ((err = idiagnl_msg_alloc_cache(sock, AF_INET, IDIAG_SS_ALL, + if ((err = idiagnl_msg_alloc_cache(sock, AF_INET, IDIAGNL_SS_ALL, &idiag_cache))) { nl_cli_fatal(err, "Unable to allocate idiag msg cache: %s", nl_geterror(err)); |