@@ -9,55 +9,36 @@ const {
99 validateUint32
1010} = require ( 'internal/validators' ) ;
1111
12- function setupProcessMethods ( ) {
12+ function setupProcessMethods ( _chdir , _cpuUsage , _hrtime , _memoryUsage ,
13+ _rawDebug , _umask , _initgroups , _setegid ,
14+ _seteuid , _setgid , _setuid , _setgroups ) {
1315 // 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 ) ;
1619 }
1720
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 ) {
2722 if ( typeof directory !== 'string' ) {
2823 throw new ERR_INVALID_ARG_TYPE ( 'directory' , 'string' , directory ) ;
2924 }
3025 return _chdir ( directory ) ;
31- }
26+ } ;
3227
33- function umask ( mask ) {
28+ process . umask = function umask ( mask ) {
3429 if ( mask === undefined ) {
3530 // Get the mask
3631 return _umask ( mask ) ;
3732 }
3833 mask = validateAndMaskMode ( mask , 'mask' ) ;
3934 return _umask ( mask ) ;
40- }
35+ } ;
4136}
4237
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 ) {
5940
60- function initgroups ( user , extraGroup ) {
41+ process . initgroups = function initgroups ( user , extraGroup ) {
6142 validateId ( user , 'user' ) ;
6243 validateId ( extraGroup , 'extraGroup' ) ;
6344 // Result is 0 on success, 1 if user is unknown, 2 if group is unknown.
@@ -67,25 +48,25 @@ function setupPosixMethods() {
6748 } else if ( result === 2 ) {
6849 throw new ERR_UNKNOWN_CREDENTIAL ( 'Group' , extraGroup ) ;
6950 }
70- }
51+ } ;
7152
72- function setegid ( id ) {
53+ process . setegid = function setegid ( id ) {
7354 return execId ( id , 'Group' , _setegid ) ;
74- }
55+ } ;
7556
76- function seteuid ( id ) {
57+ process . seteuid = function seteuid ( id ) {
7758 return execId ( id , 'User' , _seteuid ) ;
78- }
59+ } ;
7960
80- function setgid ( id ) {
61+ process . setgid = function setgid ( id ) {
8162 return execId ( id , 'Group' , _setgid ) ;
82- }
63+ } ;
8364
84- function setuid ( id ) {
65+ process . setuid = function setuid ( id ) {
8566 return execId ( id , 'User' , _setuid ) ;
86- }
67+ } ;
8768
88- function setgroups ( groups ) {
69+ process . setgroups = function setgroups ( groups ) {
8970 if ( ! Array . isArray ( groups ) ) {
9071 throw new ERR_INVALID_ARG_TYPE ( 'groups' , 'Array' , groups ) ;
9172 }
@@ -98,7 +79,7 @@ function setupPosixMethods() {
9879 if ( result > 0 ) {
9980 throw new ERR_UNKNOWN_CREDENTIAL ( 'Group' , groups [ result - 1 ] ) ;
10081 }
101- }
82+ } ;
10283
10384 function execId ( id , type , method ) {
10485 validateId ( id , 'id' ) ;
0 commit comments