Many program analyses require statically inferring the possible values of object variables. However, current approaches either do not account for correlations between object fields or do so in an ad hoc manner. The COAL project enables the specification and solution of these problems in a principled way. The project includes a language that is used to describe the classes of the objects whose value should be inferred. It also includes a solver, which computes the object values.
➡️ The original work was part of this publication:
@inproceedings{
10.5555/2818754.2818767,
author = {Octeau, Damien and Luchaup, Daniel and Dering, Matthew and Jha, Somesh and McDaniel, Patrick},
title = {Composite Constant Propagation: Application to Android Inter-Component Communication Analysis},
year = {2015},
isbn = {9781479919345},
publisher = {IEEE Press},
booktitle = {Proceedings of the 37th International Conference on Software Engineering - Volume 1},
pages = {77–88},
numpages = {12},
location = {Florence, Italy},
series = {ICSE '15}
}
git clone https://github.com/JordanSamhi/coal.git
cd coal sh build.sh
java -jar target/coal-all-0.2.jar options
Options:
-a
: The path to the APK to process.-cp
: The path to Android platforms folder.-model
: The path to the model files' folder.-out
: The path to the output folder.
➡️ For more information, you can refer to the archive of the original website: archive
- Maven - Dependency Management
This project is licensed under the Apache License 2.0 - see the LICENSE file for details
For any question, please contact us at: Jordan Samhi