/* doio.c
*
- * Copyright (c) 1991-1997, Larry Wall
+ * Copyright (c) 1991-1999, Larry Wall
*
* You may distribute under the terms of either the GNU General Public
* License or the Artistic License, as specified in the README file.
#include "perl.h"
#if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM)
+#ifndef HAS_SEM
#include <sys/ipc.h>
+#endif
#ifdef HAS_MSG
#include <sys/msg.h>
#endif
-#ifdef HAS_SEM
-#include <sys/sem.h>
-#endif
#ifdef HAS_SHM
#include <sys/shm.h>
# ifndef HAS_SHMAT_PROTOTYPE
#define APPLY_TAINT_PROPER() \
STMT_START { \
- if (PL_tainting && PL_tainted) { goto taint_proper_label; } \
+ if (PL_tainted) { TAINT_PROPER(what); } \
} STMT_END
/* This is a first heuristic; it doesn't catch tainting magic. */
struct utimbuf utbuf;
#else
struct {
- long actime;
- long modtime;
+ Time_t actime;
+ Time_t modtime;
} utbuf;
#endif
Zero(&utbuf, sizeof utbuf, char);
#ifdef BIG_TIME
- utbuf.actime = (Time_t)SvNVx(*++mark); /* time accessed */
- utbuf.modtime = (Time_t)SvNVx(*++mark); /* time modified */
+ utbuf.actime = (Time_t)SvNVx(*++mark); /* time accessed */
+ utbuf.modtime = (Time_t)SvNVx(*++mark); /* time modified */
#else
- utbuf.actime = SvIVx(*++mark); /* time accessed */
- utbuf.modtime = SvIVx(*++mark); /* time modified */
+ utbuf.actime = (Time_t)SvIVx(*++mark); /* time accessed */
+ utbuf.modtime = (Time_t)SvIVx(*++mark); /* time modified */
#endif
APPLY_TAINT_PROPER();
tot = sp - mark;
}
return tot;
- taint_proper_label:
- TAINT_PROPER(what);
- return 0; /* this should never happen */
-
#undef APPLY_TAINT_PROPER
}