waffleman waffleman - 1 year ago 186
Python Question

How to parse a C header file?

Does anyone know a spiffy way to use C header files in Python? For example I have a C program that includes a global variable:

typedef struct ImageInfo
uint8_t revisionMajor;
uint8_t revisionMinor;
uint16_t checksum;

} ImageInfo;

ImageInfo gImageInfo; /* Placed at a specific address by the linker */

I would like to be able to take the binary generated by the C compiler/linker and parse this structure (and possibly modify it) with a Python script.

Answer Source

Have a look at this C++ header parser written in Python. You can also write your own parser using any of these tools:

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download