diff options
author | Pawel Pekala <pawel@FreeBSD.org> | 2014-02-07 22:30:46 +0000 |
---|---|---|
committer | Pawel Pekala <pawel@FreeBSD.org> | 2014-02-07 22:30:46 +0000 |
commit | 3278c8198c1a51df1b62c7618d763932dd1412d2 (patch) | |
tree | 42104e1b6a99c3c87515378d250120a66afd5b9c /www | |
parent | 6477e3e89613f934bebcb4286772d7707972f206 (diff) | |
download | freebsd-ports-3278c8198c1a51df1b62c7618d763932dd1412d2.zip |
- Update to version 2012.05.31 [1]
- Stage support
PR: ports/186234 [1]
Submitted by: maintainer
Diffstat (limited to 'www')
-rw-r--r-- | www/woof/Makefile | 13 | ||||
-rw-r--r-- | www/woof/distinfo | 4 | ||||
-rw-r--r-- | www/woof/files/extra-patch-woof-2009-12-27-python27.diff | 190 |
3 files changed, 5 insertions, 202 deletions
diff --git a/www/woof/Makefile b/www/woof/Makefile index 9896382cdbbd..4b25f1bc3e72 100644 --- a/www/woof/Makefile +++ b/www/woof/Makefile @@ -2,7 +2,7 @@ # $FreeBSD$ PORTNAME= woof -PORTVERSION= 2009.12.27 +PORTVERSION= 2012.05.31 CATEGORIES= www MASTER_SITES= http://www.home.unix-ag.org/simon/ DISTNAME= ${PORTNAME}-${PORTVERSION:S/./-/g} @@ -18,18 +18,11 @@ USE_PYTHON= yes NO_BUILD= yes PLIST_FILES= bin/woof -NO_STAGE= yes -.include <bsd.port.pre.mk> - -.if ${PYTHON_REL} >= 270 -EXTRA_PATCHES+= ${FILESDIR}/extra-patch-woof-2009-12-27-python27.diff -.endif - do-extract: @${MKDIR} ${WRKSRC} @${CP} ${DISTDIR}/${DISTFILES} ${WRKSRC}/${DISTFILES} do-install: - ${INSTALL_SCRIPT} ${WRKSRC}/${DISTFILES} ${PREFIX}/bin/woof + ${INSTALL_SCRIPT} ${WRKSRC}/${DISTFILES} ${STAGEDIR}${PREFIX}/bin/woof -.include <bsd.port.post.mk> +.include <bsd.port.mk> diff --git a/www/woof/distinfo b/www/woof/distinfo index ffe5053d3386..7bc6a77dbef3 100644 --- a/www/woof/distinfo +++ b/www/woof/distinfo @@ -1,2 +1,2 @@ -SHA256 (woof-2009-12-27.py) = 21086b67489381b477c9c0567b1d9f8b8f1deec12bd4e414969e3f155c1ff889 -SIZE (woof-2009-12-27.py) = 16810 +SHA256 (woof-2012-05-31.py) = d84353d07f768321a1921a67193510bf292cf0213295e8c7689176f32e945572 +SIZE (woof-2012-05-31.py) = 20284 diff --git a/www/woof/files/extra-patch-woof-2009-12-27-python27.diff b/www/woof/files/extra-patch-woof-2009-12-27-python27.diff deleted file mode 100644 index 4002e5c783a1..000000000000 --- a/www/woof/files/extra-patch-woof-2009-12-27-python27.diff +++ /dev/null @@ -1,190 +0,0 @@ ---- woof-2009-12-27.py.orig 2009-12-27 23:47:43.000000000 +0100 -+++ woof-2009-12-27.py 2011-02-08 20:38:51.150000040 +0100 -@@ -28,13 +28,13 @@ - - import sys, os, errno, socket, getopt, commands, tempfile - import cgi, urllib, BaseHTTPServer -+from SocketServer import ThreadingMixIn - import ConfigParser - import shutil, tarfile, zipfile - import struct - - maxdownloads = 1 - TM = object --cpid = -1 - compressed = 'gz' - upload = False - -@@ -137,6 +137,11 @@ class FileServHTTPRequestHandler (BaseHT - self.send_error (501, "Unsupported method (POST)") - return - -+ maxdownloads -= 1 -+ -+ if maxdownloads < 1: -+ httpd.shutdown() -+ - # taken from - # http://mail.python.org/pipermail/python-list/2006-September/402441.html - -@@ -200,13 +205,11 @@ class FileServHTTPRequestHandler (BaseHT - self.end_headers () - self.wfile.write (txt) - -- maxdownloads -= 1 -- - return - - - def do_GET (self): -- global maxdownloads, cpid, compressed, upload -+ global maxdownloads, compressed, upload - - # Form for uploading a file - if upload: -@@ -260,63 +263,62 @@ class FileServHTTPRequestHandler (BaseHT - - maxdownloads -= 1 - -- # let a separate process handle the actual download, so that -- # multiple downloads can happen simultaneously. -+ if maxdownloads < 1: -+ httpd.shutdown() - -- cpid = os.fork () -+ type = None -+ -+ if os.path.isfile (self.filename): -+ type = "file" -+ elif os.path.isdir (self.filename): -+ type = "dir" - -- if cpid == 0: -- # Child process -- child = None -- type = None -- -- if os.path.isfile (self.filename): -- type = "file" -- elif os.path.isdir (self.filename): -- type = "dir" -+ if not type: -+ print >> sys.stderr, "can only serve files or directories. Aborting." -+ sys.exit (1) - -- if not type: -- print >> sys.stderr, "can only serve files or directories. Aborting." -- sys.exit (1) -+ self.send_response (200) -+ self.send_header ("Content-Type", "application/octet-stream") -+ if os.path.isfile (self.filename): -+ self.send_header ("Content-Length", -+ os.path.getsize (self.filename)) -+ self.end_headers () - -- self.send_response (200) -- self.send_header ("Content-Type", "application/octet-stream") -- if os.path.isfile (self.filename): -- self.send_header ("Content-Length", -- os.path.getsize (self.filename)) -- self.end_headers () -+ try: -+ if type == "file": -+ datafile = file (self.filename) -+ shutil.copyfileobj (datafile, self.wfile) -+ datafile.close () -+ elif type == "dir": -+ if compressed == 'zip': -+ ezfile = EvilZipStreamWrapper (self.wfile) -+ zfile = zipfile.ZipFile (ezfile, 'w', zipfile.ZIP_DEFLATED) -+ stripoff = os.path.dirname (self.filename) + os.sep - -- try: -- if type == "file": -- datafile = file (self.filename) -- shutil.copyfileobj (datafile, self.wfile) -- datafile.close () -- elif type == "dir": -- if compressed == 'zip': -- ezfile = EvilZipStreamWrapper (self.wfile) -- zfile = zipfile.ZipFile (ezfile, 'w', zipfile.ZIP_DEFLATED) -- stripoff = os.path.dirname (self.filename) + os.sep -+ for root, dirs, files in os.walk (self.filename): -+ for f in files: -+ filename = os.path.join (root, f) -+ if filename[:len (stripoff)] != stripoff: -+ raise RuntimeException, "invalid filename assumptions, please report!" -+ zfile.write (filename, filename[len (stripoff):]) -+ zfile.close () -+ else: -+ tfile = tarfile.open (mode=('w|' + compressed), -+ fileobj=self.wfile) -+ tfile.add (self.filename, -+ arcname=os.path.basename(self.filename)) -+ tfile.close () -+ except Exception, e: -+ print e -+ print >>sys.stderr, "Connection broke. Aborting" - -- for root, dirs, files in os.walk (self.filename): -- for f in files: -- filename = os.path.join (root, f) -- if filename[:len (stripoff)] != stripoff: -- raise RuntimeException, "invalid filename assumptions, please report!" -- zfile.write (filename, filename[len (stripoff):]) -- zfile.close () -- else: -- tfile = tarfile.open (mode=('w|' + compressed), -- fileobj=self.wfile) -- tfile.add (self.filename, -- arcname=os.path.basename(self.filename)) -- tfile.close () -- except Exception, e: -- print e -- print >>sys.stderr, "Connection broke. Aborting" -+ -+class ThreadedHTTPServer(ThreadingMixIn, BaseHTTPServer.HTTPServer): -+ """Handle requests in a separate thread""" - - - def serve_files (filename, maxdown = 1, ip_addr = '', port = 8080): -- global maxdownloads -+ global maxdownloads, httpd - - maxdownloads = maxdown - -@@ -326,8 +328,7 @@ def serve_files (filename, maxdown = 1, - FileServHTTPRequestHandler.filename = filename - - try: -- httpd = BaseHTTPServer.HTTPServer ((ip_addr, port), -- FileServHTTPRequestHandler) -+ httpd = ThreadedHTTPServer ((ip_addr, port), FileServHTTPRequestHandler) - except socket.error: - print >>sys.stderr, "cannot bind to IP address '%s' port %d" % (ip_addr, port) - sys.exit (1) -@@ -337,8 +338,7 @@ def serve_files (filename, maxdown = 1, - if ip_addr: - print "Now serving on http://%s:%s/" % (ip_addr, httpd.server_port) - -- while cpid != 0 and maxdownloads > 0: -- httpd.handle_request () -+ httpd.serve_forever () - - - -@@ -488,14 +488,6 @@ def main (): - - serve_files (filename, maxdown, ip_addr, port) - -- # wait for child processes to terminate -- if cpid != 0: -- try: -- while 1: -- os.wait () -- except OSError: -- pass -- - - - if __name__=='__main__': |