From: Yu Watanabe Date: Sat, 23 Dec 2017 07:55:36 +0000 (+0900) Subject: socket-util: add socket_address_type_{from,to}_string() X-Git-Tag: v237~183^2~17 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=398ce0bc5a0e1aad57223a62dcbcc8854e103c90;p=thirdparty%2Fsystemd.git socket-util: add socket_address_type_{from,to}_string() --- diff --git a/src/basic/socket-util.c b/src/basic/socket-util.c index a458fc29023..fa74465b92d 100644 --- a/src/basic/socket-util.c +++ b/src/basic/socket-util.c @@ -55,6 +55,17 @@ # define IDN_FLAGS 0 #endif +static const char* const socket_address_type_table[] = { + [SOCK_STREAM] = "Stream", + [SOCK_DGRAM] = "Datagram", + [SOCK_RAW] = "Raw", + [SOCK_RDM] = "ReliableDatagram", + [SOCK_SEQPACKET] = "SequentialPacket", + [SOCK_DCCP] = "DatagramCongestionControl", +}; + +DEFINE_STRING_TABLE_LOOKUP(socket_address_type, int); + int socket_address_parse(SocketAddress *a, const char *s) { char *e, *n; unsigned u; diff --git a/src/basic/socket-util.h b/src/basic/socket-util.h index 272e74b0cc4..0f84a5e93e1 100644 --- a/src/basic/socket-util.h +++ b/src/basic/socket-util.h @@ -72,6 +72,9 @@ typedef enum SocketAddressBindIPv6Only { #define socket_address_family(a) ((a)->sockaddr.sa.sa_family) +const char* socket_address_type_to_string(int t) _const_; +int socket_address_type_from_string(const char *s) _pure_; + int socket_address_parse(SocketAddress *a, const char *s); int socket_address_parse_and_warn(SocketAddress *a, const char *s); int socket_address_parse_netlink(SocketAddress *a, const char *s);