]> wimlib.net Git - wimlib/blobdiff - src/extract.c
Add support for capturing/applying object IDs
[wimlib] / src / extract.c
index 496d9c9870664ba050902139a942363197956605..65f93338841563593a30b148a747118c11967377 100644 (file)
@@ -53,6 +53,7 @@
 #include "wimlib/endianness.h"
 #include "wimlib/error.h"
 #include "wimlib/metadata.h"
+#include "wimlib/object_id.h"
 #include "wimlib/pathlist.h"
 #include "wimlib/paths.h"
 #include "wimlib/pattern.h"
@@ -1162,6 +1163,8 @@ inode_tally_features(const struct wim_inode *inode,
                features->security_descriptors++;
        if (inode_has_unix_data(inode))
                features->unix_data++;
+       if (inode_has_object_id(inode))
+               features->object_ids++;
 }
 
 /* Tally features necessary to extract a dentry and the corresponding inode.  */
@@ -1314,6 +1317,12 @@ do_feature_check(const struct wim_features *required_features,
                        required_features->unix_data);
        }
 
+       /* Object IDs.  */
+       if (required_features->object_ids && !supported_features->object_ids) {
+               WARNING("Ignoring object IDs of %lu files",
+                       required_features->object_ids);
+       }
+
        /* DOS Names.  */
        if (required_features->short_names &&
            !supported_features->short_names)