1 From aa2f0d1bc82722efe09d0ee0a471058775ff06ab Mon Sep 17 00:00:00 20012 From: gl0w <gl0w@world>3 Date: Thu, 10 Sep 2026 07:11:44 +01004 Subject: [PATCH] m6/entrypoint: POSIX-safe argv (spaces/quotes in5 name/description)6 7 ---8 entrypoint.sh | 31 +++++++++++++++----------------9 1 file changed, 15 insertions(+), 16 deletions(-)10 11 diff --git a/entrypoint.sh b/entrypoint.sh12 index 6d4f149..191fbe9 10075513 --- a/entrypoint.sh14 +++ b/entrypoint.sh15 @@ -26,40 +26,39 @@ set -eu16 # build below would misreport "branch not found".17 git config --global --add safe.directory /data/repo18 19 -BUILD_ARGS=""20 +# Build argv with "$@" (POSIX-safe: values with spaces/quotes survive).21 +set -- /data/repo -o /srv/www22 if [ -n "${HU13_BRANCH:-}" ]; then23 - BUILD_ARGS="$BUILD_ARGS --branch $HU13_BRANCH"24 + set -- "$@" --branch "$HU13_BRANCH"25 fi26 if [ -n "${HU13_CLONE_URL:-}" ]; then27 - BUILD_ARGS="$BUILD_ARGS --clone-url $HU13_CLONE_URL"28 + set -- "$@" --clone-url "$HU13_CLONE_URL"29 fi30 if [ -n "${HU13_REPO_NAME:-}" ]; then31 - BUILD_ARGS="$BUILD_ARGS --repo-name $HU13_REPO_NAME"32 + set -- "$@" --repo-name "$HU13_REPO_NAME"33 fi34 if [ -n "${HU13_DESCRIPTION:-}" ]; then35 - BUILD_ARGS="$BUILD_ARGS --description $HU13_DESCRIPTION"36 + set -- "$@" --description "$HU13_DESCRIPTION"37 fi38 +hu13 build "$@"39 40 -# shellcheck disable=SC208641 -hu13 build /data/repo -o /srv/www $BUILD_ARGS42 +set -- --www /srv/www --inbox-dir /data/inbox \43 + --listen "${HU13_LISTEN:-0.0.0.0:39313}"44 45 -SERVE_ARGS=""46 if [ -n "${HU13_MAX_TITLE:-}" ]; then47 - SERVE_ARGS="$SERVE_ARGS --max-title $HU13_MAX_TITLE"48 + set -- "$@" --max-title "$HU13_MAX_TITLE"49 fi50 if [ -n "${HU13_MAX_BODY:-}" ]; then51 - SERVE_ARGS="$SERVE_ARGS --max-body $HU13_MAX_BODY"52 + set -- "$@" --max-body "$HU13_MAX_BODY"53 fi54 if [ -n "${HU13_MAX_BYTES:-}" ]; then55 - SERVE_ARGS="$SERVE_ARGS --max-bytes $HU13_MAX_BYTES"56 + set -- "$@" --max-bytes "$HU13_MAX_BYTES"57 fi58 if [ -n "${HU13_RATE_PER_HOUR:-}" ]; then59 - SERVE_ARGS="$SERVE_ARGS --rate-per-hour $HU13_RATE_PER_HOUR"60 + set -- "$@" --rate-per-hour "$HU13_RATE_PER_HOUR"61 fi62 if [ -n "${HU13_QUOTA:-}" ]; then63 - SERVE_ARGS="$SERVE_ARGS --quota $HU13_QUOTA"64 + set -- "$@" --quota "$HU13_QUOTA"65 fi66 67 -# shellcheck disable=SC208668 -exec hu13 serve --www /srv/www --inbox-dir /data/inbox \69 - --listen "${HU13_LISTEN:-0.0.0.0:39313}" $SERVE_ARGS70 +exec hu13 serve "$@"71 -- 72 2.55.073