mbox series

[pseudo,v2,00/23] Create new pseudo 1.99.0 version

Message ID 1783104055-19005-1-git-send-email-mark.hatle@kernel.crashing.org
Headers show
Series Create new pseudo 1.99.0 version | expand

Message

Mark Hatle July 3, 2026, 6:40 p.m. UTC
The changes from Dmitry and some others that are planned are enough
I want to start planning for a 2.0 version of pseudo.

(I have already created a pseudo-1.9 branch so we can backport stable
changes as needed.)

I have pushed the following changes to 'master-next'.  I'd like feedback
before I push them to master.  (Including if the environment changes
specifically should go back to the stable branch.  At this point I
think they should based on the symptoms.)

Changes from v1:
test/test-openat2-func.c typo corrected

test/test-bash-exec-env test case fully reworked

This reworked test introduces GPL v3.0 or newer licensed code, as well as
requires the use of valgrind for the test to run properly.  The GPL v3.0
should be fine as this is a test case and not something in the library
itself.  As for valgrind, we attempt to detect it's availablility and
skip the test if valgrind is not available.

Dmitry Sakhonchik (11):
  pseudo_util: Add log severity flags
  pseudo: Add new logging macros
  pseudo_util: Change pseudo_diag() calls to appropriate logging macros
  pseudo_db: Change pseudo_diag() calls to appropriate macros
  pseudo_client: Change pseudo_diag() calls to appropriate macros
  pseudo_server: Change pseudo_diag() calls to appropriate macros
  pseudo.c: Change pseudo_diag() calls to appropriate macros
  pseudolog.c: Change pseudo_diag() calls to appropriate macros
  wrappers: Change pseudo_diag() calls to appropriate macros
  pseudo: Change pseudo_diag() name to pseudo_log()
  pseudo_util: Add default log severity values

Mark Hatle (5):
  Makefile.in: Move version to 1.99.0 to prep for 2.0 development
  pseudo_util.c: strchr now returns const char
  test/test-openat2-func.c: Remove unusuaed saved_errno
  test-bash-exec-env: Add bash env test case
  test: various: Move to makefile compilation

Richard Purdie (7):
  pseudo.h: Avoid accessing unallocated memory
  pseudo_util: Avoid accidental free calls for without_libpseudo()
  pseudo_util: Ensure pseudo_setupenvp handles memory consistently
  pseudo_util: Avoid a memory leak in pseudo_dropenv()
  pseudo_util: Clean up memory handling for setupenvp results
  exec*: Replace bash workaround to avoid memory corruption
  pseudo_util: Correctly free memory allocated by pseudo_setupenvp

 Makefile.in                         |   2 +-
 enums/sev.in                        |   2 +-
 ports/common/guts/execv.c           |  19 +-
 ports/common/guts/execve.c          |   4 +-
 ports/common/guts/execvp.c          |  15 +-
 ports/common/guts/posix_spawn.c     |   4 +-
 ports/common/guts/posix_spawnp.c    |   4 +-
 ports/darwin/pseudo_wrappers.c      |   3 +-
 ports/linux/guts/fcntl.c            |   2 +-
 ports/linux/guts/fcntl64.c          |   2 +-
 ports/linux/guts/getpw.c            |   2 +-
 ports/linux/guts/openat.c           |   3 +-
 ports/linux/openat2/guts/openat2.c  |   3 +-
 ports/linux/xattr/pseudo_wrappers.c |   3 +-
 ports/unix/guts/getcwd.c            |   6 +-
 ports/unix/guts/linkat.c            |   2 +-
 ports/unix/guts/nftw_wrapper_base.c |   6 +-
 ports/unix/guts/popen.c             |  16 +-
 ports/unix/guts/symlinkat.c         |   2 +-
 ports/unix/guts/system.c            |  16 +-
 ports/unix/guts/tempnam.c           |   2 +-
 ports/unix/guts/tmpnam.c            |   2 +-
 ports/unix/guts/unlinkat.c          |   2 +-
 pseudo.c                            | 105 +++---
 pseudo.h                            |  33 +-
 pseudo_client.c                     |  96 +++---
 pseudo_client.h                     |   3 -
 pseudo_db.c                         | 122 +++----
 pseudo_ipc.c                        |   2 +-
 pseudo_server.c                     |  92 ++---
 pseudo_util.c                       | 174 ++++++----
 pseudo_wrappers.c                   |   8 +-
 pseudolog.c                         |  76 ++--
 test/test-bash-exec-env.c           | 667 ++++++++++++++++++++++++++++++++++++
 test/test-bash-exec-env.sh          |  34 ++
 test/test-chroot.c                  |  10 +
 test/test-chroot.sh                 |  14 +-
 test/test-execl.c                   |   4 +
 test/test-execl.sh                  |  13 +-
 test/test-linkat-chroot.sh          |   4 +-
 test/test-openat2-func.c            |   1 -
 test/test-reexec-chroot.c           |  10 +
 test/test-reexec-chroot.sh          |  14 +-
 43 files changed, 1199 insertions(+), 405 deletions(-)
 create mode 100644 test/test-bash-exec-env.c
 create mode 100755 test/test-bash-exec-env.sh
 create mode 100644 test/test-chroot.c
 create mode 100644 test/test-execl.c
 create mode 100644 test/test-reexec-chroot.c