@@ -9,55 +9,36 @@ const {
9
9
validateUint32
10
10
} = require ( 'internal/validators' ) ;
11
11
12
- function setupProcessMethods ( ) {
12
+ function setupProcessMethods ( _chdir , _cpuUsage , _hrtime , _memoryUsage ,
13
+ _rawDebug , _umask , _initgroups , _setegid ,
14
+ _seteuid , _setgid , _setuid , _setgroups ) {
13
15
// Non-POSIX platforms like Windows don't have certain methods.
14
- if ( process . setgid !== undefined ) {
15
- setupPosixMethods ( ) ;
16
+ if ( _setgid !== undefined ) {
17
+ setupPosixMethods ( _initgroups , _setegid , _seteuid ,
18
+ _setgid , _setuid , _setgroups ) ;
16
19
}
17
20
18
- const {
19
- chdir : _chdir ,
20
- umask : _umask ,
21
- } = process ;
22
-
23
- process . chdir = chdir ;
24
- process . umask = umask ;
25
-
26
- function chdir ( directory ) {
21
+ process . chdir = function chdir ( directory ) {
27
22
if ( typeof directory !== 'string' ) {
28
23
throw new ERR_INVALID_ARG_TYPE ( 'directory' , 'string' , directory ) ;
29
24
}
30
25
return _chdir ( directory ) ;
31
- }
26
+ } ;
32
27
33
- function umask ( mask ) {
28
+ process . umask = function umask ( mask ) {
34
29
if ( mask === undefined ) {
35
30
// Get the mask
36
31
return _umask ( mask ) ;
37
32
}
38
33
mask = validateAndMaskMode ( mask , 'mask' ) ;
39
34
return _umask ( mask ) ;
40
- }
35
+ } ;
41
36
}
42
37
43
- function setupPosixMethods ( ) {
44
- const {
45
- initgroups : _initgroups ,
46
- setegid : _setegid ,
47
- seteuid : _seteuid ,
48
- setgid : _setgid ,
49
- setuid : _setuid ,
50
- setgroups : _setgroups
51
- } = process ;
52
-
53
- process . initgroups = initgroups ;
54
- process . setegid = setegid ;
55
- process . seteuid = seteuid ;
56
- process . setgid = setgid ;
57
- process . setuid = setuid ;
58
- process . setgroups = setgroups ;
38
+ function setupPosixMethods ( _initgroups , _setegid , _seteuid ,
39
+ _setgid , _setuid , _setgroups ) {
59
40
60
- function initgroups ( user , extraGroup ) {
41
+ process . initgroups = function initgroups ( user , extraGroup ) {
61
42
validateId ( user , 'user' ) ;
62
43
validateId ( extraGroup , 'extraGroup' ) ;
63
44
// Result is 0 on success, 1 if user is unknown, 2 if group is unknown.
@@ -67,25 +48,25 @@ function setupPosixMethods() {
67
48
} else if ( result === 2 ) {
68
49
throw new ERR_UNKNOWN_CREDENTIAL ( 'Group' , extraGroup ) ;
69
50
}
70
- }
51
+ } ;
71
52
72
- function setegid ( id ) {
53
+ process . setegid = function setegid ( id ) {
73
54
return execId ( id , 'Group' , _setegid ) ;
74
- }
55
+ } ;
75
56
76
- function seteuid ( id ) {
57
+ process . seteuid = function seteuid ( id ) {
77
58
return execId ( id , 'User' , _seteuid ) ;
78
- }
59
+ } ;
79
60
80
- function setgid ( id ) {
61
+ process . setgid = function setgid ( id ) {
81
62
return execId ( id , 'Group' , _setgid ) ;
82
- }
63
+ } ;
83
64
84
- function setuid ( id ) {
65
+ process . setuid = function setuid ( id ) {
85
66
return execId ( id , 'User' , _setuid ) ;
86
- }
67
+ } ;
87
68
88
- function setgroups ( groups ) {
69
+ process . setgroups = function setgroups ( groups ) {
89
70
if ( ! Array . isArray ( groups ) ) {
90
71
throw new ERR_INVALID_ARG_TYPE ( 'groups' , 'Array' , groups ) ;
91
72
}
@@ -98,7 +79,7 @@ function setupPosixMethods() {
98
79
if ( result > 0 ) {
99
80
throw new ERR_UNKNOWN_CREDENTIAL ( 'Group' , groups [ result - 1 ] ) ;
100
81
}
101
- }
82
+ } ;
102
83
103
84
function execId ( id , type , method ) {
104
85
validateId ( id , 'id' ) ;
0 commit comments