Skip to content

update to upstream 2024-01-13 - #11

Draft
1000TurquoisePogs wants to merge 95 commits into
JoeNemo:mainfrom
1000TurquoisePogs:feature/update-2024-01-13
Draft

update to upstream 2024-01-13#11
1000TurquoisePogs wants to merge 95 commits into
JoeNemo:mainfrom
1000TurquoisePogs:feature/update-2024-01-13

Conversation

@1000TurquoisePogs

@1000TurquoisePogs 1000TurquoisePogs commented May 14, 2025

Copy link
Copy Markdown
Contributor

Users require to compile new file libbf.c
Even so, build of configmgr fails with

 IEW2456E 9207 SYMBOL mp_pow_dec UNRESOLVED.  MEMBER COULD NOT BE INCLUDED FROM
          THE DESIGNATED CALL LIBRARY. NAME SPACE = 3
 IEW2456E 9207 SYMBOL bfdec_normalize_and_round UNRESOLVED.  MEMBER COULD NOT BE
          INCLUDED FROM THE DESIGNATED CALL LIBRARY.

which are find in libbf.c

bellard and others added 30 commits May 14, 2025 14:31
@1000TurquoisePogs
1000TurquoisePogs marked this pull request as draft May 14, 2025 13:02
@1000TurquoisePogs 1000TurquoisePogs changed the title update to upstream 2024 01 13 update to upstream 2024-01-13 May 14, 2025
JoeNemo and others added 13 commits May 18, 2026 11:55
Signed-off-by: Joe Devlin <joe.devlin@gmail.com>
Signed-off-by: Martin Zeithaml <Martin.Zeithaml@broadcom.com>
Signed-off-by: Martin Zeithaml <Martin.Zeithaml@broadcom.com>
Signed-off-by: Martin Zeithaml <Martin.Zeithaml@broadcom.com>
Signed-off-by: Martin Zeithaml <Martin.Zeithaml@broadcom.com>
Signed-off-by: Martin Zeithaml <Martin.Zeithaml@broadcom.com>
Signed-off-by: Martin Zeithaml <Martin.Zeithaml@broadcom.com>
…ore uid

The child of os.exec(args, {uid, gid}) called setuid() before setgid(), so
the documented uid-plus-gid form always died: setuid() gives up the right
to setgid(). Upstream swapped the two (bellard/quickjs 04be246). Taken
here as is.

Neither call touches the supplementary group list and exec() inherits it,
so a privileged parent dropping to an ordinary uid left the child holding
the parent's group memberships. On z/OS that is RACF group access. When
uid or gid is given and the parent is privileged, the list is now cleared
with setgroups(0, NULL) first. setgroups() is on every platform that has
os.exec (Windows does not), so no platform scaffolding is needed; z/OS
only lacks the declaration, supplied in porting/polyfill.h.

A failed credential change in the child still exits 127, and on z/OS
also writes errno and the reason code (__errno2) to stderr, because errno
alone is useless there: EMVSERR with reason JREnvDirty is BPX.DAEMON
refusing setuid() from an address space that loaded a program that is not
program controlled. That helper lives in porting/polyfill.c.

Verified on z/OS 3.1 from JavaScript, 64-bit and 31-bit builds: with
gid only, /bin/id in the child reports no supplementary groups where the
parent carries seven; with uid, the child reports errno=157
errno2=0B8802AF and exits 127.

Signed-off-by: JoeNemo <joe.devlin@gmail.com>
…groups

os.exec: clear supplementary groups when dropping privileges, gid before uid
Parameter for `curl` in sigle apostrophes
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.

4 participants