summaryrefslogtreecommitdiff
path: root/perl.c
diff options
context:
space:
mode:
authorGurusamy Sarathy <gsar@cpan.org>1999-11-01 17:09:44 +0000
committerGurusamy Sarathy <gsar@cpan.org>1999-11-01 17:09:44 +0000
commitcc49e20bd7575d1d37e92731860d63daa4d52ecc (patch)
tree1b460232564e19658a102bc3cd67d08e537a5c8f /perl.c
parent625a29bd030689ee3f060be950e2f2ffc93c94c9 (diff)
downloadperl-cc49e20bd7575d1d37e92731860d63daa4d52ecc.tar.gz
macros for COP.cop_filegv access
p4raw-id: //depot/perl@4505
Diffstat (limited to 'perl.c')
-rw-r--r--perl.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/perl.c b/perl.c
index a35cdd783a..3b1bc3dbfa 100644
--- a/perl.c
+++ b/perl.c
@@ -2052,7 +2052,7 @@ S_open_script(pTHX_ char *scriptname, bool dosearch, SV *sv, int *fdscript)
}
}
- PL_curcop->cop_filegv = gv_fetchfile(PL_origfilename);
+ CopFILEGV_set(PL_curcop, gv_fetchfile(PL_origfilename));
if (strEQ(PL_origfilename,"-"))
scriptname = "";
if (*fdscript >= 0) {
@@ -2166,7 +2166,7 @@ sed %s -e \"/^[^#]/b\" \
#ifdef DOSUID
#ifndef IAMSUID /* in case script is not readable before setuid */
if (PL_euid &&
- PerlLIO_stat(SvPVX(GvSV(PL_curcop->cop_filegv)),&PL_statbuf) >= 0 &&
+ PerlLIO_stat(CopFILE(PL_curcop),&PL_statbuf) >= 0 &&
PL_statbuf.st_mode & (S_ISUID|S_ISGID))
{
/* try again */
@@ -2176,7 +2176,7 @@ sed %s -e \"/^[^#]/b\" \
#endif
#endif
Perl_croak(aTHX_ "Can't open perl script \"%s\": %s\n",
- SvPVX(GvSV(PL_curcop->cop_filegv)), Strerror(errno));
+ CopFILE(PL_curcop), Strerror(errno));
}
}
@@ -2320,7 +2320,7 @@ S_validate_suid(pTHX_ char *validarg, char *scriptname, int fdscript)
* But I don't think it's too important. The manual lies when
* it says access() is useful in setuid programs.
*/
- if (PerlLIO_access(SvPVX(GvSV(PL_curcop->cop_filegv)),1)) /*double check*/
+ if (PerlLIO_access(CopFILE(PL_curcop),1)) /*double check*/
Perl_croak(aTHX_ "Permission denied");
#else
/* If we can swap euid and uid, then we can determine access rights
@@ -2341,7 +2341,7 @@ S_validate_suid(pTHX_ char *validarg, char *scriptname, int fdscript)
#endif
|| PerlProc_getuid() != PL_euid || PerlProc_geteuid() != PL_uid)
Perl_croak(aTHX_ "Can't swap uid and euid"); /* really paranoid */
- if (PerlLIO_stat(SvPVX(GvSV(PL_curcop->cop_filegv)),&tmpstatbuf) < 0)
+ if (PerlLIO_stat(CopFILE(PL_curcop),&tmpstatbuf) < 0)
Perl_croak(aTHX_ "Permission denied"); /* testing full pathname here */
#if defined(IAMSUID) && !defined(NO_NOSUID_CHECK)
if (fd_on_nosuid_fs(PerlIO_fileno(PL_rsfp)))
@@ -2356,7 +2356,7 @@ S_validate_suid(pTHX_ char *validarg, char *scriptname, int fdscript)
(Filename of set-id script was %s, uid %"Uid_t_f" gid %"Gid_t_f".)\n\nSincerely,\nperl\n",
PL_uid,(long)tmpstatbuf.st_dev, (long)tmpstatbuf.st_ino,
(long)PL_statbuf.st_dev, (long)PL_statbuf.st_ino,
- SvPVX(GvSV(PL_curcop->cop_filegv)),
+ CopFILE(PL_curcop),
PL_statbuf.st_uid, PL_statbuf.st_gid);
(void)PerlProc_pclose(PL_rsfp);
}