[Soot-list] process-dir, main-class, entry points and call graph

jiangfan shi jiangfan.shi at gmail.com
Fri Feb 25 15:14:14 EST 2011


Hello All,

I still want to ask one question, though there are some partial answers on
this topic. What is the relation between a process-dir and a call graph?
 This question seems to be related to the above four components, and my
understanding of relations among these four components is shown below:


   1. main-class defines a only entry point for user-defined application
   which may use "-app userApplication" to express
   2. such application entry point plus implicit entry points of VM together
   will contribute to construct a call graph. If we just consider the
   application, then it is the main-class which limits the reachable methods in
   the graph.
   3. process-dir defines a set of directory, and all class files in this
   directory will be processed by SOOT.  My answer to my question is that
   methods of these classes may not reachable from call graph constructed at
   the step 2.  Is this understanding right? If so, then how can SOOT process
   these classes in the directory with an inter-procedure way, which must use a
   call graph to propagate some results? I know there is a method like
   Scene.v().getApplicationClasses() which can access these classes. But such
   access seems not use a call graph.

Another related question is that for an application with many entry points
like a GUI or other listeners mechanism, the only way for SOOT to construct
a call graph including all application classes seems to construct a mock
main function. Is this claim right or do I miss something? I saw some posts
in the list proposed such solution.

Thanks a lot for your help!

Jiangfan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mailman.cs.mcgill.ca/pipermail/soot-list/attachments/20110225/f1862222/attachment.html 


More information about the Soot-list mailing list