Change 19862 by [EMAIL PROTECTED] on 2003/06/27 07:39:58

        Make doing_taint() always available (though not
        part of the public API).

Affected files ...

... //depot/perl/embed.fnc#89 edit
... //depot/perl/embed.h#406 edit
... //depot/perl/perl.c#490 edit
... //depot/perl/proto.h#446 edit

Differences ...

==== //depot/perl/embed.fnc#89 (text) ====
Index: perl/embed.fnc
--- perl/embed.fnc#88~19843~    Sun Jun 22 10:00:10 2003
+++ perl/embed.fnc      Fri Jun 27 00:39:58 2003
@@ -45,6 +45,7 @@
 Anod   |int    |perl_run       |PerlInterpreter* interp
 Anod   |int    |perl_parse     |PerlInterpreter* interp|XSINIT_t xsinit \
                                |int argc|char** argv|char** env
+np     |int    |doing_taint    |int argc|char** argv|char** env
 #if defined(USE_ITHREADS)
 Anod   |PerlInterpreter*|perl_clone|PerlInterpreter* interp, UV flags
 #  if defined(PERL_IMPLICIT_SYS)

==== //depot/perl/embed.h#406 (text+w) ====
Index: perl/embed.h
--- perl/embed.h#405~19843~     Sun Jun 22 10:00:10 2003
+++ perl/embed.h        Fri Jun 27 00:39:58 2003
@@ -29,6 +29,9 @@
 
 #if defined(PERL_IMPLICIT_SYS)
 #endif
+#ifdef PERL_CORE
+#define doing_taint            Perl_doing_taint
+#endif
 #if defined(USE_ITHREADS)
 #  if defined(PERL_IMPLICIT_SYS)
 #  endif
@@ -2530,6 +2533,9 @@
 #else  /* PERL_IMPLICIT_CONTEXT */
 
 #if defined(PERL_IMPLICIT_SYS)
+#endif
+#ifdef PERL_CORE
+#define doing_taint            Perl_doing_taint
 #endif
 #if defined(USE_ITHREADS)
 #  if defined(PERL_IMPLICIT_SYS)

==== //depot/perl/perl.c#490 (text) ====
Index: perl/perl.c
--- perl/perl.c#489~19861~      Thu Jun 26 22:30:03 2003
+++ perl/perl.c Fri Jun 27 00:39:58 2003
@@ -3327,8 +3327,9 @@
     PL_tainting |= (PL_uid && (PL_euid != PL_uid || PL_egid != PL_gid));
 }
 
-#ifdef MYMALLOC
-/* This is used very early in the lifetime of the program. */
+/* This is used very early in the lifetime of the program,
+ * before even the options are parsed, so PL_tainting has
+ * not been initialized properly.*/
 int
 Perl_doing_taint(int argc, char *argv[], char *envp[])
 {
@@ -3351,7 +3352,6 @@
        return 1;
     return 0;
 }
-#endif
 
 STATIC void
 S_forbid_setid(pTHX_ char *s)

==== //depot/perl/proto.h#446 (text+w) ====
Index: perl/proto.h
--- perl/proto.h#445~19843~     Sun Jun 22 10:00:10 2003
+++ perl/proto.h        Fri Jun 27 00:39:58 2003
@@ -26,6 +26,7 @@
 PERL_CALLCONV void     perl_free(PerlInterpreter* interp);
 PERL_CALLCONV int      perl_run(PerlInterpreter* interp);
 PERL_CALLCONV int      perl_parse(PerlInterpreter* interp, XSINIT_t xsinit, int argc, 
char** argv, char** env);
+PERL_CALLCONV int      Perl_doing_taint(int argc, char** argv, char** env);
 #if defined(USE_ITHREADS)
 PERL_CALLCONV PerlInterpreter* perl_clone(PerlInterpreter* interp, UV flags);
 #  if defined(PERL_IMPLICIT_SYS)
End of Patch.

Reply via email to