Apd |void |sv_setpv |NN SV* sv|NULLOK const char* ptr
Apd |void |sv_setpvn |NN SV* sv|NULLOK const char* ptr|STRLEN len
Amdb |void |sv_setsv |NN SV* dsv|NULLOK SV* ssv
-Apd |void |sv_taint |NN SV* sv
+Amdb |void |sv_taint |NN SV* sv
ApdR |bool |sv_tainted |NN SV* sv
Apd |int |sv_unmagic |NN SV* sv|int type
Apd |void |sv_unref |NN SV* sv
#define sv_setref_pvn Perl_sv_setref_pvn
#define sv_setpv Perl_sv_setpv
#define sv_setpvn Perl_sv_setpvn
-#define sv_taint Perl_sv_taint
#define sv_tainted Perl_sv_tainted
#define sv_unmagic Perl_sv_unmagic
#define sv_unref Perl_sv_unref
#define sv_setref_pvn(a,b,c,d) Perl_sv_setref_pvn(aTHX_ a,b,c,d)
#define sv_setpv(a,b) Perl_sv_setpv(aTHX_ a,b)
#define sv_setpvn(a,b,c) Perl_sv_setpvn(aTHX_ a,b,c)
-#define sv_taint(a) Perl_sv_taint(aTHX_ a)
#define sv_tainted(a) Perl_sv_tainted(aTHX_ a)
#define sv_unmagic(a,b) Perl_sv_unmagic(aTHX_ a,b)
#define sv_unref(a) Perl_sv_unref(aTHX_ a)
return doref(o, type, TRUE);
}
+/*
+=for apidoc sv_taint
+
+Taint an SV. Use C<SvTAINTED_on> instead.
+=cut
+*/
+
+void
+Perl_sv_taint(pTHX_ SV *sv)
+{
+ sv_magic((sv), Nullsv, PERL_MAGIC_taint, Nullch, 0);
+}
+
/* sv_2iv() is now a macro using Perl_sv_2iv_flags();
* this function provided for binary compatibility only
*/
/* PERL_CALLCONV void sv_setsv(pTHX_ SV* dsv, SV* ssv)
__attribute__nonnull__(pTHX_1); */
-PERL_CALLCONV void Perl_sv_taint(pTHX_ SV* sv)
- __attribute__nonnull__(pTHX_1);
+/* PERL_CALLCONV void sv_taint(pTHX_ SV* sv)
+ __attribute__nonnull__(pTHX_1); */
PERL_CALLCONV bool Perl_sv_tainted(pTHX_ SV* sv)
__attribute__warn_unused_result__
}
/*
-=for apidoc sv_taint
-
-Taint an SV. Use C<SvTAINTED_on> instead.
-=cut
-*/
-
-void
-Perl_sv_taint(pTHX_ SV *sv)
-{
- sv_magic((sv), Nullsv, PERL_MAGIC_taint, Nullch, 0);
-}
-
-/*
=for apidoc sv_untaint
Untaint an SV. Use C<SvTAINTED_off> instead.
=cut
*/
+#define sv_taint(sv) sv_magic((sv), Nullsv, PERL_MAGIC_taint, Nullch, 0)
+
#define SvTAINTED(sv) (SvMAGICAL(sv) && sv_tainted(sv))
#define SvTAINTED_on(sv) STMT_START{ if(PL_tainting){sv_taint(sv);} }STMT_END
#define SvTAINTED_off(sv) STMT_START{ if(PL_tainting){sv_untaint(sv);} }STMT_END