Ticket #1356: ziproxy-webif-4.patch

Datei ziproxy-webif-4.patch, 11.4 KB (hinzugefügt von M66B, vor 7 Jahren)

inetd fix, thanks cuma!

  • make/ziproxy/files/.language

     
     1languages 
     2{ de en } 
     3default 
     4{ en } 
     5files 
     6{ 
     7    usr/lib/cgi-bin/ziproxy.cgi 
     8} 
  • make/ziproxy/files/root/usr/lib/cgi-bin/ziproxy.cgi

     
     1#!/bin/sh 
     2 
     3. /usr/lib/libmodcgi.sh 
     4 
     5check "$ZIPROXY_ENABLED" yes:auto inetd "*":man 
     6check "$ZIPROXY_GZIPCOMPRESS" yes:gzipcompress 
     7check "$ZIPROXY_IMAGECOMPRESS" yes:imagecompress 
     8check "$ZIPROXY_PREEMPTNAMERES" yes:preemptnameres 
     9check "$ZIPROXY_TRANSPARENTPROXY" yes:transparentproxy 
     10check "$ZIPROXY_ALLOWCONNECT" yes:allowconnect 
     11 
     12sec_begin '$(lang de:"Starttyp" en:"Start type")' 
     13 
     14cat << EOF 
     15<p> 
     16<input id="e1" type="radio" name="enabled" value="yes"$auto_chk><label for="e1"> $(lang de:"Automatisch" en:"Automatic")</label> 
     17<input id="e2" type="radio" name="enabled" value="no"$man_chk><label for="e2"> $(lang de:"Manuell" en:"Manual")</label> 
     18EOF 
     19if [ -e "/etc/default.inetd/inetd.cfg" ]; then 
     20cat << EOF 
     21<input id="e3" type="radio" name="enabled" value="inetd"$inetd_chk><label for="e3"> $(lang de:"Inetd" en:"Inetd")</label> 
     22EOF 
     23fi 
     24cat << EOF 
     25</p> 
     26EOF 
     27 
     28sec_end 
     29sec_begin '$(lang de:"ziproxy" en:"ziproxy")' 
     30 
     31cat << EOF 
     32<table border="0"> 
     33<tr> 
     34    <td>$(lang de:"Port" en:"Port"):</td> 
     35    <td><input type="text" name="port" size="5" maxlength="10" value="$(html "$ZIPROXY_PORT")"></td> 
     36</tr> 
     37<tr> 
     38    <td>$(lang de:"Address" en:"Address"):</td> 
     39    <td><input type="text" name="address" size="25" maxlength="50" value="$(html "$ZIPROXY_ADDRESS")"></td> 
     40</tr> 
     41<tr> 
     42    <td>$(lang de:"Max. connections" en:"Max. connections"):</td> 
     43    <td><input type="text" name="maxconnections" size="5" maxlength="10" value="$(html "$ZIPROXY_MAXCONNECTIONS")"></td> 
     44</tr> 
     45<tr> 
     46    <td>$(lang de:"GZip compression" en:"GZip compression"):</td> 
     47    <td> 
     48        <input type="hidden" name="gzipcompress" value="no"> 
     49        <input id="id_gzipcompress" type="checkbox" name="gzipcompress" value="yes"$gzipcompress_chk> 
     50    </td> 
     51</tr> 
     52<tr> 
     53    <td>$(lang de:"Image quality" en:"Image quality"):</td> 
     54    <td><input type="text" name="imagequality" size="10" maxlength="20" value="$(html "$ZIPROXY_IMAGEQUALITY")"></td> 
     55</tr> 
     56<tr> 
     57    <td>$(lang de:"Compress images" en:"Compress images"):</td> 
     58    <td> 
     59        <input type="hidden" name="imagecompress" value="no"> 
     60        <input id="id_imagecompress" type="checkbox" name="imagecompress" value="yes"$imagecompress_chk> 
     61    </td> 
     62</tr> 
     63<tr> 
     64    <td>$(lang de:"Preemptive DNS" en:"Preemptive DNS"):</td> 
     65    <td> 
     66        <input type="hidden" name="preemptnameres" value="no"> 
     67        <input id="id_preemptnameres" type="checkbox" name="preemptnameres" value="yes"$preemptnameres_chk> 
     68    </td> 
     69</tr> 
     70<tr> 
     71    <td>$(lang de:"Preemptive max." en:"Preemptive max."):</td> 
     72    <td><input type="text" name="preemptnameresmax" size="5" maxlength="10" value="$(html "$ZIPROXY_PREEMPTNAMERESMAX")"></td> 
     73</tr> 
     74<tr> 
     75    <td>$(lang de:"Transparent proxy" en:"Transparent proxy"):</td> 
     76    <td> 
     77        <input type="hidden" name="transparentproxy" value="no"> 
     78        <input id="id_transparentproxy" type="checkbox" name="transparentproxy" value="yes"$transparentproxy_chk> 
     79    </td> 
     80</tr> 
     81<tr> 
     82    <td>$(lang de:"Allow CONNECT method" en:"Allow CONNECT method"):</td> 
     83    <td> 
     84        <input type="hidden" name="allowconnect" value="no"> 
     85        <input id="id_allowconnect" type="checkbox" name="allowconnect" value="yes"$allowconnect_chk> 
     86    </td> 
     87</tr> 
     88<tr> 
     89    <td>$(lang de:"Restrict HTTP port" en:"Restrict HTTP port"):</td> 
     90    <td><input type="text" name="restrictporthttp" size="20" maxlength="50" value="$(html "$ZIPROXY_RESTRICTPORTHTTP")"></td> 
     91</tr> 
     92<tr> 
     93    <td>$(lang de:"Restrict CONNECT port" en:"Restrict CONNECT port"):</td> 
     94    <td><input type="text" name="restrictportconnect" size="20" maxlength="50" value="$(html "$ZIPROXY_RESTRICTPORTCONNECT")"></td> 
     95</tr> 
     96<tr> 
     97    <td>$(lang de:"Authentication user" en:"Authentication user"):</td> 
     98    <td><input type="text" name="authuser" size="30" maxlength="60" value="$(html "$ZIPROXY_AUTHUSER")"></td> 
     99</tr> 
     100<tr> 
     101    <td>$(lang de:"Authentication password" en:"Authentication password"):</td> 
     102    <td><input type="password" name="authpasswd" size="30" maxlength="60" value="$(html "$ZIPROXY_AUTHPASSWD")"></td> 
     103</tr> 
     104<tr> 
     105    <td>$(lang de:"URL deny list" en:"URL deny list"):</td> 
     106    <td><textarea id="id_urldeny" style="width: 550px;" name="urldeny" rows="15" cols="80" wrap="off" >$ZIPROXY_URLDENY</textarea></td> 
     107</tr> 
     108<tr> 
     109    <td><a href="http://en.wikipedia.org/wiki/Type_of_Service" target="_blank">$(lang de:"TOS flags" en:"TOS flags")</a>:</td> 
     110    <td><input type="text" name="tosflags" size="5" maxlength="10" value="$(html "$ZIPROXY_TOSFLAGS")"></td> 
     111</tr> 
     112<tr> 
     113    <td>$(lang de:"Error log file" en:"Error log file"):</td> 
     114    <td><input type="text" name="errorlog" size="40" maxlength="255" value="$(html "$ZIPROXY_ERRORLOG")"></td> 
     115</tr> 
     116<tr> 
     117    <td>$(lang de:"Access log file" en:"Access log file"):</td> 
     118    <td><input type="text" name="accesslog" size="40" maxlength="255" value="$(html "$ZIPROXY_ACCESSLOG")"></td> 
     119</tr> 
     120<tr> 
     121    <td>$(lang de:"Extra options" en:"Extra options"):</td> 
     122    <td><textarea id="id_extra" style="width: 550px;" name="extra" rows="15" cols="80" wrap="off" >$ZIPROXY_EXTRA</textarea></td> 
     123</tr> 
     124</table> 
     125 
     126EOF 
     127 
     128sec_end 
  • make/ziproxy/files/root/etc/init.d/rc.ziproxy

    Property changes on: make/ziproxy/files/root/usr/lib/cgi-bin/ziproxy.cgi
    ___________________________________________________________________
    Added: svn:executable
       + *
    
     
     1#!/bin/sh 
     2 
     3DAEMON=ziproxy 
     4DAEMON_CONFIG="/mod/etc/$DAEMON.conf" 
     5 
     6. /etc/init.d/modlibrc 
     7 
     8DAEMON_USER=nobody 
     9DAEMON_GROUP=nobody 
     10 
     11start() { 
     12    if [ -e /usr/sbin/iptables ] && [ "$ZIPROXY_TRANSPARENTPROXY" == "yes" ]; then 
     13        /usr/sbin/iptables -t nat -A PREROUTING -i lan -p tcp --dport 80 -j REDIRECT --to-port $ZIPROXY_PORT 
     14    fi 
     15    modlib_startdaemon $DAEMON -d -c $DAEMON_CONFIG 
     16} 
     17 
     18stop() { 
     19    $DAEMON -k -c $DAEMON_CONFIG 
     20    if [ -e /usr/sbin/iptables ] && /usr/sbin/iptables -t nat -S PREROUTING | grep -q "to-ports $ZIPROXY_PORT" ; then 
     21        /usr/sbin/iptables -t nat -D PREROUTING -i lan -p tcp --dport 80 -j REDIRECT --to-ports $ZIPROXY_PORT 
     22    fi 
     23} 
     24 
     25config() { 
     26    modlib_config 
     27} 
     28 
     29case $1 in 
     30    ""|load) 
     31        modreg cgi 'ziproxy' 'ziproxy' 
     32        modreg daemon $DAEMON 
     33 
     34        modlib_addgroup $DAEMON_GROUP 
     35        modlib_adduser $DAEMON_USER -s /bin/false -D -S -H -G $DAEMON_GROUP -g $DAEMON_GROUP 
     36 
     37        modlib_start $ZIPROXY_ENABLED 
     38        ;; 
     39    unload) 
     40        modunreg daemon $DAEMON 
     41        modunreg cgi $DAEMON 
     42        modlib_stop 
     43        ;; 
     44    start) 
     45        modlib_start 
     46        ;; 
     47    stop) 
     48        modlib_stop 
     49        ;; 
     50    restart) 
     51        modlib_restart 
     52        ;; 
     53    status) 
     54        modlib_status 
     55        ;; 
     56    *) 
     57        echo "Usage: $0 [load|unload|start|stop|restart|status]" 1>&2 
     58        exit 1 
     59        ;; 
     60esac 
     61 
     62exit 0 
  • make/ziproxy/files/root/etc/default.ziproxy/ziproxy.cfg

    Property changes on: make/ziproxy/files/root/etc/init.d/rc.ziproxy
    ___________________________________________________________________
    Added: svn:executable
       + *
    
     
     1export ZIPROXY_ENABLED='no' 
     2export ZIPROXY_PORT='3131' 
     3export ZIPROXY_ADDRESS='' 
     4export ZIPROXY_MAXCONNECTIONS='' 
     5export ZIPROXY_GZIPCOMPRESS='yes' 
     6export ZIPROXY_IMAGEQUALITY='' 
     7export ZIPROXY_IMAGECOMPRESS='yes' 
     8export ZIPROXY_PREEMPTNAMERES='no' 
     9export ZIPROXY_PREEMPTNAMERESMAX='' 
     10export ZIPROXY_TRANSPARENTPROXY='no' 
     11export ZIPROXY_ALLOWCONNECT='yes' 
     12export ZIPROXY_RESTRICTPORTHTTP='' 
     13export ZIPROXY_RESTRICTPORTCONNECT='' 
     14export ZIPROXY_AUTHUSER='' 
     15export ZIPROXY_AUTHPASSWD='' 
     16export ZIPROXY_URLDENY='' 
     17export ZIPROXY_TOSFLAGS='' 
     18export ZIPROXY_ERRORLOG='/var/log/ziproxy.log' 
     19export ZIPROXY_ACCESSLOG='' 
     20export ZIPROXY_EXTRA='' 
  • make/ziproxy/files/root/etc/default.ziproxy/ziproxy.inetd

     
     1. /mod/etc/conf/ziproxy.cfg 
     2[ -n "$ZIPROXY_ADDRESS" ] && local BINDADDRESS="${ZIPROXY_ADDRESS}:" 
     3echo "$BINDADDRESS" | grep "\." -vq && local BINDPROTO=$1 
     4inetdcfg_desc="ziproxy" 
     5inetdcfg_port=${BINDADDRESS}$ZIPROXY_PORT 
     6inetdcfg_sock=stream 
     7inetdcfg_proto=tcp$BINDPROTO 
     8inetdcfg_flags=nowait 
     9inetdcfg_user=root 
     10inetdcfg_exe=/usr/bin/ziproxy 
     11inetdcfg_arg0=ziproxy 
     12inetdcfg_args="-i -c /mod/etc/ziproxy.conf" 
  • make/ziproxy/files/root/etc/default.ziproxy/ziproxy_conf

     
     1#!/bin/sh 
     2 
     3echo "Port=$ZIPROXY_PORT" 
     4 
     5[ -n "$ZIPROXY_ADDRESS" ] && echo "Address=\"$ZIPROXY_ADDRESS\"" 
     6 
     7[ -n "$ZIPROXY_MAXCONNECTIONS" ] && echo "MaxActiveUserConnections=$ZIPROXY_MAXCONNECTIONS" 
     8 
     9[ "$ZIPROXY_ENABLED" != "inet" ] && echo "PIDFile=\"/var/run/ziproxy.pid\"" 
     10 
     11cat << EOF 
     12RunAsUser="nobody" 
     13RunAsGroup="nobody" 
     14EOF 
     15 
     16if [ "$ZIPROXY_GZIPCOMPRESS" != "yes" ]; then 
     17cat << EOF 
     18Gzip=false 
     19OverrideAcceptEncoding=false 
     20DecompressIncomingGzipData=false 
     21EOF 
     22fi 
     23 
     24[ -n "$ZIPROXY_IMAGEQUALITY" ] && echo "ImageQuality={$ZIPROXY_IMAGEQUALITY}" 
     25 
     26if [ "$ZIPROXY_IMAGECOMPRESS" != "yes" ]; then 
     27cat << EOF 
     28ProcessJPG=false 
     29ProcessPNG=false 
     30ProcessGIF=false 
     31EOF 
     32fi 
     33 
     34[ "$ZIPROXY_PREEMPTNAMERES" == "yes" ] && echo "PreemptNameRes=true" 
     35[ -n "$ZIPROXY_PREEMPTNAMERESMAX" ] && echo "PreemptNameResMax=$ZIPROXY_PREEMPTNAMERESMAX" 
     36 
     37if [ "$ZIPROXY_TRANSPARENTPROXY" == "yes" ]; then 
     38cat << EOF 
     39TransparentProxy=true 
     40ConventionalProxy=false 
     41EOF 
     42fi 
     43 
     44[ "$ZIPROXY_ALLOWCONNECT" != "yes" ] && echo "AllowMethodCONNECT=false" 
     45[ -n "$ZIPROXY_RESTRICTPORTHTTP" ] && echo "RestrictOutPortHTTP={$ZIPROXY_RESTRICTPORTHTTP}" 
     46[ -n "$ZIPROXY_RESTRICTPORTCONNECT" ] && echo "RestrictOutPortCONNECT={$ZIPROXY_RESTRICTPORTCONNECT}" 
     47 
     48mkdir -p /tmp/ziproxy 
     49chown nobody:nobody /tmp/ziproxy 
     50 
     51if [ -n "$ZIPROXY_AUTHUSER" ] && [ -n "$ZIPROXY_AUTHPASSWD" ]; then 
     52    echo "$ZIPROXY_AUTHUSER:$ZIPROXY_AUTHPASSWD" >/tmp/ziproxy/http.passwd 
     53    chown nobody:nobody /tmp/ziproxy/http.passwd 
     54cat << EOF 
     55AuthMode=1 
     56AuthPasswdFile="/tmp/ziproxy/http.passwd" 
     57EOF 
     58fi 
     59 
     60if [ -n "$ZIPROXY_URLDENY" ]; then 
     61    echo "$ZIPROXY_URLDENY" >/tmp/ziproxy/deny.list 
     62    chown nobody:nobody /tmp/ziproxy/deny.list 
     63    echo "URLDeny=\"/tmp/ziproxy/deny.list\"" 
     64fi 
     65 
     66if [ -n "$ZIPROXY_TOSFLAGS" ]; then 
     67cat << EOF 
     68TOSMarking=true 
     69TOSFlagsDefault=$ZIPROXY_TOSFLAGS 
     70EOF 
     71fi 
     72 
     73echo "ErrorLog=\"$ZIPROXY_ERRORLOG\"" 
     74chown nobody:nobody "$ZIPROXY_ERRORLOG" 
     75 
     76if [ -n "$ZIPROXY_ACCESSLOG" ]; then 
     77    echo "AccessLog=\"$ZIPROXY_ACCESSLOG\"" 
     78    chown nobody:nobody "$ZIPROXY_ACCESSLOG" 
     79fi 
     80 
     81echo "$ZIPROXY_EXTRA"