* GenConfig.pl when producing Config.pm.
*
* config.h for VMS
- * Version: 5.003_08
+ * Version: 5.004
*/
/* Configuration time: 19-Nov-1996 23:34
* when Perl is built. Please do not change it by hand; make
* any changes to FndVers.Com instead.
*/
-#define ARCHLIB_EXP "/perl_root/lib/VMS_VAX/5_00399" /**/
+#define ARCHLIB_EXP "/perl_root/lib/VMS_VAX/5_004" /**/
#define ARCHLIB ARCHLIB_EXP /*config-skip*/
/* ARCHNAME:
* is defined, and 'int *' otherwise. This is only useful if you
* have select(), of course.
*/
-#define Select_fd_set_t int * /**/
+#if defined(__DECC) && defined(__DECC_VER) && (__DECC_VER >= 50200000)
+#define Select_fd_set_t fd_set * /* config-skip */
+#else
+#define Select_fd_set_t int * /**/
+#endif
/* STDCHAR:
* This symbol is defined to be the type of char used in stdio.h.
} /* end of my_fwrite() */
/*}}}*/
+/*{{{ int my_flush(FILE *fp)*/
+int
+my_flush(FILE *fp)
+{
+ int res;
+ if ((res = fflush(fp)) == 0) {
+#ifdef VMS_DO_SOCKETS
+ struct mystat s;
+ if (Fstat(fileno(fp), &s) == 0 && !S_ISSOCK(s.st_mode))
+#endif
+ res = fsync(fileno(fp));
+ }
+ return res;
+}
+/*}}}*/
+
/*
* Here are replacements for the following Unix routines in the VMS environment:
* getpwuid Get information for a particular UIC or UID
# define do_aspawn Perl_do_aspawn
# define do_spawn Perl_do_spawn
# define my_fwrite Perl_my_fwrite
+# define my_flush Perl_my_flush
# define my_binmode Perl_my_binmode
# define my_getpwnam Perl_my_getpwnam
# define my_getpwuid Perl_my_getpwuid
*/
#define fwrite1 my_fwrite
+/* By default, flush data all the way to disk, not just to RMS buffers */
+#define Fflush(fp) my_flush(fp)
+
/* Use our own rmdir() */
#define rmdir(name) do_rmdir(name)
#define Stat(name,bufptr) flex_stat(name,bufptr)
#define Fstat(fd,bufptr) flex_fstat(fd,bufptr)
-/* By default, flush data all the way to disk, not just to RMS buffers */
-#define Fflush(fp) ((fflush(fp) || fsync(fileno(fp))) ? EOF : 0)
-
/* Setup for the dirent routines:
* opendir(), closedir(), readdir(), seekdir(), telldir(), and
* vmsreaddirversions(), and preprocessor stuff on which these depend:
unsigned long int do_aspawn _((SV *, SV **, SV **));
unsigned long int do_spawn _((char *));
int my_fwrite _((void *, size_t, size_t, FILE *));
+int my_flush _((FILE *));
FILE * my_binmode _((FILE *, char));
struct passwd * my_getpwnam _((char *name));
struct passwd * my_getpwuid _((Uid_t uid));