Giter VIP home page Giter VIP logo

Comments (6)

thelongestusernameofall avatar thelongestusernameofall commented on May 24, 2024

same error. any solution?

from idaobjctypes.

thelongestusernameofall avatar thelongestusernameofall commented on May 24, 2024

same error. any solution?

my solution: (by deleting typedef inside a struct)

diff --git a/IOKit/NXTypes.h b/IOKit/NXTypes.h
index 469697e..6b4e1b8 100644
--- a/IOKit/NXTypes.h
+++ b/IOKit/NXTypes.h
@@ -39,118 +39,129 @@ typedef struct _NXTabletProximityData {
     SInt16 reserved1;
 } NXTabletProximityData, *NXTabletProximityDataPtr;

-typedef union NXEventData {
-    typedef struct mouse {
-        UInt8 subx;
-        UInt8 suby;
-        SInt16 eventNum;
-        SInt32 click;
-        UInt8 pressure;
-        UInt8 buttonNumber;
-        UInt8 subType;
-        UInt8 reserved2;
-        SInt32 reserved3;
-        typedef union tablet {
-            NXTabletPointData point;
-            NXTabletProximityData proximity;
-        } tablet;
-    } mouse;
-    typedef struct mouseMove {
-        SInt32 dx;
-        SInt32 dy;
-        UInt8 subx;
-        UInt8 suby;
-        UInt8 subType;
-        UInt8 reserved1;
-        SInt32 reserved2;
-        typedef union tablet {
-            NXTabletPointData point;
-            NXTabletProximityData proximity;
-        } tablet;
-    } mouseMove;
-    typedef struct key {
-        UInt16 origCharSet;
-        SInt16 repeat;
-        UInt16 charSet;
-        UInt16 charCode;
-        UInt16 keyCode;
-        UInt16 origCharCode;
-        SInt32 reserved1;
-        UInt32 keyboardType;
-        SInt32 reserved2;
-        SInt32 reserved3;
-        SInt32 reserved4;
-        SInt32 reserved5[4];
-    } key;
-    typedef struct tracking {
-        SInt16 reserved;
-        SInt16 eventNum;
-        SInt32 trackingNum;
-        SInt32 userData;
-        SInt32 reserved1;
-        SInt32 reserved2;
-        SInt32 reserved3;
-        SInt32 reserved4;
-        SInt32 reserved5;
-        SInt32 reserved6[4];
-    } tracking;
-    typedef struct zoom {
-        SInt16 deltaAxis1;
-        SInt16 deltaAxis2;
-        SInt16 deltaAxis3;
-        SInt16 reserved1;
-        SInt32 fixedDeltaAxis1;
-        SInt32 fixedDeltaAxis2;
-        SInt32 fixedDeltaAxis3;
-        SInt32 pointDeltaAxis1;
-        SInt32 pointDeltaAxis2;
-        SInt32 pointDeltaAxis3;
-        SInt32 reserved8[4];
-    } scrollWheel, zoom;
-    typedef struct compound {
-        SInt16 reserved;
-        SInt16 subType;
-        typedef union misc {
-            float F[11];
-            SInt32 L[11];
-            SInt16 S[22];
-            char C[44];
-        } misc;
-    } compound;
-    typedef struct tablet {
-        SInt32 x;
-        SInt32 y;
-        SInt32 z;
-        UInt16 buttons;
-        UInt16 pressure;
-        typedef struct tilt {
-            SInt16 x;
-            SInt16 y;
-        } tilt;
-        UInt16 rotation;
-        SInt16 tangentialPressure;
-        UInt16 deviceID;
-        SInt16 vendor1;
-        SInt16 vendor2;
-        SInt16 vendor3;
-        SInt32 reserved[4];
+typedef struct _mouse{
+    UInt8 subx;
+    UInt8 suby;
+    SInt16 eventNum;
+    SInt32 click;
+    UInt8 pressure;
+    UInt8 buttonNumber;
+    UInt8 subType;
+    UInt8 reserved2;
+    SInt32 reserved3;
+    union _tablet {
+        NXTabletPointData point;
+        NXTabletProximityData proximity;
     } tablet;
-    typedef struct proximity {
-        UInt16 vendorID;
-        UInt16 tabletID;
-        UInt16 pointerID;
-        UInt16 deviceID;
-        UInt16 systemTabletID;
-        UInt16 vendorPointerType;
-        UInt32 pointerSerialNumber;
-        UInt64 uniqueID __attribute__((packed));
-        UInt32 capabilityMask;
-        UInt8 pointerType;
-        UInt8 enterProximity;
-        SInt16 reserved1;
-        SInt32 reserved2[4];
-    } proximity;
+} mouse;
+
+typedef struct _mouseMove {
+    SInt32 dx;
+    SInt32 dy;
+    UInt8 subx;
+    UInt8 suby;
+    UInt8 subType;
+    UInt8 reserved1;
+    SInt32 reserved2;
+    union _tablet {
+        NXTabletPointData point;
+        NXTabletProximityData proximity;
+    } tablet;
+} mouseMove;
+typedef struct _key {
+    UInt16 origCharSet;
+    SInt16 repeat;
+    UInt16 charSet;
+    UInt16 charCode;
+    UInt16 keyCode;
+    UInt16 origCharCode;
+    SInt32 reserved1;
+    UInt32 keyboardType;
+    SInt32 reserved2;
+    SInt32 reserved3;
+    SInt32 reserved4;
+    SInt32 reserved5[4];
+} key;
+typedef struct _tracking {
+    SInt16 reserved;
+    SInt16 eventNum;
+    SInt32 trackingNum;
+    SInt32 userData;
+    SInt32 reserved1;
+    SInt32 reserved2;
+    SInt32 reserved3;
+    SInt32 reserved4;
+    SInt32 reserved5;
+    SInt32 reserved6[4];
+} tracking;
+typedef struct _zoom {
+    SInt16 deltaAxis1;
+    SInt16 deltaAxis2;
+    SInt16 deltaAxis3;
+    SInt16 reserved1;
+    SInt32 fixedDeltaAxis1;
+    SInt32 fixedDeltaAxis2;
+    SInt32 fixedDeltaAxis3;
+    SInt32 pointDeltaAxis1;
+    SInt32 pointDeltaAxis2;
+    SInt32 pointDeltaAxis3;
+    SInt32 reserved8[4];
+} scrollWheel, zoom;
+typedef struct _compound {
+    SInt16 reserved;
+    SInt16 subType;
+    union _misc {
+        float F[11];
+        SInt32 L[11];
+        SInt16 S[22];
+        char C[44];
+    } misc;
+} compound;
+typedef struct _tablet {
+    SInt32 x;
+    SInt32 y;
+    SInt32 z;
+    UInt16 buttons;
+    UInt16 pressure;
+    struct _tilt {
+        SInt16 x;
+        SInt16 y;
+    } tilt;
+    UInt16 rotation;
+    SInt16 tangentialPressure;
+    UInt16 deviceID;
+    SInt16 vendor1;
+    SInt16 vendor2;
+    SInt16 vendor3;
+    SInt32 reserved[4];
+} tablet;
+typedef struct _proximity {
+    UInt16 vendorID;
+    UInt16 tabletID;
+    UInt16 pointerID;
+    UInt16 deviceID;
+    UInt16 systemTabletID;
+    UInt16 vendorPointerType;
+    UInt32 pointerSerialNumber;
+    UInt64 uniqueID __attribute__((packed));
+    UInt32 capabilityMask;
+    UInt8 pointerType;
+    UInt8 enterProximity;
+    SInt16 reserved1;
+    SInt32 reserved2[4];
+} proximity;
+
+
+typedef union _NXEventData {
+    mouse amouse;
+    mouseMove amousemove;
+    key akey;
+    tracking atracking;
+    scrollWheel ascrollWhell;
+    compound acompound;
+    tablet atablet;
+    proximity aproximity;
 } NXEventData;


from idaobjctypes.

PoomSmart avatar PoomSmart commented on May 24, 2024

@thelongestusernameofall With your solution, try importing IDA.h several times and see if the number of Local Types increased.

from idaobjctypes.

thelongestusernameofall avatar thelongestusernameofall commented on May 24, 2024

@thelongestusernameofall With your solution, try importing IDA.h several times and see if the number of Local Types increased.

NSData type found not be used before import, after import, it's okay.

from idaobjctypes.

PoomSmart avatar PoomSmart commented on May 24, 2024

@thelongestusernameofall I take that as in seeing no unnecessary increase in Local Types?

from idaobjctypes.

PoomSmart avatar PoomSmart commented on May 24, 2024

This repository now recommends using IDA Pro 7.2 or higher.

from idaobjctypes.

Related Issues (8)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.