]> wimlib.net Git - wimlib/blobdiff - src/win32_capture.c
win32_capture: handle NtQuerySecurityObject returning an empty descriptor
[wimlib] / src / win32_capture.c
index 951f61bfb9dad4a7d007269ece96edd4c2bb8c99..4bc0f7c2b89d6e564c2f7f0cb4a2d4dc671e664a 100644 (file)
@@ -634,8 +634,13 @@ winnt_load_security_descriptor(HANDLE h, struct wim_inode *inode,
                }
        }
 
+       /* We can get a length of 0 with Samba.  Assume that means "no security
+        * descriptor".  */
+       if (len_needed == 0)
+               goto out;
+
        /* Add the security descriptor to the WIM image, and save its ID in
-        * file's inode.  */
+        * the file's inode.  */
        inode->i_security_id = sd_set_add_sd(ctx->params->sd_set, buf, len_needed);
        if (unlikely(inode->i_security_id < 0))
                status = STATUS_NO_MEMORY;