]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
socket-util: add socket_address_type_{from,to}_string()
authorYu Watanabe <watanabe.yu+github@gmail.com>
Sat, 23 Dec 2017 07:55:36 +0000 (16:55 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Sat, 23 Dec 2017 09:46:43 +0000 (18:46 +0900)
src/basic/socket-util.c
src/basic/socket-util.h

index a458fc29023a8368ee196ae359a970a9bdddac19..fa74465b92d303612a20a76fe95ab28b6828c5f3 100644 (file)
 #  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;
index 272e74b0cc445b8cdb85f5aecca8d9c509270e33..0f84a5e93e16f358a186307d6a70954a8c75be39 100644 (file)
@@ -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);