* fixes in POST handling

This commit is contained in:
Dominika Liberda 2021-01-27 01:42:20 +01:00
parent 45f26274c8
commit 9e9100aa17

View file

@ -13,8 +13,6 @@ declare -A cookies # cookies!
r[status]=210 # Mommy always said that I was special r[status]=210 # Mommy always said that I was special
post_length=0 post_length=0
post=false
get=false
while read param; do while read param; do
name='' name=''
@ -87,12 +85,12 @@ while read param; do
data="$(echo ${r[url]} | sed -E 's/^(.*)\?//;s/\&/ /g')" data="$(echo ${r[url]} | sed -E 's/^(.*)\?//;s/\&/ /g')"
if [[ "$data" != "${r[url]}" ]]; then if [[ "$data" != "${r[url]}" ]]; then
data="$(echo ${r[url]} | sed -E 's/^(.*)\?//')" data="$(echo ${r[url]} | sed -E 's/^(.*)\?//')"
declare -A post_data declare -A get_data
IFS='&' IFS='&'
for i in $data; do for i in $data; do
name="$(echo $i | sed -E 's/\=(.*)$//')" name="$(echo $i | sed -E 's/\=(.*)$//')"
value="$(echo $i | sed "s/$name\=//")" value="$(echo $i | sed "s/$name\=//")"
post_data[$name]="$value" get_data[$name]="$value"
done done
fi fi
fi fi
@ -170,14 +168,17 @@ if [[ ${r[post]} == true && ${r[status]} == 200 ]]; then
done done
rm $tmpfile rm $tmpfile
else else
read -N ${r[content_length]} data read -N "${r[content_length]}" data
declare -A post_data declare -A post_data
for i in $(echo "$data" | sed -s 's/\&/ /g;'); do IFS='&'
name="$(echo $i | sed -E 's/\=(.*)$//')" #for i in $(sed -s 's/\&/ /g;' <<< "$data"); do
param="$(echo $i | sed "s/$name\=//")" for i in $(tr -d '\n' <<< "$data"); do
name="$(sed -E 's/\=(.*)$//' <<< "$i")"
param="$(sed "s/$name\=//" <<< "$i")"
post_data[$name]="$param" post_data[$name]="$param"
done done
unset IFS
fi fi
fi fi