# script.
cgilite_status='200 OK'; cgilite_response=''; cgilite_cl="Connection: close${CR}";
- . "$0" |sed '1{s;^Status: ;HTTP/1.1 ;; t; s;^;HTTP/1.1 200 OK\r\n;;}' \
- | while read -r l; do case $l in
+ . "$0" | while read -r l; do case $l in
Status:*) cgilite_status="${l#Status: }";;
Content-Length:*) cgilite_cl="${l}";;
$CR) printf '%s %s\r\n%s\n%s\n\r\n' \
'HTTP/1.1' "${cgilite_status%${CR}}" \
- "$cgilite_response" "${cgilite_cl}" |tee /dev/stderr
- cat;
- [ "${cgilite_cl#Connection}" = "${cgilite_cl}" ] && exit 0 || exit 1;;
+ "$cgilite_response" "${cgilite_cl}"
+ cat
+ [ "${cgilite_cl#Connection}" = "${cgilite_cl}" ]; exit;;
*) cgilite_response="$cgilite_response${BR}$l";;
esac; done || exit 0;
(sleep $cgilite_timeout && kill $$) & cgilite_watchdog=$!