aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/libbb.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/include/libbb.h b/include/libbb.h
index fce10f310..9950c61f2 100644
--- a/include/libbb.h
+++ b/include/libbb.h
@@ -509,10 +509,20 @@ int wait_nohang(int *wstat);
509#define wait_exitcode(w) ((w) >> 8) 509#define wait_exitcode(w) ((w) >> 8)
510#define wait_stopsig(w) ((w) >> 8) 510#define wait_stopsig(w) ((w) >> 8)
511#define wait_stopped(w) (((w) & 127) == 127) 511#define wait_stopped(w) (((w) & 127) == 127)
512/* Does NOT check that applet is NOFORK, just blindly runs it */
513int run_nofork_applet(const struct bb_applet *a, char **argv);
514/* wait4pid(spawn(argv)) + NOFORK/NOEXEC (if configured) */ 512/* wait4pid(spawn(argv)) + NOFORK/NOEXEC (if configured) */
515int spawn_and_wait(char **argv); 513int spawn_and_wait(char **argv);
514struct nofork_save_area {
515 const struct bb_applet *current_applet;
516 int xfunc_error_retval;
517 uint32_t option_mask32;
518 int die_sleep;
519 smallint saved;
520};
521void save_nofork_data(struct nofork_save_area *save);
522void restore_nofork_data(struct nofork_save_area *save);
523/* Does NOT check that applet is NOFORK, just blindly runs it */
524int run_nofork_applet(const struct bb_applet *a, char **argv);
525int run_nofork_applet_prime(struct nofork_save_area *old, const struct bb_applet *a, char **argv);
516 526
517/* Helpers for daemonization. 527/* Helpers for daemonization.
518 * 528 *