-
Notifications
You must be signed in to change notification settings - Fork 529
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Lvalue vec()
unreliably propagates tainting
#22192
Labels
taint
Relates to taint-mode (`perl -T`)
Comments
leonerd
added
Needs Triage
Work In Progress
This PR is in progress and is not meant to be merged yet.
taint
Relates to taint-mode (`perl -T`)
and removed
Needs Triage
Work In Progress
This PR is in progress and is not meant to be merged yet.
labels
May 3, 2024
On Fri, May 03, 2024 at 09:43:25AM -0700, Paul Evans wrote:
If the value being assigned into an lvalue `vec()` is tainted, it
sometimes does and sometimes doesn't propagate that tainting to the
modified scalar.
I agree that this inconsistency is a bug, and I think that it should
always taint.
…--
This is a great day for France!
-- Nixon at Charles De Gaulle's funeral
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
If the value being assigned into an lvalue
vec()
is tainted, it sometimes does and sometimes doesn't propagate that tainting to the modified scalar.In the (unlikely) cornercase that
vec()
itself has to create/upgrade the scalar from NULL, then the newly-created scalar does have tainting:However, if the SV was already at least an
SVt_PV
andvec()
is just modifying it in place (possibly by extending the PV buffer) then no tainting is propagated:The text was updated successfully, but these errors were encountered: