Don't ignore non-virtual NSC_EXTRA columns in ef_verify.c
authorMarkus Armbruster <armbru@pond.sub.org>
Sat, 23 Apr 2011 17:28:57 +0000 (19:28 +0200)
committerMarkus Armbruster <armbru@pond.sub.org>
Mon, 6 Jun 2011 17:24:13 +0000 (19:24 +0200)
These are commonly timestamps (no verification implemented), or
aliases for a non-extra column (which gets verified).  Commit 49780e2c
(v4.3.12) added the exception: EF_SECTOR's uid.  Proof by example that
ignoring these columns is wrong.  Fix: ignore only virtual columns.

src/lib/common/ef_verify.c

index 2b79f4d25ee1e6b3a4e7c4c1fbab54f9b1a896b5..a938aca3f36877cc81f7d866195e6a95bf7baa75 100644 (file)
@@ -114,8 +114,8 @@ verify_row(int type, int row)
     }
 
     for (i = 0; ca[i].ca_name; ++i) {
-       if (ca[i].ca_flags & NSC_EXTRA)
-           continue;
+       if (ca[i].ca_get)
+           continue;           /* virtual */
        n = ca[i].ca_type != NSC_STRINGY ? ca[i].ca_len : 0;
        j = 0;
        do {