]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
sd-id128: also refuse an empty invocation ID
authorYu Watanabe <watanabe.yu+github@gmail.com>
Wed, 14 Dec 2022 04:40:42 +0000 (13:40 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Wed, 14 Dec 2022 15:07:17 +0000 (00:07 +0900)
man/sd_id128_get_machine.xml
src/libsystemd/sd-id128/sd-id128.c

index 4f6926fd7d9eefea16d5f8db0849f054ce85a5b0..075caffb2bf08bc48e57864c7dfe29f73606ea0c 100644 (file)
 
           <listitem><para>Returned by <function>sd_id128_get_machine()</function> and
           <function>sd_id128_get_machine_app_specific()</function> when <filename>/etc/machine-id</filename>
-          is empty or all zeros.</para></listitem>
+          is empty or all zeros. Also returned by <function>sd_id128_get_invocation()</function> when the
+          invocation ID is all zeros.</para></listitem>
         </varlistentry>
 
         <varlistentry>
index 9fac1bb3fc35ad949834147395690e2eabaec12d..ec3a496dba5def1927ceeb06a70e99e1b013afe4 100644 (file)
@@ -284,6 +284,9 @@ _public_ int sd_id128_get_invocation(sd_id128_t *ret) {
                         r = get_invocation_from_keyring(&saved_invocation_id);
                 if (r < 0)
                         return r;
+
+                if (sd_id128_is_null(saved_invocation_id))
+                        return -ENOMEDIUM;
         }
 
         if (ret)