ferdinland-server-config/server-properties/helpers/curl.sh
themodernhakr 4720f63667 Add curl utility
Crafty Docker doesn't have access to curl, wget, netcat, etc. This
helper script adds the ability to download a file.
2025-03-11 02:01:50 -05:00

20 lines
497 B
Bash

function __curl() {
read -r proto server path <<<"$(printf '%s' "${1//// }")"
if [ "$proto" != "http:" ]; then
printf >&2 "sorry, %s supports only http\n" "${FUNCNAME[0]}"
return 1
fi
DOC=/${path// //}
HOST=${server//:*}
PORT=${server//*:}
[ "${HOST}" = "${PORT}" ] && PORT=80
exec 3<>"/dev/tcp/${HOST}/$PORT"
printf 'GET %s HTTP/1.0\r\nHost: %s\r\n\r\n' "${DOC}" "${HOST}" >&3
(while read -r line; do
[ "$line" = $'\r' ] && break
done && cat) <&3
exec 3>&-
}