@@ -28,35 +28,19 @@ class SystemFunction extends FunctionWithWrappers instanceof CommandExecutionFun
2828 */
2929class VarargsExecFunctionCall extends FunctionCall {
3030 VarargsExecFunctionCall ( ) {
31- getTarget ( ) .hasGlobalName ( "execl" ) or
32- getTarget ( ) .hasGlobalName ( "execle" ) or
33- getTarget ( ) .hasGlobalName ( "execlp" ) or
34- // Windows
35- getTarget ( ) .hasGlobalName ( "_execl" ) or
36- getTarget ( ) .hasGlobalName ( "_execle" ) or
37- getTarget ( ) .hasGlobalName ( "_execlp" ) or
38- getTarget ( ) .hasGlobalName ( "_execlpe" ) or
39- getTarget ( ) .hasGlobalName ( "_spawnl" ) or
40- getTarget ( ) .hasGlobalName ( "_spawnle" ) or
41- getTarget ( ) .hasGlobalName ( "_spawnlp" ) or
42- getTarget ( ) .hasGlobalName ( "_spawnlpe" ) or
43- getTarget ( ) .hasGlobalName ( "_wexecl" ) or
44- getTarget ( ) .hasGlobalName ( "_wexecle" ) or
45- getTarget ( ) .hasGlobalName ( "_wexeclp" ) or
46- getTarget ( ) .hasGlobalName ( "_wexeclpe" ) or
47- getTarget ( ) .hasGlobalName ( "_wspawnl" ) or
48- getTarget ( ) .hasGlobalName ( "_wspawnle" ) or
49- getTarget ( ) .hasGlobalName ( "_wspawnlp" ) or
50- getTarget ( ) .hasGlobalName ( "_wspawnlpe" )
31+ getTarget ( )
32+ .hasGlobalName ( [
33+ "execl" , "execle" , "execlp" ,
34+ // Windows
35+ "_execl" , "_execle" , "_execlp" , "_execlpe" , "_spawnl" , "_spawnle" , "_spawnlp" ,
36+ "_spawnlpe" , "_wexecl" , "_wexecle" , "_wexeclp" , "_wexeclpe" , "_wspawnl" , "_wspawnle" ,
37+ "_wspawnlp" , "_wspawnlpe"
38+ ] )
5139 }
5240
5341 /** Whether the last argument to the function is an environment pointer */
5442 predicate hasEnvironmentArgument ( ) {
55- getTarget ( ) .hasGlobalName ( "execle" ) or
56- getTarget ( ) .hasGlobalName ( "_execle" ) or
57- getTarget ( ) .hasGlobalName ( "_execlpe" ) or
58- getTarget ( ) .hasGlobalName ( "_wexecle" ) or
59- getTarget ( ) .hasGlobalName ( "_wexeclpe" )
43+ getTarget ( ) .hasGlobalName ( [ "execle" , "_execle" , "_execlpe" , "_wexecle" , "_wexeclpe" ] )
6044 }
6145
6246 /**
@@ -83,11 +67,7 @@ class VarargsExecFunctionCall extends FunctionCall {
8367 * all the other ones start with the command.
8468 */
8569 private int getCommandIdx ( ) {
86- if
87- getTarget ( ) .getName ( ) .matches ( "\\_spawn%" ) or
88- getTarget ( ) .getName ( ) .matches ( "\\_wspawn%" )
89- then result = 1
90- else result = 0
70+ if getTarget ( ) .getName ( ) .matches ( [ "\\_spawn%" , "\\_wspawn%" ] ) then result = 1 else result = 0
9171 }
9272}
9373
@@ -98,28 +78,14 @@ class VarargsExecFunctionCall extends FunctionCall {
9878 */
9979class ArrayExecFunctionCall extends FunctionCall {
10080 ArrayExecFunctionCall ( ) {
101- getTarget ( ) .hasGlobalName ( "execv" ) or
102- getTarget ( ) .hasGlobalName ( "execvp" ) or
103- getTarget ( ) .hasGlobalName ( "execvpe" ) or
104- getTarget ( ) .hasGlobalName ( "execve" ) or
105- getTarget ( ) .hasGlobalName ( "fexecve" ) or
106- // Windows variants
107- getTarget ( ) .hasGlobalName ( "_execv" ) or
108- getTarget ( ) .hasGlobalName ( "_execve" ) or
109- getTarget ( ) .hasGlobalName ( "_execvp" ) or
110- getTarget ( ) .hasGlobalName ( "_execvpe" ) or
111- getTarget ( ) .hasGlobalName ( "_spawnv" ) or
112- getTarget ( ) .hasGlobalName ( "_spawnve" ) or
113- getTarget ( ) .hasGlobalName ( "_spawnvp" ) or
114- getTarget ( ) .hasGlobalName ( "_spawnvpe" ) or
115- getTarget ( ) .hasGlobalName ( "_wexecv" ) or
116- getTarget ( ) .hasGlobalName ( "_wexecve" ) or
117- getTarget ( ) .hasGlobalName ( "_wexecvp" ) or
118- getTarget ( ) .hasGlobalName ( "_wexecvpe" ) or
119- getTarget ( ) .hasGlobalName ( "_wspawnv" ) or
120- getTarget ( ) .hasGlobalName ( "_wspawnve" ) or
121- getTarget ( ) .hasGlobalName ( "_wspawnvp" ) or
122- getTarget ( ) .hasGlobalName ( "_wspawnvpe" )
81+ getTarget ( )
82+ .hasGlobalName ( [
83+ "execv" , "execvp" , "execvpe" , "execve" , "fexecve" ,
84+ // Windows variants
85+ "_execv" , "_execve" , "_execvp" , "_execvpe" , "_spawnv" , "_spawnve" , "_spawnvp" ,
86+ "_spawnvpe" , "_wexecv" , "_wexecve" , "_wexecvp" , "_wexecvpe" , "_wspawnv" , "_wspawnve" ,
87+ "_wspawnvp" , "_wspawnvpe"
88+ ] )
12389 }
12490
12591 /** The argument with the array of command arguments */
@@ -133,11 +99,7 @@ class ArrayExecFunctionCall extends FunctionCall {
13399 * all the other ones start with the command.
134100 */
135101 private int getCommandIdx ( ) {
136- if
137- getTarget ( ) .getName ( ) .matches ( "\\_spawn%" ) or
138- getTarget ( ) .getName ( ) .matches ( "\\_wspawn%" )
139- then result = 1
140- else result = 0
102+ if getTarget ( ) .getName ( ) .matches ( [ "\\_spawn%" , "\\_wspawn%" ] ) then result = 1 else result = 0
141103 }
142104}
143105
0 commit comments