popen.h 659 B

1234567891011121314151617181920212223
  1. // SPDX-License-Identifier: GPL-3.0-or-later
  2. #ifndef NETDATA_POPEN_H
  3. #define NETDATA_POPEN_H 1
  4. #include "../libnetdata.h"
  5. #define PIPE_READ 0
  6. #define PIPE_WRITE 1
  7. extern FILE *mypopen(const char *command, volatile pid_t *pidptr);
  8. extern FILE *mypopene(const char *command, volatile pid_t *pidptr, char **env);
  9. extern int mypclose(FILE *fp, pid_t pid);
  10. extern int netdata_spawn(const char *command, volatile pid_t *pidptr);
  11. extern int netdata_spawn_waitpid(pid_t pid);
  12. extern void myp_init(void);
  13. extern void myp_free(void);
  14. extern int myp_reap(pid_t pid);
  15. extern void signals_unblock(void);
  16. extern void signals_reset(void);
  17. #endif /* NETDATA_POPEN_H */