]> sjero.net Git - wget/blobdiff - src/sysdep.h
[svn] Get rid of ssl_iread/ssl_iwrite. Have the SSL code register its
[wget] / src / sysdep.h
index 2c94579501ebb83edcacbca747693f56ca9ed138..9b875e09cd816f96f10c832d45f5ab6794021d98 100644 (file)
@@ -108,33 +108,6 @@ so, delete this exception statement from your version.  */
 #endif
 #endif
 
-#ifdef __BEOS__
-# undef READ
-# undef WRITE
-# define READ(fd, buf, cnt) recv ((fd), (buf), (cnt), 0)
-# define WRITE(fd, buf, cnt) send ((fd), (buf), (cnt), 0)
-#endif
-
-/* mswindows.h defines these.  */
-#ifndef READ
-# define READ(fd, buf, cnt) read ((fd), (buf), (cnt))
-#endif
-#ifndef WRITE
-# define WRITE(fd, buf, cnt) write ((fd), (buf), (cnt))
-#endif
-#ifndef REALCLOSE
-# define REALCLOSE(x) close (x)
-#endif
-
-#define CLOSE(x) do {                          \
-  int C_sock = (x);                            \
-  if (C_sock >= 0)                             \
-    {                                          \
-      REALCLOSE (C_sock);                      \
-      DEBUGP (("Closing fd %d\n", C_sock));    \
-    }                                          \
-} while (0)
-
 /* Define a large integral type useful for storing large sizes that
    exceed sizes of one download, such as when printing the sum of all
    downloads.  Note that this has nothing to do with large file
@@ -219,16 +192,19 @@ void *memcpy ();
 # define MAP_FAILED ((void *) -1)
 #endif
 
-/* Enable system fnmatch only on systems where we know it works:
-   currently glibc-based systems and Solaris.  One could add more, but
-   fnmatch is not that large, so it might be better to play it
-   safe.  */
-#if defined __GLIBC__ && __GLIBC__ >= 2
-# define SYSTEM_FNMATCH
-#endif
-#ifdef solaris
-# define SYSTEM_FNMATCH
-#endif
+/* Enable system fnmatch only on systems where fnmatch.h is usable and
+   which are known to have a non-broken fnmatch implementation.
+   Currently those include glibc-based systems and Solaris.  One could
+   add more, but fnmatch is not that large, so it might be better to
+   play it safe.  */
+#ifdef HAVE_WORKING_FNMATCH_H
+# if defined __GLIBC__ && __GLIBC__ >= 2
+#  define SYSTEM_FNMATCH
+# endif
+# ifdef solaris
+#  define SYSTEM_FNMATCH
+# endif
+#endif /* HAVE_WORKING_FNMATCH_H */
 
 #ifdef SYSTEM_FNMATCH
 # include <fnmatch.h>
@@ -249,6 +225,11 @@ void *memcpy ();
 int fnmatch ();
 #endif
 
+/* Provide sig_atomic_t if the system doesn't.  */
+#ifndef HAVE_SIG_ATOMIC_T
+typedef int sig_atomic_t;
+#endif
+
 /* Provide uint32_t on the platforms that don't define it.  Although
    most code should be agnostic about integer sizes, some code really
    does need a 32-bit integral type.  Such code should use uint32_t.