[git commit master 1/1] FreeBSD compat

Denys Vlasenko vda.linux at googlemail.com
Mon Jan 24 16:04:59 UTC 2011


commit: http://git.busybox.net/busybox/commit/?id=e3c127d846eb2febbdb86bcf6c0c92622ab98eea
branch: http://git.busybox.net/busybox/commit/?id=refs/heads/master

Signed-off-by: Chris Rees <utisoft at gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
 include/libbb.h    |    6 ++++++
 include/platform.h |    6 ++++++
 libbb/getpty.c     |    2 +-
 3 files changed, 13 insertions(+), 1 deletions(-)

diff --git a/include/libbb.h b/include/libbb.h
index 6e37b8d..aa7944a 100644
--- a/include/libbb.h
+++ b/include/libbb.h
@@ -38,6 +38,12 @@
 #include <time.h>
 #include <unistd.h>
 #include <sys/param.h>
+#ifndef HAVE_CLEARENV
+# define clearenv() do { if (environ) environ[0] = NULL; } while (0)
+#endif
+#ifndef HAVE_FDATASYNC
+# define fdatasync fsync
+#endif
 #ifdef HAVE_MNTENT_H
 # include <mntent.h>
 #endif
diff --git a/include/platform.h b/include/platform.h
index bbbc0a9..2bc88c3 100644
--- a/include/platform.h
+++ b/include/platform.h
@@ -10,9 +10,12 @@
 /* Assume all these functions exist by default.  Platforms where it is not
  * true will #undef them below.
  */
+#define HAVE_CLEARENV 1
+#define HAVE_FDATASYNC 1
 #define HAVE_FDPRINTF 1
 #define HAVE_MEMRCHR 1
 #define HAVE_MKDTEMP 1
+#define HAVE_PTSNAME_R 1
 #define HAVE_SETBIT 1
 #define HAVE_SIGHANDLER_T 1
 #define HAVE_STRCASESTR 1
@@ -253,7 +256,10 @@ typedef uint32_t bb__aliased_uint32_t FIX_ALIASING;
 #if (defined __digital__ && defined __unix__) \
  || defined __APPLE__ \
  || defined __FreeBSD__ || defined __OpenBSD__ || defined __NetBSD__
+# undef HAVE_CLEARENV
+# undef HAVE_FDATASYNC
 # undef HAVE_MNTENT_H
+# undef HAVE_PTSNAME_R
 # undef HAVE_SYS_STATFS_H
 # undef HAVE_SIGHANDLER_T
 #else
diff --git a/libbb/getpty.c b/libbb/getpty.c
index ea653b0..6a15cff 100644
--- a/libbb/getpty.c
+++ b/libbb/getpty.c
@@ -19,7 +19,7 @@ int FAST_FUNC xgetpty(char *line)
 	if (p > 0) {
 		grantpt(p); /* chmod+chown corresponding slave pty */
 		unlockpt(p); /* (what does this do?) */
-#if 0 /* if ptsname_r is not available... */
+#ifndef HAVE_PTSNAME_R
 		const char *name;
 		name = ptsname(p); /* find out the name of slave pty */
 		if (!name) {
-- 
1.7.3.4



More information about the busybox-cvs mailing list