[Soot-list] Inconsistence type hierarchy

Bernhard Berger berber at tzi.de
Thu Mar 19 01:52:30 EDT 2015


Hi Steven,

I expected to find some application classes that extend or implement phantom classes. The problem in my case is in fact that a class  has an interface as its superclass. I’m trying to create a minimal reproducer for this.

Bernhard
 
> Am 18.03.2015 um 22:53 schrieb Steven Arzt <Steven.Arzt at cased.de>:
> 
> Hi Bernhard,
> 
> It's ok for a class inside an APK to inherit from a phantom class or implement a phantom interface. The phantom class inference mechanism however needs to make sure that classes which are on the interface list of some other class are correctly marked as interfaces. If this is not the case yet and the "interface" flag is not set for those phantom classes, this is a bug.
> 
> Best regards,
>  Steven
> 
> -----Ursprüngliche Nachricht-----
> Von: soot-list-bounces at CS.McGill.CA [mailto:soot-list-bounces at CS.McGill.CA] Im Auftrag von Bernhard Berger
> Gesendet: Mittwoch, 18. März 2015 22:17
> An: soot-list at sable.mcgill.ca
> Betreff: [Soot-list] Inconsistence type hierarchy
> 
> Hi,
> 
> today I encountered a strange situation in the type hierarchy while analyzing an Android app. I found several (non-phantom) classes that extend (phantom) interfaces or  implement (phantom) classes. It seems that these classes aren’t contained in the android.jar file. 
> 
> The MainActivity, for instance, implements the phantom android.app.ActionBar$TabListener. Calling isInterface for TabListener returns false indicating that it is an class. This leads to problems if a class extends an „interface“. When FastHierarchy is created an Exception is thrown in dfsVisit:
>> java.lang.RuntimeException: Attempt to dfs visit interface android.content.DialogInterface
> 
> Is this behavior known? Does someone know a solution?
> 
> Regards,
> Bernhard
> _______________________________________________
> Soot-list mailing list
> Soot-list at CS.McGill.CA
> https://mailman.CS.McGill.CA/mailman/listinfo/soot-list
> 
> 
> 



More information about the Soot-list mailing list