IO::Socket now sets $!, avoids eval/die (patch from Graham Barr
[p5sagit/p5-mst-13.2.git] / perl.h
diff --git a/perl.h b/perl.h
index b47745f..66162e6 100644 (file)
--- a/perl.h
+++ b/perl.h
@@ -821,6 +821,10 @@ struct perl_mstats {
  * in the face of half-implementations.)
  */
 
+#ifdef I_SYSMODE
+#include <sys/mode.h>
+#endif
+
 #ifndef S_IFMT
 #   ifdef _S_IFMT
 #      define S_IFMT _S_IFMT
@@ -915,6 +919,30 @@ struct perl_mstats {
 #   define S_ISGID 02000
 #endif
 
+#ifndef S_IRWXU
+#   define S_IRWXU (S_IRUSR|S_IWUSR|S_IXUSR)
+#endif 
+
+#ifndef S_IRWXG
+#   define S_IRWXG (S_IRGRP|S_IWGRP|S_IXGRP)
+#endif 
+
+#ifndef S_IRWXO
+#   define S_IRWXO (S_IROTH|S_IWOTH|S_IXOTH)
+#endif 
+
+#ifndef S_IREAD
+#   define S_IREAD S_IRUSR
+#endif
+
+#ifndef S_IWRITE
+#   define S_IWRITE S_IWUSR
+#endif
+
+#ifndef S_IEXEC
+#   define S_IEXEC S_IXUSR
+#endif
+
 #ifdef ff_next
 #   undef ff_next
 #endif
@@ -2059,9 +2087,9 @@ char *crypt (const char*, const char*);
 #    ifndef getenv
 char *getenv (const char*);
 #    endif /* !getenv */
-#if !defined(EPOC) && !(defined(__hpux) && defined(_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS == 64)
+#    if !defined(EPOC) && !(defined(__hpux) && defined(_FILE_OFFSET_BITS) && _FILE_OFFSET_BITS == 64)
 Off_t lseek (int,Off_t,int);
-#endif
+#    endif
 #  endif /* !DONT_DECLARE_STD */
 char *getlogin (void);
 #endif /* !__cplusplus */
@@ -3142,20 +3170,19 @@ typedef struct am_table_short AMTS;
 
 #ifdef I_FCNTL
 #  include <fcntl.h>
-#else
-#  ifndef O_RDONLY
-/* Assume UNIX defaults */
-#    define O_RDONLY   0000
-#    define O_WRONLY   0001
-#    define O_RDWR     0002
-#    define O_CREAT    0100
-#  endif
 #endif
 
 #ifdef I_SYS_FILE
 #  include <sys/file.h>
 #endif
 
+#ifndef O_RDONLY
+/* Assume UNIX defaults */
+#    define O_RDONLY   0000
+#    define O_WRONLY   0001
+#    define O_RDWR     0002
+#    define O_CREAT    0100
+#endif
 
 #ifdef IAMSUID