Martin Mohr
a6917e46ad
Summary of FileOutputStream.writeBytes: simulate reading from array and writing to outside ('real world')
2014-05-16 15:19:21 +02:00
Martin Mohr
671bbcec01
Method Summaries: add support for reading array load instructions from XML
2014-05-16 15:19:21 +02:00
Martin Mohr
72a0b70e1c
model for FileOutputStream.writeBytes
2014-05-16 15:19:21 +02:00
Martin Mohr
51b28a45b6
let FileInputStream.readBytes() modify the given array
2014-05-16 15:18:02 +02:00
Juergen Graf
7c80cd3c97
allow a default method state to be injected into the interprocedural exception analysis
2014-05-06 23:55:49 +02:00
Juergen Graf
cc5162b95f
remove some compiler warnings in nullpointer analysis
2014-05-06 23:55:49 +02:00
Juergen Graf
00a9b03389
always compute exception pruned cfg, not only when standard analysis was successful
2014-05-06 23:53:18 +02:00
Julian Dolby
91fe95c05d
classpath file. i have no idea where it went
2014-04-30 10:13:10 -04:00
Julian Dolby
038a39dbf5
bug fixes for source buffers when the source files is all on a single
...
line
2014-04-29 11:21:58 -04:00
Julian Dolby
92bec0cc0b
move to Reader API to help with annoying /r/n issues is source mapping
2014-04-29 11:21:01 -04:00
Julian Dolby
6bb598e6dc
fix for annyoing \r\n newline issues in text from html files
2014-04-29 11:19:14 -04:00
Julian Dolby
a7c44d4789
new helper method
2014-04-29 11:17:38 -04:00
Julian Dolby
de5f123fbd
Merge branch 'master' of https://github.com/wala/WALA
2014-04-29 09:21:33 -04:00
Julian Dolby
05cf4e4f66
Merge branch 'master' of https://github.com/wala/WALA
...
Conflicts:
com.ibm.wala.core/.classpath
2014-04-29 09:21:18 -04:00
Manu Sridharan
600e5ad50f
synchronize methods. Fixes #43
2014-04-24 12:35:34 -07:00
Julian Dolby
ab5ee8b3a5
merge
2014-04-24 09:01:01 -04:00
Manu Sridharan
a4c1774ee0
fix compile errors for com.ibm.wala.core
2014-04-11 12:54:59 -07:00
Tobias Blaschke
71060b7348
Document Android-Stuff (II)
2014-04-11 17:59:10 +02:00
Tobias Blaschke
f83ee59d8d
Add UnknownIntent to AndroidSettingFactory
2014-04-11 17:59:09 +02:00
Tobias Blaschke
92ee930865
Document Android stuff (I)
...
I'm going through all "my" classes and add documentation where missing.
2014-04-11 17:59:09 +02:00
Tobias Blaschke
cc2ffec023
Additional check in ParameterAccessor
...
getThisAs tests for supertype now
2014-04-11 17:59:09 +02:00
Tobias Blaschke
5f51dac201
Additional structural Models for Android
...
Now there are four structural models:
* SequentialAndroidModel: No loops
* SingleStartAndroidModel: User Interaction on a single component
* LoopAndroidModel: Stuff goes into background and comes back
* LoopKillAndroidModel: Restart of components due to low memory
2014-04-11 17:59:09 +02:00
Tobias Blaschke
1857121a44
Add "Custom Change" where applicable
...
Added the lines
BEGIN Custom Change
END Custom Change
2014-04-11 17:58:33 +02:00
Tobias Blaschke
3751366295
Bail out more information on failed assertion
2014-04-11 17:56:48 +02:00
Tobias Blaschke
dc2522f937
Add debugging info
...
Output the method and stackTrace for my new "most favourite" assertion
and continue.
2014-04-11 17:56:48 +02:00
Tobias Blaschke
e1fd417627
Extend DefaultInstantiationBehavior
2014-04-11 17:56:47 +02:00
Tobias Blaschke
2818ad33ad
Document settings
...
Add more documentation on the settings for generationg a Livecycle-model
2014-04-11 17:56:47 +02:00
Tobias Blaschke
851594cff5
Make Intents immutable when attached to Context
...
Oops.
Fixes in intent-Resolution
2014-04-11 17:56:47 +02:00
Tobias Blaschke
8e7d44f6dc
Better checks no system-components are included.
...
Before Activitys defined in the API could be pulled into the
entriepoints.
TODO: How can these get "Application" as loader?
2014-04-11 17:56:47 +02:00
Tobias Blaschke
aa3e2c6d2a
connetcThrough: Handle when param exluded
...
When the type of a parameter is in the exlusions connectThrough will
step over it now
2014-04-11 17:56:47 +02:00
Tobias Blaschke
042b1d6a01
Add some checks and output more info
...
AndroidPreFlightChecks now warns about entrypoints having a parameter
of type Object.
2014-04-11 17:56:47 +02:00
Tobias Blaschke
34b5c7284a
Allow changing the target of an Intent.
...
Code oftain sets the action of an Intent after it's constructor. Until
now a call to such a setter caused the Intent to become "unbound"
(conservative).
This approch allows setting the target once for each Intent - only on
the second call the Intent gets unbound.
This new variant could be dangerous: Setting the target in a branch of
execution may be invalid. This should be detected - no guarantees so!
Methods in question are:
* Intent.setAction
* Intent.setComponent
* Intent.setClass
* Intent.setClassName
2014-04-11 17:56:47 +02:00
Tobias Blaschke
b27bd944dc
IntentModel also calls Application and Provider EPs.
...
As the IntentModel should only be used on the start of an Analysis this
is the correct approach here.
2014-04-11 17:56:47 +02:00
Tobias Blaschke
cbfca1df4e
Call setIntent when starting a Component.
...
Before the Intent would only have been set by calling .attach (if
doBootSequence is enabled). Attach is only called when the modell is
filled with instructions.
This new variant calls setIntent when creating the wrapper for the model
(getMethodAs). This is much better!
2014-04-11 17:56:47 +02:00
Tobias Blaschke
eb4e3e4b58
Use setExplicit in androids Intent-Constructor
2014-04-11 17:56:46 +02:00
Tobias Blaschke
5a8c676a76
Disable extraction of AndroidContext
...
The AndroidContext was not used anyways.
2014-04-11 17:56:46 +02:00
Tobias Blaschke
abcd578a61
Use getters and setters for Intents, add explicit-attribute
...
These Changes are necessary to make the target of an Intent changeable.
Additionaly some preparing changes in the IntentMap
2014-04-11 17:56:46 +02:00
Tobias Blaschke
3533156542
More info on AndroidEntryPoints selected by heuristic
2014-04-11 17:56:46 +02:00
Tobias Blaschke
bf0e1a6347
Extend handling of IntentContext
...
* Create IntentContext even if no info available.
This is necessary to also track the start of unknown targets.
* Invalidate the target of an Inten upon a call to Intent.setAction
or Intent.fillIn
Additionally tidied up the classes a bit.
2014-04-11 17:56:46 +02:00
Tobias Blaschke
c4eb253721
Fixes in the UnknownTarget model.
...
Before the model went by the wrong Name, it failed if no app-internal
implementations of the targetType existed.
Also tidied up the code.
2014-04-11 17:56:46 +02:00
Tobias Blaschke
bd8f793135
Add a model for SystemServices
...
The SystemServiceModel creates and returns a new Instance of the
requested Service (if known).
TODO: We should use a single "global" instance per service instead.
2014-04-11 17:56:46 +02:00
Tobias Blaschke
224077d344
Fix Phi-Problem in SpecializedInstantiator
...
Under some curcumstances there was a hick-up when Phi-ing together some
newly generated instances.
2014-04-11 17:56:46 +02:00
Tobias Blaschke
eced01bcb0
Add debug info and toString methods
2014-04-11 17:54:03 +02:00
Tobias Blaschke
1dc721710f
Fix handling of types not in cha
...
Before the TypeSafeInstructionFactory would throw. Now it ignores.
2014-04-11 17:53:14 +02:00
Tobias Blaschke
1121b59b3b
Handling getSystemService.
...
Code to resolve a call to getSystemService to an actual Object based on
the String given to getSystemService.
Currently there's only TelephonyManager.
2014-04-11 17:53:14 +02:00
Tobias Blaschke
f561f1213d
Make flat components optional
2014-04-11 17:53:14 +02:00
Tobias Blaschke
d7f0d07122
Create Conponent instances in clinit
2014-04-11 17:53:14 +02:00
Tobias Blaschke
a9864a5dab
Added specialized instantiators.
...
Creating an instance of e.g. Context would pull in all compontents
yielding a ununsable result.
2014-04-11 17:53:13 +02:00
Tobias Blaschke
ece84ddf76
Fix field-handling for Intent-Wrappers
...
The IntentContextInterpreter always returned an empty set of fields
2014-04-11 17:53:13 +02:00
Tobias Blaschke
64749b91fe
Decrease some log-levels
...
Output was a bit to verbose.
2014-04-11 17:53:13 +02:00