From ab2df3d844db8ddfb6a8d29d29b5605ad8809048 Mon Sep 17 00:00:00 2001 From: Kelly Kinkade Date: Wed, 5 Aug 2026 23:27:21 -0500 Subject: [PATCH] add support for `stl-fs-filetime` --- ghidra/import_df_structures.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ghidra/import_df_structures.java b/ghidra/import_df_structures.java index ec29782..069eb17 100644 --- a/ghidra/import_df_structures.java +++ b/ghidra/import_df_structures.java @@ -52,7 +52,7 @@ public AnalysisMode getScriptAnalysisMode() { private DataType dtUint8, dtUint16, dtUint32, dtUint64; private DataType dtInt8, dtInt16, dtInt32, dtInt64; private DataType dtInt, dtLong, dtULong, dtSizeT; - private DataType dtString, dtFStream, dtMutex, dtConditionVariable, dtFuture, dtFsPath, dtVectorBool, dtDeque; + private DataType dtString, dtFStream, dtMutex, dtConditionVariable, dtFuture, dtFsPath, dtFsFiletime, dtVectorBool, dtDeque; private Structure classTypeInfo, subClassTypeInfo, vmiClassTypeInfo; private Address classVTable, subClassVTable, vmiClassVTable; private int baseClassPadding; @@ -454,6 +454,8 @@ private void createStdDataTypes() throws Exception { AbstractIntegerDataType.getUnsignedDataType(currentProgram.getDefaultPointerSize(), dtm)); this.dtInt = createDataType(dtcStd, "int", AbstractIntegerDataType.getSignedDataType(4, dtm)); + var fsFiletimeDataType = createDataType(dtcStd, "fsFiletime", AbstractIntegerDataType.getUnsignedDataType(8, dtm)); + var stringDataType = new StructureDataType("string", 0); var bitVecDataType = new StructureDataType("vector", 0); var fStreamDataType = new StructureDataType("fstream", 0); @@ -628,6 +630,7 @@ private void createStdDataTypes() throws Exception { this.dtConditionVariable = createDataType(dtcStd, conditionVariableDataType); this.dtFuture = createDataType(dtcStd, futureDataType); this.dtFsPath = createDataType(dtcStd, fsPathDataType); + this.dtFsFiletime = createDataType(dtcStd, fsFiletimeDataType); this.dtString = createDataType(dtcStd, stringDataType); this.dtVectorBool = createDataType(dtcStd, bitVecDataType); this.dtDeque = createDataType(dtcStd, dequeDataType); @@ -1541,6 +1544,8 @@ private DataType getDataType(TypeDef.Field f) throws Exception { return dtFuture; case "stl-fs-path": return dtFsPath; + case "stl-fs-filetime": + return dtFsFiletime; } break; case "container":