[Soot-list] Spark Error with Flowdroid
Quentin Sabah
quentin.sabah at inria.fr
Sun Jun 16 08:46:19 EDT 2013
So I managed to get the .class
I think what we have here is the perfect example of the limits of use-original-names in the current implementation.
The local "l8" indicates that we are tracking the local slot #8. However, the local variable name table isn't complete, the name "part" is only flagged for 3 bytecodes [463:463+3]. There are many other use of slot 8 that should be associated with "part", but they aren't.
LocalVariableTable:
Start Length Slot Name Signature
0 467 0 this Lcom/oreilly/servlet/MultipartRequest;
0 467 1 request Ljavax/servlet/http/HttpServletRequest;
0 467 2 saveDirectory Ljava/lang/String;
0 467 3 maxPostSize I
0 467 4 encoding Ljava/lang/String;
0 467 5 policy Lcom/oreilly/servlet/multipart/FileRenamePolicy;
78 388 6 dir Ljava/io/File;
163 303 7 parser Lcom/oreilly/servlet/multipart/MultipartParser;
183 90 8 queryParameters Ljava/util/Hashtable;
190 83 9 queryParameterNames Ljava/util/Enumeration;
202 61 10 paramName Ljava/lang/Object;
214 49 11 values [Ljava/lang/String;
223 40 12 newValues Ljava/util/Vector;
226 37 13 i I
463 3 8 part Lcom/oreilly/servlet/multipart/Part;
283 172 9 name Ljava/lang/String;
298 54 10 paramPart Lcom/oreilly/servlet/multipart/ParamPart;
305 47 11 value Ljava/lang/String;
319 33 12 existingValues Ljava/util/Vector;
370 85 10 filePart Lcom/oreilly/servlet/multipart/FilePart;
377 78 11 fileName Ljava/lang/String;
Because in Soot we rely too much on this table when use-original-names is enabled, we generate two Local for the same local variable in this case. It can be corrected, the original name should be some kind of Tag associated with each Unit, telling what probable original name should be associated with each Local.
--
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
More information about the Soot-list
mailing list