diff options
Diffstat (limited to 'examples/file-server/browse-files.sh')
-rwxr-xr-x | examples/file-server/browse-files.sh | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/examples/file-server/browse-files.sh b/examples/file-server/browse-files.sh new file mode 100755 index 0000000..c93716d --- /dev/null +++ b/examples/file-server/browse-files.sh @@ -0,0 +1,16 @@ +#!/bin/sh +# Serves files and directory listings. + +ROOT="/srv/tlsd/files" + +while read -r LINE +do + echo "${SHA256}: ${LINE}" 1>&2 + FILEPATH="${ROOT}/$(echo "${LINE}" | sed -e 's/\.\.//g')" + if [ -d "${FILEPATH}" ] + then ls -l "${FILEPATH}" + elif [ -f "${FILEPATH}" ] + then cat "${FILEPATH}" + else echo "${FILEPATH} is neither a file nor a directory"; + fi +done |