Kraft, Nicholas A. and Malloy, Brian A. and Power, James F.
(2007)
A tool chain for reverse engineering C++ applications.
Science of Computer Programming, 69 (1-3).
pp. 3-13.
ISSN 0167-6423
Abstract
We describe a tool chain that enables experimentation and study of real C++ applications. Our tool chain enables reverse engineering and program analysis by exploiting gcc, and thus accepts any C++ application that can be analysed by the C++ parser and front end of gcc. Our current test suite consists of large, open-source applications with diverse problem domains, including language processing and gaming. Our tool chain is designed using a GXL-based pipe-filter architecture; therefore, the individual applications and libraries that constitute our tool chain each provide a point of access. The preferred point of access is the g4api Application Programming Interface (API), which is located at the end of the chain. g4api provides access to information about the C++ program under study, including information about declarations, such as classes (including template instantiations); namespaces; functions; and variables, statements and some expressions. Access to the information is via either a pointer to the global namespace, or a list interface.
Item Type: |
Article
|
Keywords: |
Reverse engineering; Graph-based tools; GXL; Pipe-filter architecture; Software metrics; |
Academic Unit: |
Faculty of Science and Engineering > Computer Science |
Item ID: |
8226 |
Identification Number: |
https://doi.org/10.1016/j.scico.2007.01.012 |
Depositing User: |
Dr. James Power
|
Date Deposited: |
17 May 2017 15:34 |
Journal or Publication Title: |
Science of Computer Programming |
Publisher: |
Elsevier |
Refereed: |
Yes |
URI: |
|
Use Licence: |
This item is available under a Creative Commons Attribution Non Commercial Share Alike Licence (CC BY-NC-SA). Details of this licence are available
here |
Repository Staff Only(login required)
|
Item control page |
Downloads per month over past year
Origin of downloads