]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
shared/socket-util: do not print empty CID
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Fri, 30 Nov 2018 14:17:25 +0000 (15:17 +0100)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Fri, 30 Nov 2018 20:40:04 +0000 (21:40 +0100)
That's just ugly.

src/basic/socket-util.c
src/test/test-socket-util.c

index a1565665112d15f7b7837a7bb2a08c87651917a6..d94bac42878caf910ea9a4742b402fd53eeac74a 100644 (file)
@@ -672,12 +672,12 @@ int sockaddr_pretty(const struct sockaddr *_sa, socklen_t salen, bool translate_
                 break;
 
         case AF_VSOCK:
-                if (include_port)
-                        r = asprintf(&p,
-                                     "vsock:%u:%u",
-                                     sa->vm.svm_cid,
-                                     sa->vm.svm_port);
-                else
+                if (include_port) {
+                        if (sa->vm.svm_cid == VMADDR_CID_ANY)
+                                r = asprintf(&p, "vsock::%u", sa->vm.svm_port);
+                        else
+                                r = asprintf(&p, "vsock:%u:%u", sa->vm.svm_cid, sa->vm.svm_port);
+                else
                         r = asprintf(&p, "vsock:%u", sa->vm.svm_cid);
                 if (r < 0)
                         return -ENOMEM;
index 24dd7018082dbd8589f3372ab5111befc7de6d5d..687caf83bedd8d704c4218cf057de4feed09cedd 100644 (file)
@@ -98,7 +98,7 @@ static void test_socket_address_parse(void) {
         test_socket_address_parse_one("@abstract", 0, AF_UNIX, NULL);
 
         test_socket_address_parse_one("vsock:2:1234", 0, AF_VSOCK, NULL);
-        test_socket_address_parse_one("vsock::1234", 0, AF_VSOCK, "vsock:4294967295:1234");
+        test_socket_address_parse_one("vsock::1234", 0, AF_VSOCK, NULL);
         test_socket_address_parse_one("vsock:2:1234x", -EINVAL, 0, NULL);
         test_socket_address_parse_one("vsock:2x:1234", -EINVAL, 0, NULL);
         test_socket_address_parse_one("vsock:2", -EINVAL, 0, NULL);