c06d1f8e52 
								
									
								
							
								 
							
						 
						
							
							
								
								tagged union support for lua ( #1818 )  
							
							
							
						 
						
							2021-03-30 15:55:06 -05:00  
				
					
						
							
							
								 
						
							
							
								2f1e057bc7 
								
									
								
							
								 
							
						 
						
							
							
								
								check-structures-sanity: report known void* types with a better message  
							
							
							
						 
						
							2020-04-19 22:03:03 -05:00  
				
					
						
							
							
								 
						
							
							
								845b53d7cd 
								
									
								
							
								 
							
						 
						
							
							
								
								fix integer signedness differences  
							
							
							
						 
						
							2020-04-03 11:50:09 -05:00  
				
					
						
							
							
								 
						
							
							
								06201a4c6a 
								
							
								 
							
						 
						
							
							
								
								Bail out if MALLOC_PERTURB_ is unset to avoid unexpected behavior  
							
							
							
						 
						
							2020-04-02 01:48:21 -04:00  
				
					
						
							
							
								 
						
							
							
								97916fd55e 
								
									
								
							
								 
							
						 
						
							
							
								
								implement tagged union structures attributes  
							
							
							
						 
						
							2020-03-21 14:29:14 -05:00  
				
					
						
							
							
								 
						
							
							
								b29d009b14 
								
									
								
							
								 
							
						 
						
							
							
								
								update structures; implement struct_field_info_extra  
							
							
							
						 
						
							2020-03-21 13:21:35 -05:00  
				
					
						
							
							
								 
						
							
							
								ccf92d4b0a 
								
									
								
							
								 
							
						 
						
							
							
								
								fix check-structures-sanity compile on 64-bit windows  
							
							
							
						 
						
							2020-03-13 01:09:04 -05:00  
				
					
						
							
							
								 
						
							
							
								a456b2fcf3 
								
									
								
							
								 
							
						 
						
							
							
								
								fix windows build  
							
							
							
						 
						
							2020-03-13 00:03:56 -05:00  
				
					
						
							
							
								 
						
							
							
								39486083f5 
								
									
								
							
								 
							
						 
						
							
							
								
								handle overlapping structures in check-structures-sanity better  
							
							... 
							
							
							
							update structures 
							
						 
						
							2020-03-12 22:16:30 -05:00  
				
					
						
							
							
								 
						
							
							
								d456e3db7a 
								
									
								
							
								 
							
						 
						
							
							
								
								check-structures-sanity: fix unknown pointer type not actually dereferencing the pointer  
							
							... 
							
							
							
							basic attempt at handling overlapping structs 
							
						 
						
							2020-03-12 15:20:46 -05:00  
				
					
						
							
							
								 
						
							
							
								616a57224f 
								
									
								
							
								 
							
						 
						
							
							
								
								check-structures-sanity: don't report possible pointers by default  
							
							
							
						 
						
							2020-03-12 11:35:52 -05:00  
				
					
						
							
							
								 
						
							
							
								08d2ed577e 
								
									
								
							
								 
							
						 
						
							
							
								
								fix check-structures-sanity compile on windows  
							
							
							
						 
						
							2020-03-12 10:02:21 -05:00  
				
					
						
							
							
								 
						
							
							
								469c49c8b9 
								
									
								
							
								 
							
						 
						
							
							
								
								check-structures-sanity: keep track of whether data is within a larger structure  
							
							
							
						 
						
							2020-03-11 17:49:34 -05:00  
				
					
						
							
							
								 
						
							
							
								eabff06eef 
								
									
								
							
								 
							
						 
						
							
							
								
								check-structures-sanity: warn when an integer might be a pointer  
							
							
							
						 
						
							2020-03-11 11:20:10 -05:00  
				
					
						
							
							
								 
						
							
							
								e2138a6cc2 
								
									
								
							
								 
							
						 
						
							
							
								
								update check-structures-sanity (part 2 of 2)  
							
							
							
						 
						
							2020-03-10 23:05:59 -05:00  
				
					
						
							
							
								 
						
							
							
								e5de783c58 
								
									
								
							
								 
							
						 
						
							
							
								
								rewriting check-structures-sanity to improve performance and remove the need for the lowmem option  
							
							
							
						 
						
							2020-03-10 18:53:56 -05:00  
				
					
						
							
							
								 
						
							
							
								e296525983 
								
									
								
							
								 
							
						 
						
							
							
								
								check-structures-sanity: don't error on unnamed enum values/bits by default  
							
							
							
						 
						
							2020-03-09 17:52:47 -05:00  
				
					
						
							
							
								 
						
							
							
								923581b144 
								
									
								
							
								 
							
						 
						
							
							
								
								fix ghidra script failing if strings overlapped (for example, load_min_version and version could point to the same region of memory)  
							
							
							
						 
						
							2020-03-09 17:52:47 -05:00  
				
					
						
							
							
								 
						
							
							
								a2e34a3b71 
								
									
								
							
								 
							
						 
						
							
							
								
								fix check-structures-sanity picking the wrong type for linked list items  
							
							
							
						 
						
							2020-03-08 00:21:18 -06:00  
				
					
						
							
							
								 
						
							
							
								f8f7b52180 
								
									
								
							
								 
							
						 
						
							
							
								
								fix is_df_linked_list not checking if the type is null  
							
							
							
						 
						
							2020-03-06 20:22:18 -06:00  
				
					
						
							
							
								 
						
							
							
								6465037432 
								
									
								
							
								 
							
						 
						
							
							
								
								fix field order  
							
							
							
						 
						
							2020-03-06 20:04:17 -06:00  
				
					
						
							
							
								 
						
							
							
								07aceb1078 
								
									
								
							
								 
							
						 
						
							
							
								
								correctly handle arrays of linked lists  
							
							
							
						 
						
							2020-03-06 19:45:04 -06:00  
				
					
						
							
							
								 
						
							
							
								9b724666f7 
								
									
								
							
								 
							
						 
						
							
							
								
								check-structures-sanity: check linked lists in a more intelligent way  
							
							
							
						 
						
							2020-03-06 17:53:05 -06:00  
				
					
						
							
							
								 
						
							
							
								def86b8058 
								
									
								
							
								 
							
						 
						
							
							
								
								check-structures-sanity: ignore DfLinkedList element sizes; these can be part of a larger structure  
							
							
							
						 
						
							2020-03-06 17:05:36 -06:00  
				
					
						
							
							
								 
						
							
							
								61aeaaf55e 
								
									
								
							
								 
							
						 
						
							
							
								
								fix typo in check-structures-sanity  
							
							
							
						 
						
							2020-03-06 16:51:33 -06:00  
				
					
						
							
							
								 
						
							
							
								a214e00407 
								
									
								
							
								 
							
						 
						
							
							
								
								allow union vectors to have tags that are bit vectors if they have exactly 2 members  
							
							
							
						 
						
							2020-03-06 16:48:33 -06:00  
				
					
						
							
							
								 
						
							
							
								84cae060b1 
								
									
								
							
								 
							
						 
						
							
							
								
								move find_union_tag from check-structures-sanity to DataDefs.h  
							
							
							
						 
						
							2020-03-04 18:23:49 -06:00  
				
					
						
							
							
								 
						
							
							
								e5c597f869 
								
									
								
							
								 
							
						 
						
							
							
								
								change two UNEXPECTEDs in check-structures-sanity to FAILs instead  
							
							
							
						 
						
							2020-03-02 22:30:23 -06:00  
				
					
						
							
							
								 
						
							
							
								c29b606a4a 
								
									
								
							
								 
							
						 
						
							
							
								
								check-structures-sanity: suggest known structure types for large unknown pointers  
							
							... 
							
							
							
							update structures 
							
						 
						
							2020-03-02 21:33:04 -06:00  
				
					
						
							
							
								 
						
							
							
								269b3cb8eb 
								
									
								
							
								 
							
						 
						
							
							
								
								add support for finding vtable pointers to check-structures-sanity  
							
							... 
							
							
							
							update structures 
							
						 
						
							2020-03-02 15:34:29 -06:00  
				
					
						
							
							
								 
						
							
							
								0024457167 
								
									
								
							
								 
							
						 
						
							
							
								
								update structures  
							
							... 
							
							
							
							don't mark lua argument as a pointer (to be revisited at some point) 
							
						 
						
							2020-03-02 02:27:15 -06:00  
				
					
						
							
							
								 
						
							
							
								fe2ea17880 
								
									
								
							
								 
							
						 
						
							
							
								
								change DF version  
							
							... 
							
							
							
							add -maxerrors and -failfast to check-structures-sanity 
							
						 
						
							2020-03-01 12:15:26 -06:00  
				
					
						
							
							
								 
						
							
							
								0c007c4699 
								
									
								
							
								 
							
						 
						
							
							
								
								remove std::min usage  
							
							
							
						 
						
							2020-03-01 00:18:09 -06:00  
				
					
						
							
							
								 
						
							
							
								85bfa60cf2 
								
									
								
							
								 
							
						 
						
							
							
								
								allow -1 union values for undefined tags to avoid false positives  
							
							
							
						 
						
							2020-02-29 21:57:39 -06:00  
				
					
						
							
							
								 
						
							
							
								cc2c732dd5 
								
									
								
							
								 
							
						 
						
							
							
								
								insert a new second rule for tagged union discovery  
							
							... 
							
							
							
							1. if the field name ends in "data" and there is a field with the same
   prefix ending in "type", the field ending in "type" is the tag.
2. if the field name ends in "_target" and the previous field has the
   same prefix and no suffix, the previous field is the tag.
3. if the field is not the last field in the structure, the next field
   is the tag. 
							
						 
						
							2020-02-29 18:46:34 -06:00  
				
					
						
							
							
								 
						
							
							
								b0699a1b5e 
								
									
								
							
								 
							
						 
						
							
							
								
								allow uninitialized data to be all zeroes  
							
							
							
						 
						
							2020-02-29 18:36:00 -06:00  
				
					
						
							
							
								 
						
							
							
								0860d81c86 
								
									
								
							
								 
							
						 
						
							
							
								
								add support for vectors of tagged unions in check-structures-sanity  
							
							
							
						 
						
							2020-02-29 18:28:14 -06:00  
				
					
						
							
							
								 
						
							
							
								18523a1821 
								
									
								
							
								 
							
						 
						
							
							
								
								Convert untagged unions to tagged. Fix some edge cases in check-structures-sanity union checking.  
							
							
							
						 
						
							2020-02-29 15:08:39 -06:00  
				
					
						
							
							
								 
						
							
							
								3240b6d897 
								
									
								
							
								 
							
						 
						
							
							
								
								check-structures-sanity improvements for unidentified fields and unions  
							
							... 
							
							
							
							- not being able to determine the tag for a union is now an error.
- pointer-sized unknown allocations will now be checked recursively as
  if they were void pointers. this will help with identifying string
  pointers on linux.
- unknown tagged union fields will be checked as void pointers if the
  first identified field of the union is a pointer.
- tagged unions can now be of non-pointer types.
- tagged unions can now have complex tag enums. 
							
						 
						
							2020-02-29 14:20:43 -06:00  
				
					
						
							
							
								 
						
							
							
								a30678cee3 
								
									
								
							
								 
							
						 
						
							
							
								
								subclass struct_identity for unions  
							
							
							
						 
						
							2020-02-29 13:11:23 -06:00  
				
					
						
							
							
								 
						
							
							
								e9564a28f5 
								
									
								
							
								 
							
						 
						
							
							
								
								allow tagged unions to not be union followed by tag  
							
							
							
						 
						
							2020-02-23 21:33:32 -06:00  
				
					
						
							
							
								 
						
							
							
								5580d375aa 
								
									
								
							
								 
							
						 
						
							
							
								
								add more diagnostics that will help in the identification of stl-string fields  
							
							
							
						 
						
							2020-02-22 15:34:48 -06:00  
				
					
						
							
							
								 
						
							
							
								37a8bf679e 
								
									
								
							
								 
							
						 
						
							
							
								
								fix copy/paste error  
							
							
							
						 
						
							2020-02-22 14:10:26 -06:00  
				
					
						
							
							
								 
						
							
							
								0711b2569a 
								
									
								
							
								 
							
						 
						
							
							
								
								in -sizes mode, report sizes of unknown structures behind pointers.  
							
							... 
							
							
							
							update structures 
							
						 
						
							2020-02-22 14:04:53 -06:00  
				
					
						
							
							
								 
						
							
							
								57154e33c8 
								
									
								
							
								 
							
						 
						
							
							
								
								warn about misidentified generic pointers  
							
							... 
							
							
							
							update structures 
							
						 
						
							2020-02-21 18:49:02 -06:00  
				
					
						
							
							
								 
						
							
							
								53da38ca47 
								
									
								
							
								 
							
						 
						
							
							
								
								add additional pointer, string, and vector sanity checks  
							
							... 
							
							
							
							update structures and scripts 
							
						 
						
							2020-02-21 17:31:31 -06:00  
				
					
						
							
							
								 
						
							
							
								f383f63eea 
								
									
								
							
								 
							
						 
						
							
							
								
								fix check-structures-sanity not catching certain types of invalid string on GCC builds.  
							
							... 
							
							
							
							update structures. 
							
						 
						
							2020-02-21 17:31:31 -06:00  
				
					
						
							
							
								 
						
							
							
								38410544b0 
								
									
								
							
								 
							
						 
						
							
							
								
								handle tagged unions in check-structures-sanity  
							
							... 
							
							
							
							update structures 
							
						 
						
							2020-02-20 22:17:25 -06:00  
				
					
						
							
							
								 
						
							
							
								ee6b281ae3 
								
									
								
							
								 
							
						 
						
							
							
								
								allow check-structures-sanity to check the size of the value explicitly specified in a lua expression rather than just its descendants.  
							
							... 
							
							
							
							print an error if getting the type identity fails. 
							
						 
						
							2020-02-19 11:40:31 -06:00  
				
					
						
							
							
								 
						
							
							
								0f857f1b20 
								
									
								
							
								 
							
						 
						
							
							
								
								fix msvc warning about 64-bit shift  
							
							
							
						 
						
							2020-02-15 18:20:34 -06:00