diff --git a/poc/examples/nmap-callback.pow b/poc/examples/nmap-callback.pow index 6e66cdd..67cb913 100755 --- a/poc/examples/nmap-callback.pow +++ b/poc/examples/nmap-callback.pow @@ -17,8 +17,10 @@ # # -# Nmap execution with callback. When processes finishes call the CALLBACK site -# and send a POST with the XML results +# Nmap execution with callback. +# +# When the Nmap processes finishes it will call the CALLBACK site +# and POST the XML results # # Call example: @@ -27,19 +29,19 @@ # kapow route add -X POST /nmap-callback - <<-'EOF' + PORTS=$(kapow get /request/form/ports) + : ${PORTS:=9000} + + IP=$(kapow get /request/form/ip) + : ${IP:=127.0.0.1} + + CALLBACK=$(kapow get /request/params/callback) + : ${CALLBACK:=127.0.0.1:9999} + + tmpfile="$(mktemp --suffix=.xml)" + trap "{ rm -f \"$tmpfile\"; }" EXIT + { - PORTS=$(kapow get /request/form/ports) - : ${PORTS:=9000} - - IP=$(kapow get /request/form/ip) - : ${IP:=127.0.0.1} - - CALLBACK=$(kapow get /request/params/callback) - : ${CALLBACK:=127.0.0.1:9999} - - tmpfile="$(mktemp --suffix=.nmap)" - trap "{ rm -f \"$tmpfile\"; }" EXIT - nmap \ -Pn \ -n \ @@ -55,5 +57,5 @@ kapow route add -X POST /nmap-callback - <<-'EOF' -F "data=@$tmpfile" \ "$CALLBACK" - } | kapow set /response/stream + } | kapow set /response/body EOF diff --git a/poc/examples/nmap-streaming.pow b/poc/examples/nmap-streaming.pow index cf759fd..e49ab8e 100755 --- a/poc/examples/nmap-streaming.pow +++ b/poc/examples/nmap-streaming.pow @@ -17,8 +17,10 @@ # # -# Streams nmap execution. When processes finishes print the value ##########" -# as separator and then print the Nmap XML report +# Streams nmap execution. +# +# The output from Nmap is wrapped in XML comment delimiters +# and then follows the Nmap XML report proper # # Call example: @@ -27,16 +29,19 @@ # kapow route add -X POST /nmap-stream - <<-'EOF' + PORTS=$(kapow get /request/form/ports) + : ${PORTS:=9000} + + IP=$(kapow get /request/form/ip) + : ${IP:=127.0.0.1} + + tmpfile="$(mktemp --suffix=.xml)" + trap "{ rm -f \"$tmpfile\"; }" EXIT + + kapow set /response/headers/Content-Type text/xml + { - PORTS=$(kapow get /request/form/ports) - : ${PORTS:=9000} - - IP=$(kapow get /request/form/ip) - : ${IP:=127.0.0.1} - - tmpfile="$(mktemp --suffix=.nmap)" - trap "{ rm -f \"$tmpfile\"; }" EXIT - + echo '' echo '' + tail --lines=+2 "$tmpfile" - cat "$tmpfile" - - } | kapow set /response/stream + } | kapow set /response/body EOF