@@ -57,7 +57,7 @@ def positive(value):
5757 )
5858 parser .add_argument ("--context" , type = str , default = None , help = argparse .SUPPRESS )
5959 parser .add_argument (
60- "--coverage" , type = str , default = None , help = "Where to write the coverage data"
60+ "--coverage" , type = str , default = "visited.txt" , help = "Where to write the coverage data"
6161 )
6262 parser .add_argument ("--names" , type = str , default = None , help = argparse .SUPPRESS )
6363 parser .add_argument (
@@ -105,36 +105,6 @@ def positive(value):
105105 help = "Manticore config file (.yml) to use. (default config file pattern is: ./[.]m[anti]core.yml)" ,
106106 )
107107
108- detectors = parser .add_argument_group ("Detectors" )
109-
110- detectors .add_argument (
111- "--list-ethereum-detectors" ,
112- help = "List available ethereum detectors" ,
113- action = ListEthereumDetectors ,
114- nargs = 0 ,
115- default = False ,
116- )
117-
118- detectors .add_argument (
119- "--list-native-detectors" ,
120- help = "List available native detectors" ,
121- action = ListNativeDetectors ,
122- nargs = 0 ,
123- default = False ,
124- )
125-
126- detectors .add_argument (
127- "--exclude" ,
128- help = "Comma-separated list of detectors that should be excluded" ,
129- action = "store" ,
130- dest = "detectors_to_exclude" ,
131- default = "" ,
132- )
133-
134- detectors .add_argument (
135- "--exclude-all" , help = "Excludes all detectors" , action = "store_true" , default = False
136- )
137-
138108 bin_flags = parser .add_argument_group ("Binary flags" )
139109 bin_flags .add_argument ("--entrysymbol" , type = str , default = None , help = "Symbol as entry point" )
140110 bin_flags .add_argument ("--assertions" , type = str , default = None , help = argparse .SUPPRESS )
@@ -201,6 +171,28 @@ def positive(value):
201171 "--contract" , type = str , help = "Contract name to analyze in case of multiple contracts"
202172 )
203173
174+ eth_detectors = parser .add_argument_group ("Ethereum detectors" )
175+
176+ eth_detectors .add_argument (
177+ "--list-detectors" ,
178+ help = "List available detectors" ,
179+ action = ListEthereumDetectors ,
180+ nargs = 0 ,
181+ default = False ,
182+ )
183+
184+ eth_detectors .add_argument (
185+ "--exclude" ,
186+ help = "Comma-separated list of detectors that should be excluded" ,
187+ action = "store" ,
188+ dest = "detectors_to_exclude" ,
189+ default = "" ,
190+ )
191+
192+ eth_detectors .add_argument (
193+ "--exclude-all" , help = "Excludes all detectors" , action = "store_true" , default = False
194+ )
195+
204196 eth_flags .add_argument (
205197 "--avoid-constant" ,
206198 action = "store_true" ,
@@ -246,13 +238,5 @@ def __call__(self, parser, *args, **kwargs):
246238 parser .exit ()
247239
248240
249- class ListNativeDetectors (argparse .Action ):
250- def __call__ (self , parser , * args , ** kwargs ):
251- from .native .detectors import get_detectors_classes , output_detectors
252-
253- output_detectors (get_detectors_classes ())
254- parser .exit ()
255-
256-
257241if __name__ == "__main__" :
258242 main ()
0 commit comments