From a63a80d46411c291373ad21fe7d4dc76b74ede4d Mon Sep 17 00:00:00 2001 From: Bernhard B Date: Fri, 8 Jan 2021 19:12:32 +0100 Subject: [PATCH 1/2] fix "setpriv: libcap-ng is too old for 'all' caps" error query available capabilities instead of using "all" caps, as this fails with kernel 5.9.0 see #46 --- entrypoint.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/entrypoint.sh b/entrypoint.sh index 1439eb8..f1e69a7 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -12,5 +12,8 @@ echo "WARNING: signal-cli-rest-api runs as signal-api (not as root!)" echo "Run 'su signal-api' before using signal-cli!" EOF +cap_prefix="-cap_" +caps="$cap_prefix$(seq -s ",$cap_prefix" 0 $(cat /proc/sys/kernel/cap_last_cap))" + # Start API as signal-api user -exec setpriv --reuid=1000 --regid=1000 --init-groups --inh-caps=-all signal-cli-rest-api $@ +exec setpriv --reuid=1000 --regid=1000 --init-groups --inh-caps=$caps signal-cli-rest-api $@ From 787bb2b50b2b45e2a4cc6da9675d90dc99bf9fc3 Mon Sep 17 00:00:00 2001 From: Bernhard B Date: Fri, 8 Jan 2021 22:46:58 +0100 Subject: [PATCH 2/2] add possibility to specify captcha in register endpoint see #19 --- src/api/api.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/api/api.go b/src/api/api.go index adbb353..c5d205d 100644 --- a/src/api/api.go +++ b/src/api/api.go @@ -31,6 +31,7 @@ type GroupEntry struct { type RegisterNumberRequest struct { UseVoice bool `json:"use_voice"` + Captcha string `json:"captcha"` } type VerifyNumberSettings struct { @@ -328,6 +329,7 @@ func (a *Api) RegisterNumber(c *gin.Context) { } } else { req.UseVoice = false + req.Captcha = "" } if number == "" { @@ -341,6 +343,10 @@ func (a *Api) RegisterNumber(c *gin.Context) { command = append(command, "--voice") } + if req.Captcha != "" { + command = append(command, []string{"--captcha", req.Captcha}...) + } + _, err := runSignalCli(true, command, "") if err != nil { c.JSON(400, gin.H{"error": err.Error()})