]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
resolve: make DnsStubListenerMode bitfield
authorYu Watanabe <watanabe.yu+github@gmail.com>
Fri, 4 Sep 2020 04:09:02 +0000 (13:09 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Fri, 4 Sep 2020 11:05:58 +0000 (20:05 +0900)
src/resolve/resolved-conf.h
src/resolve/resolved-dns-stub.c

index f8d16b5a8edf01244ec57bcf83cbd18d6e54a50a..50a0caaf16b671ed8173f6d85eb1c62f51901083 100644 (file)
@@ -7,9 +7,9 @@ typedef enum DnsStubListenerMode DnsStubListenerMode;
 
 enum DnsStubListenerMode {
         DNS_STUB_LISTENER_NO,
-        DNS_STUB_LISTENER_UDP,
-        DNS_STUB_LISTENER_TCP,
-        DNS_STUB_LISTENER_YES,
+        DNS_STUB_LISTENER_UDP = 1 << 0,
+        DNS_STUB_LISTENER_TCP = 1 << 1,
+        DNS_STUB_LISTENER_YES = DNS_STUB_LISTENER_UDP | DNS_STUB_LISTENER_TCP,
         _DNS_STUB_LISTENER_MODE_MAX,
         _DNS_STUB_LISTENER_MODE_INVALID = -1
 };
index f9087a379fb51ecbd2ae603ff08a1063720799f6..de37c9a03830eb9fbd5aa3f21a768d15510d34ad 100644 (file)
@@ -684,11 +684,11 @@ int manager_dns_stub_start(Manager *m) {
                           m->dns_stub_listener_mode == DNS_STUB_LISTENER_TCP ? "TCP" :
                           "UDP/TCP");
 
-        if (IN_SET(m->dns_stub_listener_mode, DNS_STUB_LISTENER_YES, DNS_STUB_LISTENER_UDP))
+        if (FLAGS_SET(m->dns_stub_listener_mode, DNS_STUB_LISTENER_UDP))
                 r = manager_dns_stub_udp_fd(m);
 
         if (r >= 0 &&
-            IN_SET(m->dns_stub_listener_mode, DNS_STUB_LISTENER_YES, DNS_STUB_LISTENER_TCP)) {
+            FLAGS_SET(m->dns_stub_listener_mode, DNS_STUB_LISTENER_TCP)) {
                 t = "TCP";
                 r = manager_dns_stub_tcp_fd(m);
         }