Added pass to verify structure of dex file.

When a dex file is first opened, this pass runs through to make sure
sizes and offsets of the various sections of the dex file match the
header and don't overlap.

Change-Id: I4900c9665d6572ccfca2fe5f79d5d48ce7252036
diff --git a/src/utils.h b/src/utils.h
index 606f35d..6a18138 100644
--- a/src/utils.h
+++ b/src/utils.h
@@ -198,6 +198,10 @@
 bool IsValidJniClassName(const char* s);     // "java/lang/String"
 bool IsValidDescriptor(const char* s);       // "Ljava/lang/String;"
 
+// Returns whether the given string is a valid field or method name,
+// additionally allowing names that begin with '<' and end with '>'.
+bool IsValidMemberName(const char* s);
+
 // Returns the JNI native function name for the non-overloaded method 'm'.
 std::string JniShortName(const Method* m);
 // Returns the JNI native function name for the overloaded method 'm'.