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

Cheng Zhang cheng.zhang.stap at gmail.com
Sat Feb 26 20:44:52 EST 2011


Hi, Jiangfan,

I am not sure about the internal mechanism, but I once tried this.
The answer is all the four classes will be processed.

I guess the reference resolving is mainly based on type hierarchy
instead of calling relations.

Best,
Cheng

On Sun, Feb 27, 2011 at 3:09 AM, jiangfan shi <jiangfan.shi at gmail.com> wrote:
> Hi Eric,
> Just follow one quick question.
>
>>
>> Without -app, Soot only loads bodies for classes
>> explicitly mentioned on the command line (and in -process-dir), with
>> -app Soot also loads bodies for all classes transitively referenced by
>> the former.
>
> For "all classes transitively referenced by the former", it seems we need
> some call graph-like mechanism to decide which concrete classes are possible
> referenced by the classes on the command line. For example, we have a class
> A with a method M1 shown below:
> class A{
>    B tmpb; // B is an interface.
>    M1(){
>       tmpb.M2();
>    }
> }
>
> In the above example, B is an interface with 3 implementations, B1, B2 and
> B3. If we have the follow command line:
>
> java soot.Main --app A
>
> Will only B be processed or will all B, B1, B2 and B3 be processed? A will
> be processed with BodyTransformer in any case.
> Thanks.
> Jiangfan
>>
>> -process-dir is just a quick way of making all classes in a directory
>> "application classes", i.e. load and process their bodies. Again, this
>> is only useful when not in -w mode.
>>
>> Eric
>> --
>> Dr. Eric Bodden, http://bodden.de/
>> Principal Investigator in Secure Services at CASED
>> Coordinator of the CASED Advisory Board of Study Affairs
>> PostDoc at Software Technology Group, Technische Universität Darmstadt
>> Tel: +49 6151 16-5478    Fax: +49 6151 16-5410
>> Mailing Address: S2|02 A209, Hochschulstraße 10, 64289 Darmstadt
>
>
> _______________________________________________
> Soot-list mailing list
> Soot-list at sable.mcgill.ca
> http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>
>


More information about the Soot-list mailing list