diff options
-rwxr-xr-x | frontends/cgi/live-build-cgi | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/frontends/cgi/live-build-cgi b/frontends/cgi/live-build-cgi index 5a65bce89..dbc1ef53b 100755 --- a/frontends/cgi/live-build-cgi +++ b/frontends/cgi/live-build-cgi @@ -33,9 +33,15 @@ echo "Content-type: text/html" echo #QUERY_STRING=`cat /dev/stdin` -QUERY_STRING=$(cat /dev/stdin) +#QUERY_STRING=$(cat /dev/stdin) +# If we are passed something then read it in. +if [[ "$REQUEST_METHOD" = "POST" ]] && [[ "$CONTENT_LENGTH" -gt 0 ]] +then + read -n $CONTENT_LENGTH POST_DATA <&0 +fi + # Translate parameters -QUERY_STRING=$(echo "${QUERY_STRING}" | sed -e 's/%2F/\//g' -e 's/+/ /g' -e 's/%3B/;/g' -e 's/%7E/~/g' -e 's/%3A/:/g' -e 's/%40/@/g' -e 's/%3D/=/g' -e 's/%2B/+/g') +QUERY_STRING=$(echo "${POST_DATA}" | sed -e 's/%2F/\//g' -e 's/+/ /g' -e 's/%3B/;/g' -e 's/%7E/~/g' -e 's/%3A/:/g' -e 's/%40/@/g' -e 's/%3D/=/g' -e 's/%2B/+/g') # Debug the filtering string # echo ${QUERY_STRING} |