Skip to content

fix: support effective UID special variable assignment - #1974

Merged
fglock merged 2 commits into
masterfrom
fix/daemonlite-special-var-set
Nov 4, 2026
Merged

fglock merged 2 commits into
masterfrom
fix/daemonlite-special-var-set

Conversation

@fglock

@fglock fglock commented Nov 4, 2026

Copy link
Copy Markdown
Owner

Summary

  • Route $> writes through ScalarSpecialVariable.set() on both execution backends.
  • Add POSIX seteuid bindings for Unix platforms and report failures through $!.
  • Add a system-Perl-validated regression for assigning the current real UID to $>.
  • Track the work in the changelog and issue queue.

Fixes #1972.

Validation

  • timeout 60 perl src/test/resources/unit/special_effective_uid_assignment.t — passed.
  • Focused regression — passed on JVM and interpreter.
  • Proc-DaemonLite t/20compile.t — passed on JVM and interpreter.
  • nice -n 19 make — passed.
  • nice -n 19 make check-links — passed.
  • The regression failed on both backends at parent 9dde46a0b with Modification of a read-only value attempted.

On Windows, assigning the current effective UID succeeds; changing the process identity remains unsupported by the Windows POSIX emulation.

Route `$>` writes through its special variable setter and implement the POSIX
seteuid call for Unix platforms, with a Windows same-identity fallback. Keep
interpreter assignments on the special setter path and add focused regression
coverage.

Generated with [Codex](https://openai.com/codex)

Co-Authored-By: Codex <openai-codex@users.noreply.github.com>
Record the draft implementation PR and current validation state in the
reviewed issue queue.

Generated with [Codex](https://openai.com/codex)

Co-Authored-By: Codex <openai-codex@users.noreply.github.com>
@fglock
fglock marked this pull request as ready for review November 4, 2026 18:31
@fglock
fglock merged commit 289e342 into master Nov 4, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support assignment to the effective UID special variable ($>)

1 participant