[Soot-list] cha, rta: ok but vta fails

Eric Bodden eric.bodden at ec-spride.de
Thu Jan 3 10:05:13 EST 2013


Hi Pierre.

You are right, the result is incorrect. The question is why this is
so. Looking at your code, it seems that you never call
soot.Main.main(...). This may be an issue. My recommendation is to
write code that:

1.) Sets arguments, as you do now.
2.) Inserts a SceneTransformer into the wjtp pack.
3.) Calls soot.Main.main(...) with your arguments.

The SceneTransformer can then simply access the call graph via
Scene.v().getCallGraph() - no call to
SparkTransformer.v().transform("",opt) is necessary.

Eric

On 27 December 2012 11:47, Pierre Caserta <pierre.caserta at loria.fr> wrote:
> I've clearly described my problem at this url:
> http://www.loria.fr/~casertap/vta_problem.html
>
> Can someone help me please?
> Best,
> Pierre
>
> ----- Mail original -----
>> De: "Pierre Caserta" <pierre.caserta at loria.fr>
>> À: "Quentin Sabah" <quentin.sabah at inria.fr>
>> Cc: "Soot List" <soot-list at sable.mcgill.ca>
>> Envoyé: Lundi 24 Décembre 2012 14:31:49
>> Objet: Re: [Soot-list] cha, rta: ok but vta fails
>>
>> Hi Quentin,
>> Thank you for your reply.
>>
>> I changed a little bit my example to introduce a virtual call inside
>> the method m but the vta analysis still does not work.
>>
>> I've updated my web page to include the new example with the
>> resulting call graphs.
>>
>>
>> ----- Mail original -----
>> > De: "Quentin Sabah" <quentin.sabah at inria.fr>
>> > À: "Soot List" <soot-list at sable.mcgill.ca>
>> > Envoyé: Lundi 24 Décembre 2012 11:57:28
>> > Objet: Re: [Soot-list] cha, rta: ok but vta fails
>> >
>> > Hi Pierre,
>> >
>> > > Hi everybody,
>> > > I'm able to generate cha and rta call graphs but vta is not
>> > > working.
>> > >
>> > > To clearly expose my problem, I created a web page:
>> > >
>> > > http://www.loria.fr/~casertap/vta_problem.html
>> >
>> > First, I'm not familiar with the VTA implementation in Soot.
>> > What I can see is that virtual call edges to m(), and to
>> > initializers, are missing in the VTA analysis result. I can also
>> > see
>> > that these methods have an empty body.
>> >
>> > Would the VTA performs some kind of side-effect analysis and deduce
>> > these edges may be omitted? Or, because these methods provide no
>> > typing information at all, the VTA is not reporting them as they
>> > should be ?
>> >
>> > Have you the same kind of results when the methods are filled with
>> > useful statements ?
>> >
>> > --
>> > Quentin Sabah, CIFRE Ph.D. student
>> > Grenoble University
>> > INRIA-SARDES                   | STMicroelectronics/AST
>> > Montbonnot, France             | Grenoble, France
>> > mailto:quentin.sabah at inria.fr  | mailto:quentin.sabah at st.com
>> > phone: +33 476 61 52 42        | phone: +33 476 58 44 14
>> >
>> > _______________________________________________
>> > Soot-list mailing list
>> > Soot-list at sable.mcgill.ca
>> > http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>> >
>> _______________________________________________
>> Soot-list mailing list
>> Soot-list at sable.mcgill.ca
>> http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
>>
> _______________________________________________
> Soot-list mailing list
> Soot-list at sable.mcgill.ca
> http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list



-- 
Eric Bodden, Ph.D., http://sse.ec-spride.de/ http://bodden.de/
Head of Secure Software Engineering Group at EC SPRIDE
Tel: +49 6151 16-75422    Fax: +49 6151 16-72051
Room 3.2.14, Mornewegstr. 30, 64293 Darmstadt


More information about the Soot-list mailing list