test: replace notmuch_passwd_sanitize with python version

Apparently the -f option to hostname is not portable, and in fact it
does not seem to always behave reasonably in e.g. a chroot.

Python code originally due to Tomi [1], modified by yours truly.

[1]: id:m2lf9fbkug.fsf@guru.guru-group.fi
This commit is contained in:
David Bremner 2021-04-24 09:28:15 -03:00
parent c008176ade
commit 27a2c2c80d

View file

@ -700,12 +700,20 @@ notmuch_built_with_sanitize ()
sed 's/^built_with[.]\(.*\)=.*$/built_with.\1=something/' sed 's/^built_with[.]\(.*\)=.*$/built_with.\1=something/'
} }
notmuch_passwd_sanitize () notmuch_passwd_sanitize()
{ {
local user=$(id -un) ${NOTMUCH_PYTHON} -c'
local fqdn=$(hostname -f) import os, sys, pwd, socket
local full_name=$(getent passwd $user | cut -d: -f 5 | cut -d, -f1)
sed -e "s/$user/USERNAME/" -e "s/$fqdn/FQDN/" -e "s/$full_name/USER_FULL_NAME/" pw = pwd.getpwuid(os.getuid())
user = pw.pw_name
name = pw.pw_gecos.partition(",")[0]
fqdn = socket.getfqdn()
for l in sys.stdin:
l = l.replace(user, "USERNAME").replace(fqdn, "FQDN").replace(".(none)","").replace(name, "USER_FULL_NAME")
sys.stdout.write(l)
'
} }
notmuch_config_sanitize () notmuch_config_sanitize ()