@@ -108,17 +108,22 @@ func main() {
108
108
flag .StringVar (& logFileName , "log" , "" , "log file to write output to" )
109
109
flag .BoolVar (& quiet , "quiet" , false , "no ouput unless vulnerable" )
110
110
flag .BoolVar (& ignoreV1 , "ignore-v1" , false , "ignore log4j 1.x versions" )
111
+ flag .Usage = func () {
112
+ fmt .Fprintf (flag .CommandLine .Output (), "Usage of %s:\n " , os .Args [0 ])
113
+ flag .PrintDefaults ()
114
+ fmt .Fprint (flag .CommandLine .Output (), " PATH [, PATH ...]\n paths to search for Java code\n " )
115
+ }
111
116
flag .Parse ()
117
+ args := flag .Args ()
118
+ if len (args ) < 1 {
119
+ flag .Usage ()
120
+ os .Exit (1 )
121
+ }
112
122
113
123
if ! quiet {
114
124
fmt .Printf ("%s - a simple local log4j vulnerability scanner\n \n " , filepath .Base (os .Args [0 ]))
115
125
}
116
126
117
- if len (os .Args ) < 2 {
118
- fmt .Fprintf (os .Stderr , "Usage: %s [--verbose] [--quiet] [--ignore-v1] [--exclude <path>] [--log <file>] [ paths ... ]\n " , os .Args [0 ])
119
- os .Exit (1 )
120
- }
121
-
122
127
if logFileName != "" {
123
128
f , err := os .Create (logFileName )
124
129
if err != nil {
@@ -130,7 +135,7 @@ func main() {
130
135
defer f .Close ()
131
136
}
132
137
133
- for _ , root := range flag . Args () {
138
+ for _ , root := range args {
134
139
filepath .Walk (filepath .Clean (root ), func (path string , info os.FileInfo , err error ) error {
135
140
if err != nil {
136
141
fmt .Fprintf (errFile , "%s: %s\n " , path , err )
0 commit comments