ports/89923: [maintainer] www/py-scgi: patch for 64 bit machines

Dryice Liu dryice at hotpop.com
Sun Dec 4 08:40:04 UTC 2005


>Number:         89923
>Category:       ports
>Synopsis:       [maintainer] www/py-scgi: patch for 64 bit machines
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Sun Dec 04 08:40:02 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Dryice Liu
>Release:        FreeBSD 6.0-STABLE i386
>Organization:
>Environment:
System: FreeBSD dryice.3322.org 6.0-STABLE FreeBSD 6.0-STABLE #0: Thu Dec 1 15:59:44 CST 2005


>Description:
	The original code use a char to hold pointer, which causes
	problem on 64 bit machines. This patch fixes it and will be
	included in the next up-stream release.

	Changes:
		- bump PORTRVISION
		- new file: files/patch-scgi-passfd.c
		
>How-To-Repeat:
	On a 64 bit machine, run the test_passfd.py comes with the
	official release and it will fail.
>Fix:

	

--- py-scgi.diff begins here ---
diff -ruN py-scgi.old/Makefile py-scgi/Makefile
--- py-scgi.old/Makefile	Sat Oct 22 03:31:14 2005
+++ py-scgi/Makefile	Sun Dec  4 16:04:34 2005
@@ -7,6 +7,7 @@
 
 PORTNAME=	scgi
 PORTVERSION=	1.8
+PORTRVISION=	1
 CATEGORIES=	www
 MASTER_SITES=	http://www.mems-exchange.org/software/files/scgi/ \
 		http://bsdchat.com/dist/dryice/
diff -ruN py-scgi.old/files/patch-scgi-passfd.c py-scgi/files/patch-scgi-passfd.c
--- py-scgi.old/files/patch-scgi-passfd.c	Thu Jan  1 08:00:00 1970
+++ py-scgi/files/patch-scgi-passfd.c	Sun Dec  4 15:52:18 2005
@@ -0,0 +1,29 @@
+--- scgi/passfd.c.orig	Sun Dec  4 15:49:02 2005
++++ scgi/passfd.c	Sun Dec  4 15:49:28 2005
+@@ -22,7 +22,7 @@
+ #include <stddef.h>
+ 
+ 
+-#define CONTROLLEN sizeof (struct cmsghdr) + sizeof (int)
++#define CONTROLLEN sizeof (struct cmsghdr) + sizeof (void*)
+ 
+ static int
+ recv_fd(int sockfd)
+@@ -31,7 +31,7 @@
+ 	struct cmsghdr *cmptr = (struct cmsghdr *) tmpbuf;
+ 	struct iovec iov[1];
+ 	struct msghdr msg;
+-	char buf[1];
++	void* buf[1];
+ 
+ 	iov[0].iov_base = buf;
+ 	iov[0].iov_len = sizeof (buf);
+@@ -56,7 +56,7 @@
+ 	struct cmsghdr *cmptr = (struct cmsghdr *) tmpbuf;
+         struct iovec iov[1];
+         struct msghdr msg;
+-        char buf[1];
++        void* buf[1];
+ 
+         iov[0].iov_base = buf;
+         iov[0].iov_len = 1;
--- py-scgi.diff ends here ---



>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list