diff options
author | Ron Yorston <rmy@pobox.com> | 2016-04-04 16:22:54 +0100 |
---|---|---|
committer | Ron Yorston <rmy@pobox.com> | 2016-04-04 16:22:54 +0100 |
commit | 253dbd612b2d2f041f4263e15a3b94df70f41e36 (patch) | |
tree | f6c6e12a0541233058a7f7ccb1251afeb457da06 /include/libbb.h | |
parent | 3cf56a021d7a62512b477640e930e1a78288075c (diff) | |
parent | d7d4750e1e213e7448147186dddfe3bfbb47eea0 (diff) | |
download | busybox-w32-253dbd612b2d2f041f4263e15a3b94df70f41e36.tar.gz busybox-w32-253dbd612b2d2f041f4263e15a3b94df70f41e36.tar.bz2 busybox-w32-253dbd612b2d2f041f4263e15a3b94df70f41e36.zip |
Merge branch 'busybox' into merge
Diffstat (limited to 'include/libbb.h')
-rw-r--r-- | include/libbb.h | 32 |
1 files changed, 21 insertions, 11 deletions
diff --git a/include/libbb.h b/include/libbb.h index cb61faad9..ffe1504e1 100644 --- a/include/libbb.h +++ b/include/libbb.h | |||
@@ -148,14 +148,18 @@ | |||
148 | # include <ws2tcpip.h> | 148 | # include <ws2tcpip.h> |
149 | #else | 149 | #else |
150 | # include <arpa/inet.h> | 150 | # include <arpa/inet.h> |
151 | # if !defined(__socklen_t_defined) && !defined(_SOCKLEN_T_DECLARED) | 151 | //This breaks on bionic: |
152 | /* We #define socklen_t *after* includes, otherwise we get | 152 | //# if !defined(__socklen_t_defined) && !defined(_SOCKLEN_T_DECLARED) |
153 | * typedef redefinition errors from system headers | 153 | ///* We #define socklen_t *after* includes, otherwise we get |
154 | * (in case "is it defined already" detection above failed) | 154 | // * typedef redefinition errors from system headers |
155 | */ | 155 | // * (in case "is it defined already" detection above failed) |
156 | # define socklen_t bb_socklen_t | 156 | // */ |
157 | typedef unsigned socklen_t; | 157 | //# define socklen_t bb_socklen_t |
158 | # endif | 158 | // typedef unsigned socklen_t; |
159 | //# endif | ||
160 | //if this is still needed, add a fix along the lines of | ||
161 | // ifdef SPECIFIC_BROKEN_LIBC_CHECK / typedef socklen_t / endif | ||
162 | //in platform.h instead! | ||
159 | #endif | 163 | #endif |
160 | #ifndef HAVE_CLEARENV | 164 | #ifndef HAVE_CLEARENV |
161 | # define clearenv() do { if (environ) environ[0] = NULL; } while (0) | 165 | # define clearenv() do { if (environ) environ[0] = NULL; } while (0) |
@@ -507,6 +511,7 @@ void xsetuid(uid_t uid) FAST_FUNC; | |||
507 | void xsetegid(gid_t egid) FAST_FUNC; | 511 | void xsetegid(gid_t egid) FAST_FUNC; |
508 | void xseteuid(uid_t euid) FAST_FUNC; | 512 | void xseteuid(uid_t euid) FAST_FUNC; |
509 | void xchdir(const char *path) FAST_FUNC; | 513 | void xchdir(const char *path) FAST_FUNC; |
514 | void xfchdir(int fd) FAST_FUNC; | ||
510 | void xchroot(const char *path) FAST_FUNC; | 515 | void xchroot(const char *path) FAST_FUNC; |
511 | void xsetenv(const char *key, const char *value) FAST_FUNC; | 516 | void xsetenv(const char *key, const char *value) FAST_FUNC; |
512 | void bb_unsetenv(const char *key) FAST_FUNC; | 517 | void bb_unsetenv(const char *key) FAST_FUNC; |
@@ -1001,9 +1006,10 @@ int BB_EXECVP(const char *file, char *const argv[]) FAST_FUNC; | |||
1001 | #define BB_EXECVP(prog,cmd) execvp(prog,cmd) | 1006 | #define BB_EXECVP(prog,cmd) execvp(prog,cmd) |
1002 | #define BB_EXECLP(prog,cmd,...) execlp(prog,cmd,__VA_ARGS__) | 1007 | #define BB_EXECLP(prog,cmd,...) execlp(prog,cmd,__VA_ARGS__) |
1003 | #endif | 1008 | #endif |
1004 | int BB_EXECVP_or_die(char **argv) NORETURN FAST_FUNC; | 1009 | void BB_EXECVP_or_die(char **argv) NORETURN FAST_FUNC; |
1010 | void exec_prog_or_SHELL(char **argv) NORETURN FAST_FUNC; | ||
1005 | 1011 | ||
1006 | /* xvfork() can't be a _function_, return after vfork mangles stack | 1012 | /* xvfork() can't be a _function_, return after vfork in child mangles stack |
1007 | * in the parent. It must be a macro. */ | 1013 | * in the parent. It must be a macro. */ |
1008 | #define xvfork() \ | 1014 | #define xvfork() \ |
1009 | ({ \ | 1015 | ({ \ |
@@ -1015,6 +1021,7 @@ int BB_EXECVP_or_die(char **argv) NORETURN FAST_FUNC; | |||
1015 | #if BB_MMU | 1021 | #if BB_MMU |
1016 | pid_t xfork(void) FAST_FUNC; | 1022 | pid_t xfork(void) FAST_FUNC; |
1017 | #endif | 1023 | #endif |
1024 | void xvfork_parent_waits_and_exits(void) FAST_FUNC; | ||
1018 | 1025 | ||
1019 | /* NOMMU friendy fork+exec: */ | 1026 | /* NOMMU friendy fork+exec: */ |
1020 | pid_t spawn(char **argv) FAST_FUNC; | 1027 | pid_t spawn(char **argv) FAST_FUNC; |
@@ -1031,6 +1038,7 @@ pid_t wait_any_nohang(int *wstat) FAST_FUNC; | |||
1031 | * if (rc > 0) bb_error_msg("exit code: %d", rc & 0xff); | 1038 | * if (rc > 0) bb_error_msg("exit code: %d", rc & 0xff); |
1032 | */ | 1039 | */ |
1033 | int wait4pid(pid_t pid) FAST_FUNC; | 1040 | int wait4pid(pid_t pid) FAST_FUNC; |
1041 | int wait_for_exitstatus(pid_t pid) FAST_FUNC; | ||
1034 | /* Same as wait4pid(spawn(argv)), but with NOFORK/NOEXEC if configured: */ | 1042 | /* Same as wait4pid(spawn(argv)), but with NOFORK/NOEXEC if configured: */ |
1035 | int spawn_and_wait(char **argv) FAST_FUNC; | 1043 | int spawn_and_wait(char **argv) FAST_FUNC; |
1036 | /* Does NOT check that applet is NOFORK, just blindly runs it */ | 1044 | /* Does NOT check that applet is NOFORK, just blindly runs it */ |
@@ -1160,7 +1168,6 @@ extern void bb_herror_msg(const char *s, ...) __attribute__ ((format (printf, 1, | |||
1160 | extern void bb_herror_msg_and_die(const char *s, ...) __attribute__ ((noreturn, format (printf, 1, 2))) FAST_FUNC; | 1168 | extern void bb_herror_msg_and_die(const char *s, ...) __attribute__ ((noreturn, format (printf, 1, 2))) FAST_FUNC; |
1161 | extern void bb_perror_nomsg_and_die(void) NORETURN FAST_FUNC; | 1169 | extern void bb_perror_nomsg_and_die(void) NORETURN FAST_FUNC; |
1162 | extern void bb_perror_nomsg(void) FAST_FUNC; | 1170 | extern void bb_perror_nomsg(void) FAST_FUNC; |
1163 | extern void bb_info_msg(const char *s, ...) __attribute__ ((format (printf, 1, 2))) FAST_FUNC; | ||
1164 | extern void bb_verror_msg(const char *s, va_list p, const char *strerr) FAST_FUNC; | 1171 | extern void bb_verror_msg(const char *s, va_list p, const char *strerr) FAST_FUNC; |
1165 | extern void bb_logenv_override(void) FAST_FUNC; | 1172 | extern void bb_logenv_override(void) FAST_FUNC; |
1166 | 1173 | ||
@@ -1784,6 +1791,9 @@ void bb_progress_update(bb_progress_t *p, | |||
1784 | uoff_t transferred, | 1791 | uoff_t transferred, |
1785 | uoff_t totalsize) FAST_FUNC; | 1792 | uoff_t totalsize) FAST_FUNC; |
1786 | 1793 | ||
1794 | unsigned ubi_devnum_from_devname(const char *str) FAST_FUNC; | ||
1795 | int ubi_get_volid_by_name(unsigned ubi_devnum, const char *vol_name) FAST_FUNC; | ||
1796 | |||
1787 | 1797 | ||
1788 | extern const char *applet_name; | 1798 | extern const char *applet_name; |
1789 | 1799 | ||