summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'www-proxy')
-rw-r--r--www-proxy/oops/ChangeLog39
-rw-r--r--www-proxy/oops/Manifest6
-rw-r--r--www-proxy/oops/files/digest-oops-1.5.221
-rw-r--r--www-proxy/oops/files/digest-oops-1.5.61
-rw-r--r--www-proxy/oops/files/oops.cfg656
-rw-r--r--www-proxy/oops/oops-1.5.22.ebuild110
-rw-r--r--www-proxy/oops/oops-1.5.6.ebuild110
7 files changed, 923 insertions, 0 deletions
diff --git a/www-proxy/oops/ChangeLog b/www-proxy/oops/ChangeLog
new file mode 100644
index 000000000000..21f25b95d213
--- /dev/null
+++ b/www-proxy/oops/ChangeLog
@@ -0,0 +1,39 @@
+# ChangeLog for net-www/oops
+# Copyright 2002-2004 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/www-proxy/oops/ChangeLog,v 1.1 2004/08/15 18:58:06 stuart Exp $
+
+*oops-1.5.6 (15 Aug 2004)
+
+ 15 Aug 2004; Stuart Herbert <stuart@gentoo.org> +files/oops.cfg,
+ +oops-1.5.22.ebuild, +oops-1.5.6.ebuild:
+ Moved from net-www/oops to www-proxy/oops.
+
+ 27 Jul 2004; Rob Holland <tigger@gentoo.org> :
+ Fix silly typo which breaks ebuild. Its been broken for a year :/ Closes
+ #57775. Thanks to gejzer@ibt.com.pl.
+
+ 01 Jul 2004; Jeremy Huddleston <eradicator@gentoo.org> oops-1.5.6.ebuild:
+ virtual/glibc -> virtual/libc
+
+ 08 Dec 2003; <spider@gentoo.org> oops-1.5.6.ebuild:
+ Fixing a chown user.group issue
+
+ 06 Dec 2002; Rodney Rees <manson@gentoo.org> : changed sparc ~sparc keywords
+
+*oops-1.5.22 (21 Oct 2002)
+
+ 21 Oct 2002; Maik Schreiber <blizzy@gentoo.org> : New version, closes bug
+ #5990.
+
+ 14 Jul 2002; Daniel Ahlberg <aliz@gentoo.org> oops-1.5.6.ebuild: Added
+ LICENSE, KEYWORDS, SLOT.
+
+*oops-1.5.6 (01 Feb 2002)
+
+ 01 Feb 2002; G.Bevin <gbevin@gentoo.org> ChangeLog:
+
+ Added initial ChangeLog which should be updated whenever the package is
+ updated in any way. This changelog is targetted to users. This means that the
+ comments should well explained and written in clean English. The details about
+ writing correct changelogs are explained in the skel.ChangeLog file which you
+ can find in the root directory of the portage repository.
diff --git a/www-proxy/oops/Manifest b/www-proxy/oops/Manifest
new file mode 100644
index 000000000000..8972ab3316e5
--- /dev/null
+++ b/www-proxy/oops/Manifest
@@ -0,0 +1,6 @@
+MD5 f23b401974c8a25d7671e522f5e0692d oops-1.5.6.ebuild 2309
+MD5 d17aaaf703b84adf066f9f6b7944d160 oops-1.5.22.ebuild 2667
+MD5 0f6c9ea1e4659fafe3c6c376252b4428 ChangeLog 1316
+MD5 6f1e80af4f1280cfb10b31ab9d2ab820 files/oops.cfg 17896
+MD5 261405b1b49b3bded20e300755773d8b files/digest-oops-1.5.6 62
+MD5 a9957cc3d73892c636b0c45ed7b84ee2 files/digest-oops-1.5.22 63
diff --git a/www-proxy/oops/files/digest-oops-1.5.22 b/www-proxy/oops/files/digest-oops-1.5.22
new file mode 100644
index 000000000000..f82c07ac72b8
--- /dev/null
+++ b/www-proxy/oops/files/digest-oops-1.5.22
@@ -0,0 +1 @@
+MD5 bd6f743fb4abc6cf08ae310b1927b211 oops-1.5.22.tar.gz 449116
diff --git a/www-proxy/oops/files/digest-oops-1.5.6 b/www-proxy/oops/files/digest-oops-1.5.6
new file mode 100644
index 000000000000..ce5e2a9567a0
--- /dev/null
+++ b/www-proxy/oops/files/digest-oops-1.5.6
@@ -0,0 +1 @@
+MD5 f45fac49062e20df65ff16ae5f45257e oops-1.5.6.tar.gz 387432
diff --git a/www-proxy/oops/files/oops.cfg b/www-proxy/oops/files/oops.cfg
new file mode 100644
index 000000000000..03dc19dc83c5
--- /dev/null
+++ b/www-proxy/oops/files/oops.cfg
@@ -0,0 +1,656 @@
+##
+# nameservers. Use your own, not our.
+##
+
+nameserver 195.114.128.50
+nameserver 193.219.193.130
+
+##
+# Ports and address to use for HTTP and ICP
+##
+
+#bind ip_addr|hostname
+http_port 3128
+icp_port 3130
+
+##
+## Change euid to that user
+##
+## WARNING: if you use 'userid, then you 'reconfigure will not be able to
+## open new sockets on reserved (< 1024) ports and will not be able
+## to return to original userid.
+##
+userid squid
+
+##
+## Change root directory. If don't know exactly what are you doing -
+## leave commented.
+#chroot ???
+
+##
+# Logfile - just debug output
+# When used in form 'filename [{N S}] [[un]buffered]'
+# will be rotated automatically (up to N files up to S bytes in size)
+##
+logfile /var/log/oops/oops.log
+#logfile /usr/oops/logs/oops.log { 3 1m } unbuffered
+
+##
+# Accesslog - the same as for squid. Re rotating - see note for logfile
+##
+accesslog /var/log/oops/oops.access
+#accesslog /usr/oops/logs/access.log
+
+##
+# Pidfile. for kill -1 `cat oops.pid` and for locking.
+##
+pidfile /var/run/oops/oops.pid
+
+##
+# Statistics file - once per minute flush some statistics to this file
+##
+statistics /var/log/oops/oops_statfile
+
+##
+# icons - where to find link.gif, dir.gif, binary.gif and so on (for
+# ftp lists). If omitted - name of running host will be used. But
+# using explicit names is better way.
+##
+
+#icons-host ss5.paco.net
+#icons-port 80
+#icons-path icons
+
+##
+# When total object volume in memory grow over this (this mean
+# that cachable data from network came faster then we can save on disk)
+# drop objects (without attempt to save on disk).
+##
+mem_max 64m
+
+##
+# Hint, how much cached objects keep in memory.
+# When total amount become larger then this limit - start
+# swaping cachable objects to disk
+##
+lo_mark 8m
+
+##
+# start random early drop when number of clients reach some level.
+# this can protect you against attacks and against situation when
+# oops cant handle too much connections. By default - 0 (or no limits).
+##
+#start_red 0
+
+##
+# refuse any connection when number of already connected clients reach some
+# level. By default - 0 (or no limits).
+##
+#refuse_at 0
+
+##
+# if document contain no Expires: then expire after (in days)
+# ftp-expire-value - expire time for ftp (in days)
+##
+default-expire-value 7
+ftp-expire-value 7
+
+##
+# Maximum expite time - doc will not keep in cache more then
+# this number of days (except if defaiult-expire-value used for this documeny)
+##
+max-expire-value 30
+
+##
+# in which proportion time passed since last document modification
+# will accounted in expire time. For example, if last-modified-factor=5
+# and there was passed 10 days since document modification, then expiration
+# will be setted to 2 days in future (but no nore then max-expire-value)
+##
+last-modified-factor 5
+
+##
+# If you want not cache replies without Last-Modified:
+# uncomment next line.
+##
+#dont_cache_without_last_modified
+
+# run expire every ( in hours )
+##
+default-expire-interval 1
+
+##
+# icp_timeout - how long to wait icp reply from peer (in ms, e.g 1000 = 1sec)
+##
+icp_timeout 1000
+
+##
+# start disk cache cleanup when free space will be (in %%)
+# As on the very large storages 1% is large space (1% from 9G is
+# 90M), then on such storages you can set both disk-low-free and
+# disk-ok-free to 0. Oops will start cleanup if it have less then 256
+# free blocks(1M), and stop when it reach 512 bree blocks(2M).
+##
+disk-low-free 3
+
+##
+# stop disk cache cleanup when free space will be (in %%)
+##
+disk-ok-free 5
+
+##
+# Force_http11 - turn on http/1.1 for each request to document server
+# This option required if module 'vary' used.
+##
+force_http11
+
+##
+# Always check document freshness, even it is not stale or expired
+# This force Oops behave like squid - first check cached doc, then send
+##
+#always_check_freshness
+
+##
+# If user-requestor aborted connection to proxy, but there was received more
+# then some percent ot the document - then continue.
+# default value - 75%
+##
+force_completion 75
+
+##
+# maximum size of the object we will cache
+##
+maxresident 1m
+
+insert_x_forwarded_for yes
+insert_via yes
+
+##
+# If host have several interfaces or aliases, use exactly
+# this name when connecting to server:
+##
+#connect-from proxy.paco.net
+
+##
+# ACLs - currently: urlregex, urlpath, usercharset
+# port, dstdom, dstdom_regex, src_ip, time
+# each acl can be loaded from file.
+##
+#acl CACHEABLECGI urlregex http://www\.topping\.com\.ua/cgi-bin/pingstat\.cgi\?072199131826
+#acl WWWPACO urlregex www\.paco\.net
+#acl NO_RLH urlregex zipper
+#acl REWRITEPORTS urlregex (www.job.ru|www.sale.ru)
+#acl REWRITEHOSTS urlregex (www.asm.ru|zipper\.paco)
+#acl WINUSER usercharset windows-1251
+#acl DOSUSER usercharset ibm866
+#acl UNIXUSER usercharset koi8-r
+#acl RUS dstdom ru su
+#acl UKR dstdom ua
+#acl BADPORTS port [0:79],110,138,139,513,[6000:6010]
+#acl BADDOMAIN dstdom baddomain1.com baddomain2.com
+#acl BADDOMREGEX dstdom_regex baddomain\.((com)|(org))
+#acl LOCAL_NETWORKS src_ip include:/etc/oops/acl_local_networks
+#acl BADNETWORKS src_ip 192.168.10/24
+#acl WORKTIME time Mon,Tue:Fri 0900:1800
+#acl HTMLS content_type text/html
+#acl USERS username joe
+acl ADMINS src_ip 127.0.0.1
+acl PURGE method PURGE
+
+##
+# acl_deny [!]ACL [!]ACL ...
+# deny access for combined acl
+##
+acl_deny PURGE !ADMINS
+
+##
+# Never cache objects with URL, containing...
+##
+stop_cache ?
+stop_cache cgi-bin
+
+##
+# stop_cache_acl [!]ACL [!]ACL ...
+# Stop cache using ACL
+##
+#stop_cache_acl WWWPACO
+
+##
+# refresh_pattern ACLNAME min percent max
+# 'min' and 'max' are limits between Expite time will be assigned
+# Iff document have no expire: header and have Last-Modified: header
+# we will use 'percent' to estimate how far in the future document will
+# be expired.
+##
+#refresh_pattern CACHEABLECGI 20 50% 200
+#refresh_pattern WWWPACO 0 0% 0
+
+##
+# bind_acl {hostname|ip} [!]ACL [!]ACL ...
+# bind to given address when connecting to server
+# if request match ACLNAME
+##
+#bind_acl outname1 RUS
+#bind_acl outname2 UKR
+
+##
+# Always check document freshness, but now on acl basis.
+# You can have several such lines.
+## This example will force to check freshness only for html documents.
+#always_check_freshness_acl HTMLS
+
+##
+# line 'parent ....' will force all connections (except to destinations
+# in local-domain or local-networks) go through parent host
+##
+#parent proxy.paco.net 3128
+
+##
+# parent_auth login:password
+# if your parent require login/password from your proxy
+##
+#parent_auth login:password
+
+# ICP peer's
+#peer proxy.paco.net 3128 3130 {
+## ^^^ peer name ^http port ^icp port
+## icp port can be 0, in which case we assume this is non-icp
+## proxy. We assume that non-icp peer act like parent which
+## answer MISS all th etime. If this peer refused connection
+## then it goes down for 60 seconds - it doesn't take part in
+## any peer-related decisions.
+# sibling ;
+## if this peer require login/password from your proxy
+# my_auth my_login:my_password;
+## we will send requests for these domains
+# allow dstdomain * ;
+## we will NOT send requests for these domains
+# deny dstdomain * ;
+## we will send only requests matched to this acl
+# peer_access [!]ACL1 [!]ACL2
+## if (and only if) peer is not icp-capable, then , in case of fail we
+## leave failed peer alone for the down_timeout interval (in seconds).
+## Then we will try again
+# down_timeout 60 ;
+#}
+
+#peer proxy.gu.net 80 3130 {
+# parent ;
+# allow dstdomain * ;
+# deny dstdomain paco.net odessa.ua ;
+#}
+
+##
+# Never use "parent" when connecting to server in these domains
+##
+local-domain odessa.ua od.ua
+local-domain odessa.net paco.net netsy.net netsy.com te.net.ua
+
+local-networks 195.114.128/19 10/8 192.168/16
+
+#
+# Groups
+#
+
+group main {
+##
+# You can describe group ip adresses here, or using src_ip acl's
+# with networks_acl directive.
+# networks_acl always have higher preference (checked first) and
+# are checked in the order of appearance.
+# If host wil not fall in any networks_acl - we check in networks.
+# networks are ordered by masklen - longest masks(most specific networks)
+# are checked first.
+##
+
+#Next line enables redirection features and transparent proxying
+ redir_mods fastredir transparent;
+#Change this next line to list the IP's of everyone in this group
+ networks 195.114.128/19 127/8 195.5.40.93/32 ;
+
+# networks_acl LOCAL_NETWORKS !BAD_NETWORKS ;
+ badports [0:79],110,138,139,513,[6000:6010] ;
+ miss allow;
+##
+# denytime - when deny access to proxy server for this group
+##
+# denytime Sat,Sun 0642:1000
+# denytime Mon,Thu:Fri,Sun 0900:2100
+##
+# Authentication modules for this group (seprated by space)
+##
+# auth_mods passwd_file;
+
+##
+# URL-Redirector (porno, ad. filtering) modules for this group (separate by
+# space)
+##
+# redir_mods redir;
+
+
+##
+# limit whole group to 8Kbytes per sec
+##
+# bandwidth 8k;
+
+##
+# limit each host 8Kbytes per sec
+##
+# per_ip_bw 8k;
+
+##
+# limit connections number from each host
+#
+# per_ip_conn 8;
+
+##
+# limit request rate from this group (requests per second). This is crude,
+# and must be used as last resort
+##
+# maxreqrate 100;
+
+##
+# icp acl ...
+##
+# icp {
+# allow dstdomain * ;
+# }
+
+##
+# http acl
+##
+ http {
+##
+# http acls can be in form 'allow dstdomain domainname domainname ... domainname ;
+# or in form 'allow dstdomain include:filename ;
+# where filename - name of the file, which contain
+# domainnames (one per line, # - comment line);
+# the same rules for 'deny'
+##
+ allow dstdomain * ;
+ }
+}
+
+group world {
+ networks 0/0;
+ badports [0:79],110,138,139,513,[6000:6010];
+ http {
+ deny dstdomain * ;
+ }
+ icp {
+ deny dstdomain * ;
+ }
+}
+
+##
+# Storage section
+# Change this for your own situation. Oops can work without
+# storages (using only in-memory cache).
+##
+
+##
+# Storage description (can be several)
+# path - filename of storage. can be raw device (be carefull!)
+# size - size (of storage file). Can be smthng like 100k or 200m or 4g
+# Size used only durig format process (oops -z).
+##
+
+storage {
+ path /var/lib/oops/storage/oops_storage ;
+# Size of the storage. Can be in bytes or 'auto'. Auto is
+# usefull for pre-created storages or disk slices.
+# NOTE: 'size auto' won't work for Linux on disk slices.
+# To use large ( > 2G ) files run configure with --enable-large-files
+
+ size 100m ;
+
+# You have to use 'offset' in the case your raw device (or slice)
+# require that. For example if you use entire disk as storage
+# under AIX and Soalris/Sparc - you have to skip first block
+# which contain disk label (that is storage will start from
+# next 512 sector.
+# offset 512;
+}
+
+#storage {
+# path /usr/oops/storages/oops_storage1 ;
+# size 600m ;
+#}
+
+module lang {
+
+ default_charset eng
+
+ # Recode tables and other charset stuff
+ CharsetRecodeTable windows-1251 /etc/oops/tables/koi-win.tab
+ CharsetRecodeTable ISO-8859-5 /etc/oops/tables/koi-iso.tab
+ CharsetRecodeTable ibm866 /etc/oops/tables/koi-alt.tab
+ CharsetAgent windows-1251 AIR_Mosaic IWENG/1 MSIE WinMosaic (Windows (WinNT;
+ CharsetAgent windows-1251 (Win16; (Win95; (Win98; (16-bit) Opera/3.0
+ CharsetAgent ibm866 DosLynx Lynx2/OS/2
+}
+
+module err {
+ # error reporting module
+
+ # template
+ template /etc/oops/err_template.html
+
+ # Language to use when generate Error messages
+ lang eng
+}
+
+module passwd_file {
+ # password proxy-authentication module
+ #
+ # default realm, scheme and passwd file
+ # the only thing you really want to change is 'file' and 'template'
+ # you don't have to reconfigure oops if you only
+ # change content passwd file or template: oops authomatically
+ # reload file
+
+ realm oops
+ scheme Basic
+ file /etc/oops/passwd
+ template /etc/oops/auth_template.html
+}
+
+module passwd_pgsql {
+ # proxy authentication using postgresql
+ # "Ivan B. Yelnikov" <bahek@khspu.ru>
+ #
+ # host - host where database live,
+ # user,password - login and password for database access
+ # database - database name
+ # select - file with request body
+ # template - file with html doc which user will receive
+ # during authentication
+ scheme Basic
+ realm oops
+ host <host address/name>
+ user <database_user>
+ password <user_password>
+ database <database_name>
+ select /etc/oops/select.sql
+ template /etc/oops/auth_template.html
+}
+
+module passwd_mysql {
+ # proxy authentication usin mysql
+ # "Ivan B. Yelnikov" <bahek@khspu.ru>
+ #
+ # look passwd_pgsql description
+ #
+ scheme Basic
+ realm oops
+ host <host address/name>
+ user <database_user>
+ password <user_password>
+ database <database_name>
+ select /etc/oops/select.sql
+ template /etc/oops/auth_template.html
+}
+
+module redir {
+ # file - regex rules.
+ # each line consist of one or two fields (separated with white space)
+ # 1. regular expression
+ # 2. redirect-location
+ # if requested (by client) url match regex then
+ # if we have redirect-url then we send '302 Moved Temporary' to
+ # redirect-location
+ # if we have no redirect-location (i.e. we have no 2-nd field)
+ # then we send template.html (%R will be substituted by rule)
+ # or some default message if we have no template.
+ # you don't have to reconfigure oops each time
+ # you edit rules or template, they will be reloaded authomatically
+
+ file /etc/oops/redir_rules
+ template /etc/oops/redir_template.html
+## mode control will redir rewrite url or send Location: header
+## with new location. Values are 'rewrite' or 'bounce'
+# mode rewrite
+
+ # This module can process requests which come on http_port
+ # and/or on different port. For example, you wish oops
+ # bind on two ports - 3128 and 3129, and all requests which come on
+ # port 3129 must pass through filters, and requests which come on port
+ # 3128 (common http_port) - not. Then you have to uncomment next line
+ # myport 3129
+ # which means exactly: bind oops to additional port 3129 and process
+ # requests which come on this port.
+ # myport can be in the next form:
+ # myport [{hostname|ip_addr}:]port
+}
+
+module oopsctl {
+ # path to oopsctl unix socket
+ socket_path /var/run/oops/oopsctl
+ # time to auto-refresh page (seconds)
+ html_refresh 300
+}
+
+##
+## This module hadnle 'Vary' header - it was written to better support
+## Russian Apache
+##
+module vary {
+ user-agent by_charset
+ accept-charset ignore
+}
+
+##
+## WWW -accelerator. To use - add word accel to
+## redir_mods line for
+## the group 'world' description
+## You will find more description of this module in supplied accel_maps file
+##
+#module accel {
+# myport can have next form:
+# myport [{hostname|ip_addr}:]port ...
+# myport 80
+##
+# allow access to proxy through accel module.
+# Deny will stop proxy through accel completely, regardless
+# of any other access rules
+##
+# proxy_requests deny
+#
+##
+# File with maps and other config directives
+# Checked once per minute. No need to restart oops if maps changed
+##
+# file /etc/oops/accel_maps
+#}
+
+##
+## Transparent proxy. To use - add word 'transparent' into
+## redir_mods line for your group.
+## in the your local (or any other) group description
+##
+#module transparent {
+# myport can have next form:
+# myport [{hostname|ip_addr}:]port ...
+# myport 3128
+#}
+
+##
+## %h - remote ip address
+## %A - local ip address
+## %d - ip address of source (peer or document server)
+## %l - remote logname from identd (not suported now)
+## %U - remote user (from 'Authorization' header)
+## %u - remote user (from proxy-auth)
+## %{format}t - time with optional {format} (for strftime)
+## %t - time with standard format %d/%b/%Y:%T %Z
+## %r - request line
+## %s - status code
+## %b - bytes received
+## %{header}i - value of header in request
+## %m - HIT/MISS
+## %k - hierarchy (DIRECT/NONE/...)
+##
+## directive buffered can be followed by size of the buffer,
+## like 'buffered 32000'
+##
+#module customlog {
+# path /usr/local/oops/logs/access_custom1
+# format "%h %l %u %t \"%r\" %>s %b"
+# squid httpd mode log emulation
+# format "%h %u %l %t \"%r\" %s %b %m:%k"
+# buffered
+# path /usr/local/oops/logs/access_custom2
+# format "%h->%A %l %u [%t] \"%r\" %s %b \"%{User-Agent}i\""
+#}
+
+module berkeley_db {
+ ##
+ # dbhome - directory where all DB indexes reside. Use full path
+ # this directory must exist.
+ # dbname - filename for index file. Use just filename (no full path)
+ ##
+
+ dbhome /var/lib/oops/db
+ dbname dburl
+
+ ##
+ # This parameter specifies internal cache size of BerkeleyDB.
+ # Increase this parameter for best performance (if you have a lot of memory).
+ # For example: db_cache_mem 64m
+ # Default and minimum value: 4m
+ #
+ # This memory pool is not part of memory pool, specified by mem_max parameter.
+ # WARNING: the amount of RAM used by oops will be increased by the value of
+ # this parameter.
+ ##
+ #db_cache_mem 4m
+
+}
+
+#module gigabase_db {
+# This module enable GigaBASE as database engine.
+# You can use berkeley_db or gigabase_db, not both.
+# Also, important notice - indexes created with different modules
+# are not compatible.
+# ##
+# # dbhome - directory where all DB indexes reside. Use full path
+# # this directory must exist.
+# # dbname - filename for index file. Use just filename (no full path)
+# ##
+#
+# dbhome /var/lib/oops/db
+# dbname gdburl
+#
+# ##
+# # This parameter specifies internal cache size of BerkeleyDB.
+# # Increase this parameter for best performance (if you have a lot of memory).
+# # For example: db_cache_mem 64m
+# # Default and minimum value: 4m
+# #
+# # This memory pool is not part of memory pool, specified by mem_max parameter.
+# # WARNING: the amount of RAM used by oops will be increased by the value of
+# # this parameter.
+# ##
+# #db_cache_mem 4m
+#
+#}
diff --git a/www-proxy/oops/oops-1.5.22.ebuild b/www-proxy/oops/oops-1.5.22.ebuild
new file mode 100644
index 000000000000..77e23cf2899a
--- /dev/null
+++ b/www-proxy/oops/oops-1.5.22.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/www-proxy/oops/oops-1.5.22.ebuild,v 1.1 2004/08/15 18:58:06 stuart Exp $
+
+DESCRIPTION="An advanced multithreaded caching web proxy"
+HOMEPAGE="http://zipper.paco.net/~igor/oops.eng/"
+SRC_URI="http://zipper.paco.net/~igor/oops/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~x86 ~sparc"
+IUSE=""
+
+RDEPEND=""
+DEPEND="dev-libs/libpcre
+ sys-devel/flex"
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+ cp configure configure.orig
+ sed -e 's:/usr/local/lib/libpcre:/usr/lib/libpcre:g' configure.orig > configure
+ cd ${S}/src/modules
+}
+
+src_compile() {
+ ./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib/oops \
+ --enable-oops-user=squid \
+ --sysconfdir=/etc/oops \
+ --sbindir=/usr/sbin \
+ --with-regexp=pcre \
+ --localstatedir=/var/run/oops \
+ || die "configure problem"
+
+ cd src
+ mv config.h.in config.h.in.orig
+ sed <config.h.in.orig >config.h.in \
+ -e '/STRERROR_R/d'
+ mv Makefile Makefile.orig
+ sed <Makefile.orig >Makefile \
+ -e "s|OOPS_LIBDIR = /usr/lib/oops|OOPS_LIBDIR = ${D}/usr/lib/oops|" \
+ -e "s|OOPS_SBINDIR = /usr/sbin|OOPS_SBINDIR = ${D}/usr/sbin|" \
+ -e "s|OOPS_SYSCONFDIR = /etc/oops|OOPS_SYSCONFDIR = ${D}/etc/oops|" \
+ -e "s|OOPS_LOCALSTATEDIR = /var/run/oops|OOPS_LOCALSTATEDIR = ${D}/var/run/oops|" \
+ -e "s|OOPSPATH=/usr/oops|OOPSPATH=${D}/usr/oops|"
+ cd ..
+ make || die "compile problem"
+}
+
+src_install() {
+ local x
+ local y
+
+ dodir /usr/sbin
+ chown squid:squid ${D}
+ make DESTDIR=${D} install || die "install problem"
+ chmod -R g+srw ${D}/etc/oops
+ chmod -R g+rw ${D}/etc/oops/*
+
+ insinto /etc/oops
+ doins ${FILESDIR}/oops.cfg
+ cd ${D}
+
+ # cleanups
+ rm -rf ${D}/usr/oops
+ rm -rf ${D}/usr/lib/oops/modules
+
+ # config files
+ cd ${D}/etc/oops
+ for y in . tables ; do
+ for x in ${y}/* ; do
+ if [ -f ${x} ] ; then
+ mv ${x} ${x}.eg
+ fi
+ done
+ done
+}
+
+pkg_postinst() {
+ local x
+ local y
+ local mylen
+ local newf
+
+ cd ${ROOT}/etc/oops
+ for y in . tables ; do
+ for x in ${y}/*.eg ; do
+ realf=`echo $x | sed -e 's/.eg$//'`
+ if [ ! -e ${realf} ] ; then
+ cp ${x} ${realf}
+ fi
+ done
+ done
+ if [ ! -e ${ROOT}/var/log/oops ] ; then
+ install -d -o squid -g squid -m0770 ${ROOT}/var/log/oops
+ chmod g+s ${ROOT}/var/log/oops
+ fi
+ if [ ! -e ${ROOT}/var/lib/oops/storage ] ; then
+ install -d -o squid -g squid -m0770 ${ROOT}/var/lib/oops/storage
+ fi
+ if [ ! -e ${ROOT}/var/lib/oops/db ] ; then
+ install -d -o squid -g squid -m0770 ${ROOT}/var/lib/oops/db
+ fi
+ if [ ! -e ${ROOT}/var/run/oops ] ; then
+ install -d -o squid -g squid -m0775 ${ROOT}/var/run/oops
+ chmod g+s ${ROOT}/var/run/oops
+ fi
+}
diff --git a/www-proxy/oops/oops-1.5.6.ebuild b/www-proxy/oops/oops-1.5.6.ebuild
new file mode 100644
index 000000000000..b529c3df6e1c
--- /dev/null
+++ b/www-proxy/oops/oops-1.5.6.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2004 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/www-proxy/oops/oops-1.5.6.ebuild,v 1.1 2004/08/15 18:58:06 stuart Exp $
+
+DESCRIPTION="An advanced multithreaded caching web proxy"
+HOMEPAGE="http://zipper.paco.net/~igor/oops.eng/"
+SRC_URI="http://zipper.paco.net/~igor/oops/oops-1.5.6.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="x86 sparc"
+IUSE=""
+
+DEPEND="virtual/libc
+ sys-devel/gcc
+ dev-libs/libpcre
+ sys-devel/flex"
+
+RDEPEND="virtual/libc
+ sys-devel/gcc"
+
+src_unpack() {
+ unpack ${A}
+ cd ${S}
+ cp configure configure.orig
+ sed -e 's:/usr/local/lib/libpcre:/usr/lib/libpcre:g' configure.orig > configure
+ cd ${S}/src/modules
+}
+
+src_compile() {
+ ./configure --prefix=/usr --libdir=/usr/lib/oops --enable-oops-user=squid \
+ --sysconfdir=/etc/oops --sbindir=/usr/sbin --with-regexp=pcre --localstatedir=/var/run/oops || die
+ cd src
+ cp config.h.in config.h.in.orig
+ sed -e '/STRERROR_R/d' config.h.in.orig > config.h.in
+ cp Makefile Makefile.orig
+ sed -e 's:${OOPS:${DESTDIR}/${OOPS:g' Makefile.orig > Makefile
+ cd ..
+ make || die
+}
+
+src_install() {
+ dodir /usr/sbin
+ chown squid:squid ${D}
+ make DESTDIR=${D} install || die
+ chmod -R g+srw ${D}/etc/oops
+ chmod -R g+rw ${D}/etc/oops/*
+
+ insinto /etc/oops
+ doins ${FILESDIR}/oops.cfg
+ cd ${D}
+
+ #cleanups
+ rm -rf ${D}/usr/oops
+ rm -rf ${D}/usr/lib/oops/modules
+
+ #config files
+
+ cd ${D}/etc/oops
+ local x
+ local y
+ for y in . tables
+ do
+ for x in ${y}/*
+ do
+ if [ -f $x ]
+ then
+ mv $x $x.eg
+ fi
+ done
+ done
+}
+
+pkg_postinst() {
+ local x
+ local y
+ local mylen
+ local newf
+ cd ${ROOT}/etc/oops
+ for y in . tables
+ do
+ for x in ${y}/*.eg
+ do
+ realf=`echo $x | sed -e 's/.eg$//'`
+ if [ ! -e ${realf} ]
+ then
+ cp ${x} ${realf}
+ fi
+ done
+ done
+ if [ ! -e ${ROOT}/var/log/oops ]
+ then
+ install -d -o squid -g squid -m0770 ${ROOT}/var/log/oops
+ chmod g+s ${ROOT}/var/log/oops
+ fi
+ if [ ! -e ${ROOT}/var/lib/oops/storage ]
+ then
+ install -d -o squid -g squid -m0770 ${ROOT}/var/lib/oops/storage
+ fi
+ if [ ! -e ${ROOT}/var/lib/oops/db ]
+ then
+ install -d -o squid -g squid -m0770 ${ROOT}/var/lib/oops/db
+ fi
+ if [ ! -e ${ROOT}/var/run/oops ]
+ then
+ install -d -o squid -g squid -m0775 ${ROOT}/var/run/oops
+ chmod g+s ${ROOT}/var/run/oops
+ fi
+}
+