/usr/share/doc/socat
#! /usr/bin/env bash # source: proxyecho.sh # Copyright Gerhard Rieger and contributors (see file CHANGES) # Published under the GNU General Public License V.2, see file COPYING # perform primitive simulation of a proxy server with echo function via stdio. # accepts and answers correct HTTP CONNECT requests, but then just echoes data. # it is required for test.sh # for TCP, use this script as: # socat tcp-l:8080,reuseaddr,crlf system:"proxyecho.sh" if type socat >/dev/null 2>&1; then SOCAT=socat else SOCAT=./socat fi case `uname` in HP-UX|OSF1) CAT="$SOCAT -u stdin stdout" ;; *) CAT=cat ;; esac SPACES=" " while [ -n "$1" ]; do case "$1" in -w) n="$2"; while [ "$n" -gt 0 ]; do SPACES="$SPACES "; n=$((n-1)); done shift ;; #-s) STAT="$2"; shift ;; esac shift done # read and parse HTTP request read l if echo "$l" |egrep '^CONNECT +[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+:[0-9]+ +HTTP/1.[01]$' >/dev/null then : go on below else echo "HTTP/1.0${SPACES}500 Bad Request" echo exit fi # read more headers until empty line while [ -n "$l" ]; do read l done # send status echo "HTTP/1.0${SPACES}200 OK" # send empty line echo # perform echo function exec $CAT
.
Edit
..
Edit
BUGREPORTS
Edit
CHANGES
Edit
COPYING
Edit
COPYING.OpenSSL
Edit
DEVELOPMENT
Edit
EXAMPLES
Edit
FAQ
Edit
PORTING
Edit
README
Edit
SECURITY
Edit
daemon.sh
Edit
ftp.sh
Edit
gatherinfo.sh
Edit
mail.sh
Edit
proxy.sh
Edit
proxyecho.sh
Edit
readline-test.sh
Edit
readline.sh
Edit
socat_buildscript_for_android.sh
Edit
socks4a-echo.sh
Edit
socks4echo.sh
Edit
test.sh
Edit