IoTYPE(io) = PerlIO_intmode2str(rawmode, &mode[ix], &writing);
- namesv = sv_2mortal(newSVpv(oname,0));
+ namesv = sv_2mortal(newSVpvn(oname,len));
num_svs = 1;
svp = &namesv;
type = NULL;
mode[0] = 'w';
writing = 1;
if (out_raw)
- my_strlcat(mode, "b", PERL_MODE_MAX - 1);
+ mode[1] = 'b';
else if (out_crlf)
- my_strlcat(mode, "t", PERL_MODE_MAX - 1);
+ mode[1] = 't';
if (num_svs > 1) {
fp = PerlProc_popen_list(mode, num_svs, svp);
}
writing = 1;
if (out_raw)
- my_strlcat(mode, "b", PERL_MODE_MAX - 1);
+ mode[1] = 'b';
else if (out_crlf)
- my_strlcat(mode, "t", PERL_MODE_MAX - 1);
+ mode[1] = 't';
if (*type == '&') {
duplicity:
dodup = PERLIO_DUP_FD;
} while (isSPACE(*type));
mode[0] = 'r';
if (in_raw)
- my_strlcat(mode, "b", PERL_MODE_MAX - 1);
+ mode[1] = 'b';
else if (in_crlf)
- my_strlcat(mode, "t", PERL_MODE_MAX - 1);
+ mode[1] = 't';
if (*type == '&') {
goto duplicity;
}
mode[0] = 'r';
if (in_raw)
- my_strlcat(mode, "b", PERL_MODE_MAX - 1);
+ mode[1] = 'b';
else if (in_crlf)
- my_strlcat(mode, "t", PERL_MODE_MAX - 1);
+ mode[1] = 't';
if (num_svs > 1) {
fp = PerlProc_popen_list(mode,num_svs,svp);
mode[0] = 'r';
if (in_raw)
- my_strlcat(mode, "b", PERL_MODE_MAX - 1);
+ mode[1] = 'b';
else if (in_crlf)
- my_strlcat(mode, "t", PERL_MODE_MAX - 1);
+ mode[1] = 't';
if (*name == '-' && name[1] == '\0') {
fp = PerlIO_stdin();
if (IoIFP(io)) {
return (PL_laststatval = PerlLIO_fstat(PerlIO_fileno(IoIFP(io)), &PL_statcache));
} else if (IoDIRP(io)) {
-#ifdef HAS_DIRFD
- return (PL_laststatval = PerlLIO_fstat(dirfd(IoDIRP(io)), &PL_statcache));
-#else
- Perl_die(aTHX_ PL_no_func, "dirfd");
- /* NOT REACHED */
- return 0;
- /* Can't use NORETURN_FUNCTION_END because Perl_die is not
- * __attribute__noreturn__
- * Can't use DIE because that does not return an integer
- */
-#endif
+ return (PL_laststatval = PerlLIO_fstat(my_dirfd(IoDIRP(io)), &PL_statcache));
} else {
if (ckWARN2(WARN_UNOPENED,WARN_CLOSED))
report_evil_fh(gv, io, PL_op->op_type);
int fd, int do_report)
{
dVAR;
-#if defined(MACOS_TRADITIONAL) || defined(__SYMBIAN32__)
+#if defined(MACOS_TRADITIONAL) || defined(__SYMBIAN32__) || defined(__LIBCATAMOUNT__)
Perl_croak(aTHX_ "exec? I'm not *that* kind of operating system");
#else
if (sp > mark) {
- char **a;
+ const char **a;
const char *tmps = NULL;
- Newx(PL_Argv, sp - mark + 1, char*);
+ Newx(PL_Argv, sp - mark + 1, const char*);
a = PL_Argv;
while (++mark <= sp) {
if (*mark)
- *a++ = (char*)SvPV_nolen_const(*mark);
+ *a++ = SvPV_nolen_const(*mark);
else
*a++ = "";
}
Perl_do_exec3(pTHX_ const char *incmd, int fd, int do_report)
{
dVAR;
- register char **a;
+ register const char **a;
register char *s;
char *buf;
char *cmd;
const Size_t cmdlen = strlen(incmd) + 1;
Newx(buf, cmdlen, char);
cmd = buf;
- my_strlcpy(cmd, incmd, cmdlen);
+ memcpy(cmd, incmd, cmdlen);
while (*cmd && isSPACE(*cmd))
cmd++;
}
}
- Newx(PL_Argv, (s - cmd) / 2 + 2, char*);
+ Newx(PL_Argv, (s - cmd) / 2 + 2, const char*);
PL_Cmd = savepvn(cmd, s-cmd);
a = PL_Argv;
for (s = PL_Cmd; *s;) {
*a = NULL;
if (PL_Argv[0]) {
PERL_FPU_PRE_EXEC
- PerlProc_execvp(PL_Argv[0],PL_Argv);
+ PerlProc_execvp(PL_Argv[0],EXEC_ARGV_CAST(PL_Argv));
PERL_FPU_POST_EXEC
if (errno == ENOEXEC) { /* for system V NIH syndrome */
do_execfree();
case OP_CHMOD:
APPLY_TAINT_PROPER();
if (++mark <= sp) {
- val = SvIVx(*mark);
+ val = SvIV(*mark);
APPLY_TAINT_PROPER();
tot = sp - mark;
while (++mark <= sp) {
Perl_croak(aTHX_ "Unrecognized signal name \"%s\"",s);
}
else
- val = SvIVx(*mark);
+ val = SvIV(*mark);
APPLY_TAINT_PROPER();
tot = sp - mark;
#ifdef VMS
* CRTL's emulation of Unix-style signals and kill()
*/
while (++mark <= sp) {
- I32 proc = SvIVx(*mark);
+ I32 proc = SvIV(*mark);
register unsigned long int __vmssts;
APPLY_TAINT_PROPER();
if (!((__vmssts = sys$delprc(&proc,0)) & 1)) {
if (val < 0) {
val = -val;
while (++mark <= sp) {
- const I32 proc = SvIVx(*mark);
+ const I32 proc = SvIV(*mark);
APPLY_TAINT_PROPER();
#ifdef HAS_KILLPG
if (PerlProc_killpg(proc,val)) /* BSD */
}
else {
while (++mark <= sp) {
- const I32 proc = SvIVx(*mark);
+ const I32 proc = SvIV(*mark);
APPLY_TAINT_PROPER();
if (PerlProc_kill(proc, val))
tot--;
else {
Zero(&utbuf, sizeof utbuf, char);
#ifdef HAS_FUTIMES
- utbuf[0].tv_sec = (long)SvIVx(accessed); /* time accessed */
+ utbuf[0].tv_sec = (long)SvIV(accessed); /* time accessed */
utbuf[0].tv_usec = 0;
- utbuf[1].tv_sec = (long)SvIVx(modified); /* time modified */
+ utbuf[1].tv_sec = (long)SvIV(modified); /* time modified */
utbuf[1].tv_usec = 0;
#elif defined(BIG_TIME)
- utbuf.actime = (Time_t)SvNVx(accessed); /* time accessed */
- utbuf.modtime = (Time_t)SvNVx(modified); /* time modified */
+ utbuf.actime = (Time_t)SvNV(accessed); /* time accessed */
+ utbuf.modtime = (Time_t)SvNV(modified); /* time modified */
#else
- utbuf.actime = (Time_t)SvIVx(accessed); /* time accessed */
- utbuf.modtime = (Time_t)SvIVx(modified); /* time modified */
+ utbuf.actime = (Time_t)SvIV(accessed); /* time accessed */
+ utbuf.modtime = (Time_t)SvIV(modified); /* time modified */
#endif
}
APPLY_TAINT_PROPER();
if (GvIO(gv) && IoIFP(GvIOp(gv))) {
#ifdef HAS_FUTIMES
APPLY_TAINT_PROPER();
- if (futimes(PerlIO_fileno(IoIFP(GvIOn(gv))), utbufp))
+ if (futimes(PerlIO_fileno(IoIFP(GvIOn(gv))),
+ (struct timeval *) utbufp))
tot--;
#else
Perl_die(aTHX_ PL_no_func, "futimes");
const char * const name = SvPV_nolen_const(*mark);
APPLY_TAINT_PROPER();
#ifdef HAS_FUTIMES
- if (utimes(name, utbufp))
+ if (utimes(name, (struct timeval *)utbufp))
#else
if (PerlLIO_utime(name, utbufp))
#endif
SETERRNO(0,0);
return msgsnd(id, (struct msgbuf *)mbuf, msize, flags);
#else
+ PERL_UNUSED_ARG(sp);
+ PERL_UNUSED_ARG(mark);
Perl_croak(aTHX_ "msgsnd not implemented");
#endif
}
}
return ret;
#else
+ PERL_UNUSED_ARG(sp);
+ PERL_UNUSED_ARG(mark);
Perl_croak(aTHX_ "msgrcv not implemented");
#endif
}
if (shm == (char *)-1) /* I hate System V IPC, I really do */
return -1;
if (optype == OP_SHMREAD) {
- const char *mbuf;
+ char *mbuf;
/* suppress warning when reading into undef var (tchrist 3/Mar/00) */
if (! SvOK(mstr))
sv_setpvn(mstr, "", 0);