- ERROR("Dentry `%"TS"' has an invalid security ID (%d) "
- "(there are only %u entries in the security table)",
- dentry_full_path(first_dentry), inode->i_security_id,
- sd->num_entries);
- return WIMLIB_ERR_INVALID_DENTRY;
- }
-
- /* Check that lookup table entries for all the inode's stream exist,
- * except if the SHA1 message digest is all 0's, which indicates an
- * empty stream.
- *
- * This check is skipped on split WIMs. */
- if (w->hdr.total_parts == 1) {
- for (unsigned i = 0; i <= inode->i_num_ads; i++) {
- struct wim_lookup_table_entry *lte;
- const u8 *hash;
- hash = inode_stream_hash_unresolved(inode, i);
- lte = __lookup_resource(table, hash);
- if (!lte && !is_zero_hash(hash)) {
- ERROR("Could not find lookup table entry for stream "
- "%u of dentry `%"TS"'",
- i, dentry_full_path(first_dentry));
- return WIMLIB_ERR_INVALID_DENTRY;
- }
- if (lte)
- lte->real_refcnt += inode->i_nlink;
- }
+ WARNING("\"%"TS"\" has an invalid security ID (%d)",
+ inode_first_full_path(inode), inode->i_security_id);
+ inode->i_security_id = -1;