11c606a6 (kx 2023-04-11 01:18:34 +0300 1)
11c606a6 (kx 2023-04-11 01:18:34 +0300 2) /**********************************************************************
11c606a6 (kx 2023-04-11 01:18:34 +0300 3)
11c606a6 (kx 2023-04-11 01:18:34 +0300 4) Copyright 2019 Andrey V.Kosteltsev
11c606a6 (kx 2023-04-11 01:18:34 +0300 5)
11c606a6 (kx 2023-04-11 01:18:34 +0300 6) Licensed under the Radix.pro License, Version 1.0 (the "License");
11c606a6 (kx 2023-04-11 01:18:34 +0300 7) you may not use this file except in compliance with the License.
11c606a6 (kx 2023-04-11 01:18:34 +0300 8) You may obtain a copy of the License at
11c606a6 (kx 2023-04-11 01:18:34 +0300 9)
11c606a6 (kx 2023-04-11 01:18:34 +0300 10) https://radix.pro/licenses/LICENSE-1.0-en_US.txt
11c606a6 (kx 2023-04-11 01:18:34 +0300 11)
11c606a6 (kx 2023-04-11 01:18:34 +0300 12) Unless required by applicable law or agreed to in writing, software
11c606a6 (kx 2023-04-11 01:18:34 +0300 13) distributed under the License is distributed on an "AS IS" BASIS,
11c606a6 (kx 2023-04-11 01:18:34 +0300 14) WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
11c606a6 (kx 2023-04-11 01:18:34 +0300 15) implied.
11c606a6 (kx 2023-04-11 01:18:34 +0300 16)
11c606a6 (kx 2023-04-11 01:18:34 +0300 17) **********************************************************************/
11c606a6 (kx 2023-04-11 01:18:34 +0300 18)
11c606a6 (kx 2023-04-11 01:18:34 +0300 19) #ifndef _SYSTEM_H_
11c606a6 (kx 2023-04-11 01:18:34 +0300 20) #define _SYSTEM_H_
11c606a6 (kx 2023-04-11 01:18:34 +0300 21)
11c606a6 (kx 2023-04-11 01:18:34 +0300 22) #ifdef __cplusplus
11c606a6 (kx 2023-04-11 01:18:34 +0300 23) extern "C" {
11c606a6 (kx 2023-04-11 01:18:34 +0300 24) #endif
11c606a6 (kx 2023-04-11 01:18:34 +0300 25)
11c606a6 (kx 2023-04-11 01:18:34 +0300 26)
11c606a6 (kx 2023-04-11 01:18:34 +0300 27) extern pid_t sys_exec_command( const char *cmd );
11c606a6 (kx 2023-04-11 01:18:34 +0300 28)
11c606a6 (kx 2023-04-11 01:18:34 +0300 29) /*****************************************************************
11c606a6 (kx 2023-04-11 01:18:34 +0300 30) sys_wait_command() - Wait for pid.
11c606a6 (kx 2023-04-11 01:18:34 +0300 31)
11c606a6 (kx 2023-04-11 01:18:34 +0300 32) Return values:
11c606a6 (kx 2023-04-11 01:18:34 +0300 33) -------------
11c606a6 (kx 2023-04-11 01:18:34 +0300 34) 0 - SUCCESS
11c606a6 (kx 2023-04-11 01:18:34 +0300 35) >=1 - status returned by child process
11c606a6 (kx 2023-04-11 01:18:34 +0300 36) -1 - Child terminated on signal
11c606a6 (kx 2023-04-11 01:18:34 +0300 37) -2 - Child terminated on unknown reason
11c606a6 (kx 2023-04-11 01:18:34 +0300 38) -3 - Cannot waitpid: waitpid() retusrs -1
11c606a6 (kx 2023-04-11 01:18:34 +0300 39)
11c606a6 (kx 2023-04-11 01:18:34 +0300 40) Error message with SIZE length saved into *ERRMSG buffer.
11c606a6 (kx 2023-04-11 01:18:34 +0300 41) *****************************************************************/
11c606a6 (kx 2023-04-11 01:18:34 +0300 42) extern int sys_wait_command( pid_t pid, char *errmsg, size_t size );
11c606a6 (kx 2023-04-11 01:18:34 +0300 43)
11c606a6 (kx 2023-04-11 01:18:34 +0300 44)
11c606a6 (kx 2023-04-11 01:18:34 +0300 45) #ifdef __cplusplus
11c606a6 (kx 2023-04-11 01:18:34 +0300 46) } /* ... extern "C" */
11c606a6 (kx 2023-04-11 01:18:34 +0300 47) #endif
11c606a6 (kx 2023-04-11 01:18:34 +0300 48)
11c606a6 (kx 2023-04-11 01:18:34 +0300 49) #endif /* _SYSTEM_H_ */