<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 14 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Sprechblasentext Zchn";
        margin:0cm;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";}
span.E-MailFormatvorlage17
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
span.SprechblasentextZchn
        {mso-style-name:"Sprechblasentext Zchn";
        mso-style-priority:99;
        mso-style-link:Sprechblasentext;
        font-family:"Tahoma","sans-serif";
        mso-fareast-language:DE;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";
        mso-fareast-language:EN-US;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 2.0cm 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=DE link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>This ldc instruction should be converted to an assignment of the respective constant value from the pool. Additionally, you should have a ConstantValueTag on the SootField. Take the code I sent you and see what Jimple code you get. Then check for the tags associated with the SootField.<o:p></o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p>&nbsp;</o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p>&nbsp;</o:p></span></p><p class=MsoNormal><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p>&nbsp;</o:p></span></p><p class=MsoNormal><b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Von:</span></b><span lang=EN-US style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> soot-list-bounces@CS.McGill.CA [mailto:soot-list-bounces@CS.</span><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>McGill.CA] <b>Im Auftrag von </b>Roman Petriev<br><b>Gesendet:</b> Dienstag, 17. Februar 2015 22:07<br><b>An:</b> Steven Arzt<br><b>Cc:</b> soot-list@cs.mcgill.ca<br><b>Betreff:</b> Re: [Soot-list] Modifying initial values fields of method.<o:p></o:p></span></p><p class=MsoNormal><o:p>&nbsp;</o:p></p><div><div><div><p class=MsoNormal>Thanks! I will follow your advice.<o:p></o:p></p></div><div><p class=MsoNormal>But we still have a question to discuss - &quot;ldc&quot; instruction use strings from constant pool. I want to modify values in pool with soot.<o:p></o:p></p></div></div></div><div><p class=MsoNormal><o:p>&nbsp;</o:p></p><div><p class=MsoNormal>2015-02-17 21:47 GMT+03:00 Steven Arzt &lt;<a href="mailto:Steven.Arzt@cased.de" target="_blank">Steven.Arzt@cased.de</a>&gt;:<o:p></o:p></p><div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>If the ldc instruction is there, Soot will transform it into the respective Jimple instruction.</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>&nbsp;</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>However, you code is overly complex. Try this:</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>&nbsp;</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>SootMethod sm = Scene.v().getMethod(“&lt;Decomp: void &lt;clinit&gt;&gt;”);</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>For (Unit u : sm.getActiveBody.getUnits())</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.out.println(u);</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>&nbsp;</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>This assumes that your class Decomp does not reside in a package, otherwise you need to add that to the method signature passed to getMethod().</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>&nbsp;</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Put this code into the internalTransform method of a SceneTransformer. You don’t need a callgraph for this, that just makes the whole thing much more complex than necessary.</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span lang=EN-US style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>&nbsp;</span><o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>Von:</span></b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> <a href="mailto:soot-list-bounces@CS.McGill.CA" target="_blank">soot-list-bounces@CS.McGill.CA</a> [mailto:<a href="mailto:soot-list-bounces@CS.McGill.CA" target="_blank">soot-list-bounces@CS.McGill.CA</a>] <b>Im Auftrag von </b>Roman Petriev<br><b>Gesendet:</b> Dienstag, 17. Februar 2015 19:07<br><b>An:</b> Sam Blackshear<br><b>Cc:</b> <a href="mailto:soot-list@cs.mcgill.ca" target="_blank">soot-list@cs.mcgill.ca</a><br><b>Betreff:</b> Re: [Soot-list] Modifying initial values fields of method.</span><o:p></o:p></p><div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Thanks, Sam. I saw &quot;ldc&quot; instruction in byte code. (Description:&nbsp;<span style='font-size:10.5pt;font-family:"Arial","sans-serif";color:black;background:#F9F9F9'>push a constant&nbsp;<i>#index</i>&nbsp;from a constant pool (String, int or float) onto the stack)</span><o:p></o:p></p><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:10.5pt;font-family:"Arial","sans-serif";color:black;background:#F9F9F9'>So ...&nbsp;</span><span style='font-size:10.5pt;font-family:"Arial","sans-serif";color:black'>I need to modify constant pool, isn't it? Could I do it with soot? How?</span><o:p></o:p></p></div></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>2015-02-17 20:16 GMT+03:00 Sam Blackshear &lt;<a href="mailto:samuel.blackshear@colorado.edu" target="_blank">samuel.blackshear@colorado.edu</a>&gt;:<o:p></o:p></p><div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Hi Roman,&nbsp;<o:p></o:p></p></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; I think the reason that your transformation isn't working is that javac is optimizing away your fields. Inlining of static final field reads for fields with primitive or String types is one of the only compile-time optimizations the Java compiler knows how to do. You may be able to get around this in some other way, but I don't think you'll see those field reads in the bytecode.<o:p></o:p></p><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='color:#888888'>- Sam</span><o:p></o:p></p></div></div><div><div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>On Tue, Feb 17, 2015 at 10:10 AM, Roman Petriev &lt;<a href="mailto:vvpiroman@gmail.com" target="_blank">vvpiroman@gmail.com</a>&gt; wrote:<o:p></o:p></p><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Test class:<o:p></o:p></p><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div><div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>public class Decomp {<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp;&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; private static final String FUUU = &quot;fdgsfdhsrthd&quot;;&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; private static final String AAAA = &quot;olololo&quot;;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp;&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; public static void main(String[] args) {<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; System.out.println(FUUU);<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; System.out.println(AAAA);<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; }<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>}<o:p></o:p></p></div></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Test transformation:<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div><div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; @Override<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; protected void internalTransform(Body body, String phaseName, Map&lt;String, String&gt; options) {<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; System.out.println(body.getMethod().getSignature());<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp;&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; int weight = soot.jbco.Main.getWeight(phaseName, body.getMethod().getSignature());<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; if (weight == 0){&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; return;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; }<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; System.out.println(&quot; --- --- --- --- --- --- &quot;);<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; QueueReader&lt;Edge&gt; edgeList = Scene.v().getCallGraph().listener();<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; while (edgeList.hasNext()) {<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Edge edge = edgeList.next();<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(edge.isClinit() &amp;&amp; edge.src().getDeclaringClass().getName().equalsIgnoreCase(body.getMethod().getDeclaringClass().getName())){<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.println(edge.src().getName()); &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.println(edge.tgt().getName());<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Iterator&lt;Unit&gt; itu = edge.tgt().getActiveBody().getUnits().snapshotIterator();<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; while(itu.hasNext()){<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Unit u = itu.next();<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.println(&quot; --- unit : &quot; + u.toString());<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.println(&quot;PL size : &quot; + edge.tgt().getActiveBody().getParameterLocals().size());<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.println(&quot;DB size : &quot; + edge.tgt().getActiveBody().getDefBoxes().size());<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; } &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; }<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; &nbsp; &nbsp; System.out.println(&quot; --- --- --- --- --- --- &quot;);<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp; &nbsp; }<o:p></o:p></p></div></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'><span style='font-size:9.5pt'>Hope this helps.</span><o:p></o:p></p></div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div></div><div><div><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p><div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>2015-02-17 9:25 GMT+03:00 Bodden, Eric &lt;<a href="mailto:eric.bodden@sit.fraunhofer.de" target="_blank">eric.bodden@sit.fraunhofer.de</a>&gt;:<o:p></o:p></p><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>Roman can you post here the entire and unmodified source code of the respective class?<br><br>Cheers,<br>Eric<o:p></o:p></p><div><div><p class=MsoNormal style='mso-margin-top-alt:auto;margin-bottom:12.0pt'><br>&gt; On 16.02.2015, at 23:52, Roman Petriev &lt;<a href="mailto:vvpiroman@gmail.com" target="_blank">vvpiroman@gmail.com</a>&gt; wrote:<br>&gt;<br>&gt; I tried to use call graph from scene and I found clinit!<br>&gt; But ... It contains in my test app:<br>&gt;<br>&gt; staticinvoke &lt;java.lang.Object: void registerNatives()&gt;()<br>&gt; return<br>&gt;<br>&gt; or<br>&gt;<br>&gt; staticinvoke &lt;java.lang.System: void registerNatives()&gt;()<br>&gt; &lt;java.lang.System: java.io.InputStream in&gt; = null<br>&gt; &lt;java.lang.System: java.io.PrintStream out&gt; = null<br>&gt; &lt;java.lang.System: java.io.PrintStream err&gt; = null<br>&gt; &lt;java.lang.System: java.lang.SecurityManager security&gt; = null<br>&gt; &lt;java.lang.System: java.io.Console cons&gt; = null<br>&gt; return<br>&gt;<br>&gt; But I want to get/set String constant ...<br>&gt;<br>&gt;<br>&gt; P.s. Thanks for any help!<br>&gt;<br>&gt;<br>&gt; 2015-02-17 0:29 GMT+03:00 Marc Miltenberger &lt;<a href="mailto:Marc.Miltenberger@cased.de" target="_blank">Marc.Miltenberger@cased.de</a>&gt;:<br>&gt; The method is called &lt;clinit&gt; and has the subsignature<br>&gt; void &lt;clinit&gt;()<br>&gt;<br>&gt; Am 16.02.2015 um 21:56 schrieb Roman Petriev:<br>&gt; &gt; Well ... How can I get access to clinit with soot? BodyTransformer<br>&gt; &gt; couldn't find this method.<br>&gt; &gt;<br>&gt; &gt; 2015-02-16 21:58 GMT+03:00 Marc-André Laverdière<br>&gt; &gt; &lt;<a href="mailto:marc-andre.laverdiere-papineau@polymtl.ca" target="_blank">marc-andre.laverdiere-papineau@polymtl.ca</a><br>&gt; &gt; &lt;mailto:<a href="mailto:marc-andre.laverdiere-papineau@polymtl.ca" target="_blank">marc-andre.laverdiere-papineau@polymtl.ca</a>&gt;&gt;:<br>&gt; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;If the field is static, then it will be in clinit...<br>&gt; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;Marc-André Laverdière-Papineau<br>&gt; &gt;&nbsp; &nbsp; &nbsp;Doctorant - PhD Candidate<br>&gt; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;On 16/02/15 01:25 PM, Roman Petriev wrote:<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt; Unfortunately, it didn't help :( ....<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt; Simplest &lt;init&gt; contains 3 items, e.g.:<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt; r0 := @this: decomp.Decomp<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt; specialinvoke r0.&lt;java.lang.Object: void &lt;init&gt;()&gt;()<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt; return<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt; Decomp class contains 2 constants.<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt; Do you have any ideas else?<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt; P.s. javap:<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; private static final java.lang.String FUUU;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; Signature: Ljava/lang/String;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; flags: ACC_PRIVATE, ACC_STATIC, ACC_FINAL<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; ConstantValue: String fdgsfdhsrthd<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; private static final java.lang.String AAAA;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; Signature: Ljava/lang/String;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; flags: ACC_PRIVATE, ACC_STATIC, ACC_FINAL<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; ConstantValue: String olololo<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt; Probably, constants were initialized somewhere else ...<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt; 2015-02-16 14:22 GMT+03:00 Bodden, Eric &lt;<a href="mailto:eric.bodden@sit.fraunhofer.de" target="_blank">eric.bodden@sit.fraunhofer.de</a> &lt;mailto:<a href="mailto:eric.bodden@sit.fraunhofer.de" target="_blank">eric.bodden@sit.fraunhofer.de</a>&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt; &lt;mailto:<a href="mailto:eric.bodden@sit.fraunhofer.de" target="_blank">eric.bodden@sit.fraunhofer.de</a><br>&gt; &gt;&nbsp; &nbsp; &nbsp;&lt;mailto:<a href="mailto:eric.bodden@sit.fraunhofer.de" target="_blank">eric.bodden@sit.fraunhofer.de</a>&gt;&gt;&gt;:<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;Hi Roman.<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;You will find the appropriate assignment within the body of the<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;method &lt;init&gt; within SomeClass. You need to modify the assignment there.<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;Hope this helps,<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;Eric<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; On 16.02.2015, at 11:15, Roman Petriev &lt;<a href="mailto:vvpiroman@gmail.com" target="_blank">vvpiroman@gmail.com</a> &lt;mailto:<a href="mailto:vvpiroman@gmail.com" target="_blank">vvpiroman@gmail.com</a>&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;&lt;mailto:<a href="mailto:vvpiroman@gmail.com" target="_blank">vvpiroman@gmail.com</a> &lt;mailto:<a href="mailto:vvpiroman@gmail.com" target="_blank">vvpiroman@gmail.com</a>&gt;&gt;&gt; wrote:<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; I do body transformation (Jimple) for JBCO, and I need to do this<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;for code obfuscation.<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; 2015-02-16 13:10 GMT+03:00 Roman Petriev &lt;<a href="mailto:vvpiroman@gmail.com" target="_blank">vvpiroman@gmail.com</a> &lt;mailto:<a href="mailto:vvpiroman@gmail.com" target="_blank">vvpiroman@gmail.com</a>&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;&lt;mailto:<a href="mailto:vvpiroman@gmail.com" target="_blank">vvpiroman@gmail.com</a> &lt;mailto:<a href="mailto:vvpiroman@gmail.com" target="_blank">vvpiroman@gmail.com</a>&gt;&gt;&gt;:<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; Ok.<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; E.g.:<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; public class SomeClass{<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;&nbsp; &nbsp; &nbsp;//I want to get/set value of this constant.<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;&nbsp; &nbsp; &nbsp;private final String SOME_PARAMETER = &quot;value&quot;;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;&nbsp; &nbsp; &nbsp;public static void main(String[] args) {<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;&nbsp; &nbsp; &nbsp;//................<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;&nbsp; &nbsp; &nbsp;}<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; }<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; It's possible?<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; 2015-02-16 9:26 GMT+03:00 Bodden, Eric<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;&lt;<a href="mailto:eric.bodden@sit.fraunhofer.de" target="_blank">eric.bodden@sit.fraunhofer.de</a><br>&gt; &gt;&nbsp; &nbsp; &nbsp;&lt;mailto:<a href="mailto:eric.bodden@sit.fraunhofer.de" target="_blank">eric.bodden@sit.fraunhofer.de</a>&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&lt;mailto:<a href="mailto:eric.bodden@sit.fraunhofer.de" target="_blank">eric.bodden@sit.fraunhofer.de</a><br>&gt; &gt;&nbsp; &nbsp; &nbsp;&lt;mailto:<a href="mailto:eric.bodden@sit.fraunhofer.de" target="_blank">eric.bodden@sit.fraunhofer.de</a>&gt;&gt;&gt;:<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; Hi Roman.<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; If you describe your problem in more detail then there is a<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;better chance that people will be able to help you out.<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; Best wishes,<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; Eric Bodden<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; &gt; On 15.02.2015, at 22:22, Roman Petriev &lt;<a href="mailto:vvpiroman@gmail.com" target="_blank">vvpiroman@gmail.com</a> &lt;mailto:<a href="mailto:vvpiroman@gmail.com" target="_blank">vvpiroman@gmail.com</a>&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;&lt;mailto:<a href="mailto:vvpiroman@gmail.com" target="_blank">vvpiroman@gmail.com</a> &lt;mailto:<a href="mailto:vvpiroman@gmail.com" target="_blank">vvpiroman@gmail.com</a>&gt;&gt;&gt; wrote:<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; &gt; Hi all!<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; &gt; I want to get/set initial value of method field<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;(java.lang.String). How I can do it?<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; &gt; Best regards,<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; &gt; Roman.<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; &gt; _______________________________________________<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; &gt; Soot-list mailing list<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; &gt; <a href="mailto:Soot-list@CS.McGill.CA" target="_blank">Soot-list@CS.McGill.CA</a> &lt;mailto:<a href="mailto:Soot-list@CS.McGill.CA" target="_blank">Soot-list@CS.McGill.CA</a>&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&lt;mailto:<a href="mailto:Soot-list@CS.McGill.CA" target="_blank">Soot-list@CS.McGill.CA</a> &lt;mailto:<a href="mailto:Soot-list@CS.McGill.CA" target="_blank">Soot-list@CS.McGill.CA</a>&gt;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; &gt; <a href="https://mailman.CS.McGill.CA/mailman/listinfo/soot-list" target="_blank">https://mailman.CS.McGill.CA/mailman/listinfo/soot-list</a><br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; --<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; Prof. Eric Bodden, Ph.D., <a href="http://sse.ec-spride.de/" target="_blank">http://sse.ec-spride.de/</a><br>&gt; &gt;&nbsp; &nbsp; &nbsp;<a href="http://bodden.de/" target="_blank">http://bodden.de/</a><br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; Head of Secure Software Engineering at Fraunhofer SIT, TU<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;Darmstadt and EC SPRIDE<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; Tel: <a href="tel:%2B49%206151%2016-75422" target="_blank">+49 6151 16-75422</a>&nbsp; &nbsp; Fax: <a href="tel:%2B49%206151%20869-127" target="_blank">+49 6151 869-127</a><br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt; Room B5.11, Fraunhofer SIT, Rheinstraße 75, 64295 Darmstadt<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp; &gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;--<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;Prof. Eric Bodden, Ph.D., <a href="http://sse.ec-spride.de/" target="_blank">http://sse.ec-spride.de/</a><br>&gt; &gt;&nbsp; &nbsp; &nbsp;<a href="http://bodden.de/" target="_blank">http://bodden.de/</a><br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;Head of Secure Software Engineering at Fraunhofer SIT, TU<br>&gt; &gt;&nbsp; &nbsp; &nbsp;Darmstadt<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;and EC SPRIDE<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;Tel: <a href="tel:%2B49%206151%2016-75422" target="_blank">+49 6151 16-75422</a>&nbsp; &nbsp; Fax: <a href="tel:%2B49%206151%20869-127" target="_blank">+49 6151 869-127</a><br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;&nbsp; &nbsp; &nbsp;Room B5.11, Fraunhofer SIT, Rheinstraße 75, 64295 Darmstadt<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt; _______________________________________________<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt; Soot-list mailing list<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt; <a href="mailto:Soot-list@CS.McGill.CA" target="_blank">Soot-list@CS.McGill.CA</a> &lt;mailto:<a href="mailto:Soot-list@CS.McGill.CA" target="_blank">Soot-list@CS.McGill.CA</a>&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt; <a href="https://mailman.CS.McGill.CA/mailman/listinfo/soot-list" target="_blank">https://mailman.CS.McGill.CA/mailman/listinfo/soot-list</a><br>&gt; &gt;&nbsp; &nbsp; &nbsp;&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;_______________________________________________<br>&gt; &gt;&nbsp; &nbsp; &nbsp;Soot-list mailing list<br>&gt; &gt;&nbsp; &nbsp; &nbsp;<a href="mailto:Soot-list@CS.McGill.CA" target="_blank">Soot-list@CS.McGill.CA</a> &lt;mailto:<a href="mailto:Soot-list@CS.McGill.CA" target="_blank">Soot-list@CS.McGill.CA</a>&gt;<br>&gt; &gt;&nbsp; &nbsp; &nbsp;<a href="https://mailman.CS.McGill.CA/mailman/listinfo/soot-list" target="_blank">https://mailman.CS.McGill.CA/mailman/listinfo/soot-list</a><br>&gt; &gt;<br>&gt; &gt;<br>&gt; &gt;<br>&gt; &gt;<br>&gt; &gt; _______________________________________________<br>&gt; &gt; Soot-list mailing list<br>&gt; &gt; <a href="mailto:Soot-list@CS.McGill.CA" target="_blank">Soot-list@CS.McGill.CA</a><br>&gt; &gt; <a href="https://mailman.CS.McGill.CA/mailman/listinfo/soot-list" target="_blank">https://mailman.CS.McGill.CA/mailman/listinfo/soot-list</a><br>&gt; &gt;<br>&gt;<br>&gt; _______________________________________________<br>&gt; Soot-list mailing list<br>&gt; <a href="mailto:Soot-list@CS.McGill.CA" target="_blank">Soot-list@CS.McGill.CA</a><br>&gt; <a href="https://mailman.CS.McGill.CA/mailman/listinfo/soot-list" target="_blank">https://mailman.CS.McGill.CA/mailman/listinfo/soot-list</a><br>&gt;<br>&gt; _______________________________________________<br>&gt; Soot-list mailing list<br>&gt; <a href="mailto:Soot-list@CS.McGill.CA" target="_blank">Soot-list@CS.McGill.CA</a><br>&gt; <a href="https://mailman.CS.McGill.CA/mailman/listinfo/soot-list" target="_blank">https://mailman.CS.McGill.CA/mailman/listinfo/soot-list</a><br><br>--<br>Prof. Eric Bodden, Ph.D., <a href="http://sse.ec-spride.de/" target="_blank">http://sse.ec-spride.de/</a> <a href="http://bodden.de/" target="_blank">http://bodden.de/</a><br>Head of Secure Software Engineering at Fraunhofer SIT, TU Darmstadt and EC SPRIDE<br>Tel: <a href="tel:%2B49%206151%2016-75422" target="_blank">+49 6151 16-75422</a>&nbsp; &nbsp; Fax: <a href="tel:%2B49%206151%20869-127" target="_blank">+49 6151 869-127</a><br>Room B5.11, Fraunhofer SIT, Rheinstraße 75, 64295 Darmstadt<o:p></o:p></p></div></div></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div></div></div><p class=MsoNormal style='mso-margin-top-alt:auto;margin-bottom:12.0pt'><br>_______________________________________________<br>Soot-list mailing list<br><a href="mailto:Soot-list@CS.McGill.CA" target="_blank">Soot-list@CS.McGill.CA</a><br><a href="https://mailman.CS.McGill.CA/mailman/listinfo/soot-list" target="_blank">https://mailman.CS.McGill.CA/mailman/listinfo/soot-list</a><o:p></o:p></p></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div></div></div></div><p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto'>&nbsp;<o:p></o:p></p></div></div></div></div></div></div><p class=MsoNormal><o:p>&nbsp;</o:p></p></div></div></body></html>