From nobody@FreeBSD.org  Thu Oct 11 09:17:29 2012
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52])
	by hub.freebsd.org (Postfix) with ESMTP id 8C59567F
	for <freebsd-gnats-submit@FreeBSD.org>; Thu, 11 Oct 2012 09:17:29 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from red.freebsd.org (red.freebsd.org [IPv6:2001:4f8:fff6::22])
	by mx1.freebsd.org (Postfix) with ESMTP id 73E1A8FC0A
	for <freebsd-gnats-submit@FreeBSD.org>; Thu, 11 Oct 2012 09:17:29 +0000 (UTC)
Received: from red.freebsd.org (localhost [127.0.0.1])
	by red.freebsd.org (8.14.5/8.14.5) with ESMTP id q9B9HTSB006179
	for <freebsd-gnats-submit@FreeBSD.org>; Thu, 11 Oct 2012 09:17:29 GMT
	(envelope-from nobody@red.freebsd.org)
Received: (from nobody@localhost)
	by red.freebsd.org (8.14.5/8.14.5/Submit) id q9B9HSD1006178;
	Thu, 11 Oct 2012 09:17:28 GMT
	(envelope-from nobody)
Message-Id: <201210110917.q9B9HSD1006178@red.freebsd.org>
Date: Thu, 11 Oct 2012 09:17:28 GMT
From: Daniel Morante <daniel@morante.net>
To: freebsd-gnats-submit@FreeBSD.org
Subject: New port: net-p2p/pushpoold bitcoin push-mining pool server
X-Send-Pr-Version: www-3.1
X-GNATS-Notify:

>Number:         172595
>Category:       ports
>Synopsis:       New port: net-p2p/pushpoold bitcoin push-mining pool server
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu Oct 11 11:49:13 UTC 2012
>Closed-Date:    Mon Nov 18 15:56:27 UTC 2013
>Last-Modified:  Mon Nov 18 15:56:27 UTC 2013
>Originator:     Daniel Morante
>Release:        9.0
>Organization:
The Daniel Morante Company, Inc.
>Environment:
FreeBSD bitcoin.morante.com 9.0-RELEASE-p3 FreeBSD 9.0-RELEASE-p3 #0: Tue Jun 12 01:47:53 UTC 2012     root@i386-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC  i386

>Description:
New port: net-p2p/pushpoold bitcoin push-mining pool server

Pushpools is an open source mining pool server.  A mining pool server is an 
HTTP JSON-RPC proxy to backend bitcoind processes.

As described here: https://bitcointalk.org/index.php?topic=8707.0

This is my first attempt at making a port.
>How-To-Repeat:

>Fix:


Patch attached with submission follows:

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	pushpoold
#	pushpoold/Makefile
#	pushpoold/pkg-descr
#	pushpoold/pkg-plist
#	pushpoold/distinfo
#	pushpoold/files
#	pushpoold/files/patch-msg.c
#	pushpoold/files/patch-server.c
#	pushpoold/files/patch-util.c
#	pushpoold/files/patch-Makfile.am
#	pushpoold/files/example-blkmon.cfg
#	pushpoold/files/example-cfg.json
#	pushpoold/files/pushpool.in
#	pushpoold/files/pushpool.conf.sample
#	pushpoold/files/blkmon.conf.sample
#	pushpoold/files/pkg-message.in
#
echo c - pushpoold
mkdir -p pushpoold > /dev/null 2>&1
echo x - pushpoold/Makefile
sed 's/^X//' >pushpoold/Makefile << '5b840b30ce618fd7a2a45dff30aa07ce'
X# $FreeBSD$
X
XPORTNAME=	pushpoold
XPORTVERSION=	0.5.1
XCATEGORIES=	net-p2p
X
XMAINTAINER=	daniel@morante.net
XCOMMENT=	A bitcoin push-mining pool server
X
XBUILD_DEPENDS=	${LOCALBASE}/include/argp.h:${PORTSDIR}/devel/argp-standalone
XLIB_DEPENDS=	event-1:${PORTSDIR}/devel/libevent \
X		memcached:${PORTSDIR}/databases/libmemcached \
X		jansson:${PORTSDIR}/devel/jansson \
X		curl:${PORTSDIR}/ftp/curl
X
XUSE_GITHUB=	yes
XGH_ACCOUNT=	jgarzik
XGH_PROJECT=	pushpool
XGH_COMMIT=	4d959b8
XGH_TAGNAME=	v${PORTVERSION}
X
XUSE_AUTOTOOLS=	autoconf autoheader libtool automake aclocal
XACLOCAL_ARGS=	-I m4
XAUTOMAKE_ARGS=	--gnu --add-missing --copy
XUSE_PKGCONFIG=	yes
XUSE_OPENSSL=	yes
X
XCONFIGURE_ENV=	PTHREAD_CFLAGS="${PTHREAD_CFLAGS}" PTHREAD_LIBS="${PTHREAD_LIBS}"
XCFLAGS+=	-I${LOCALBASE}/include
XLDFLAGS+=	-L${LOCALBASE}/lib
X
XUSE_MYSQL=	yes
XUSE_RC_SUBR=	pushpool
XSUB_FILES=	pkg-message
X
Xpost-install:
X.if !defined(NOPORTEXAMPLES)
X	${MKDIR} ${EXAMPLESDIR}
X	${INSTALL_MAN} ${FILESDIR}/pushpool.conf.sample ${EXAMPLESDIR}
X	${INSTALL_MAN} ${FILESDIR}/blkmon.conf.sample ${EXAMPLESDIR}
X	${INSTALL_MAN} ${FILESDIR}/example-blkmon.cfg ${EXAMPLESDIR}
X	${INSTALL_MAN} ${FILESDIR}/example-cfg.json ${EXAMPLESDIR}
X.endif
X
X.include <bsd.port.mk>
5b840b30ce618fd7a2a45dff30aa07ce
echo x - pushpoold/pkg-descr
sed 's/^X//' >pushpoold/pkg-descr << '821777b5bcdb85ea48e5bd8e06f0587a'
XA bitcoin push-mining pool server.
X
XPushpools is an open source mining pool server.  A mining pool server is an 
XHTTP JSON-RPC proxy to backend bitcoind processes.
821777b5bcdb85ea48e5bd8e06f0587a
echo x - pushpoold/pkg-plist
sed 's/^X//' >pushpoold/pkg-plist << '9a6241c6be95f9eef1a62a86ac909974'
Xsbin/pushpoold
Xsbin/blkmond
X%%PORTEXAMPLES%%%%EXAMPLESDIR%%/blkmon.conf.sample
X%%PORTEXAMPLES%%%%EXAMPLESDIR%%/pushpool.conf.sample
X%%PORTEXAMPLES%%%%EXAMPLESDIR%%/example-blkmon.cfg
X%%PORTEXAMPLES%%%%EXAMPLESDIR%%/example-cfg.json
X%%PORTEXAMPLES%%@dirrm %%EXAMPLESDIR%%
9a6241c6be95f9eef1a62a86ac909974
echo x - pushpoold/distinfo
sed 's/^X//' >pushpoold/distinfo << '3b67fb5b21fb470eb0db0fd4890a0c5b'
XSHA256 (pushpoold-0.5.1.tar.gz) = 8692588700d82bb30f869234f9da23ef623a0a01613004577b1ef91c23b8e07d
XSIZE (pushpoold-0.5.1.tar.gz) = 48555
3b67fb5b21fb470eb0db0fd4890a0c5b
echo c - pushpoold/files
mkdir -p pushpoold/files > /dev/null 2>&1
echo x - pushpoold/files/patch-msg.c
sed 's/^X//' >pushpoold/files/patch-msg.c << 'c8196cd1ca9b8d8e89f382037c9e009c'
X--- msg.c	2011-06-27 13:57:30.000000000 -0400
X+++ msg.c	2012-10-10 03:00:47.000000000 -0400
X@@ -27,7 +27,11 @@
X #include <unistd.h>
X #include <string.h>
X #include <jansson.h>
X-#include <byteswap.h>
X+# define bswap_64 __bswap64 
X+# define bswap_32 __bswap32 
X+# define bswap_16 __bswap16 
X+# define __BIG_ENDIAN__ (_BYTE_ORDER == _BIG_ENDIAN)
X+#include <sys/endian.h>
X #include <openssl/sha.h>
X #include <syslog.h>
X #include "server.h"
c8196cd1ca9b8d8e89f382037c9e009c
echo x - pushpoold/files/patch-server.c
sed 's/^X//' >pushpoold/files/patch-server.c << '55cc764e3b9791d34dd406a70f67a10e'
X--- server.c	2011-06-27 13:57:30.000000000 -0400
X+++ server.c	2012-10-10 03:05:31.000000000 -0400
X@@ -38,7 +38,7 @@
X #include <zlib.h>
X #include <netdb.h>
X #include <stdarg.h>
X-#include <endian.h>
X+#include <sys/endian.h>
X #include <openssl/sha.h>
X #include <argp.h>
X #include "server.h"
55cc764e3b9791d34dd406a70f67a10e
echo x - pushpoold/files/patch-util.c
sed 's/^X//' >pushpoold/files/patch-util.c << 'd258bc9144ec8c92fce63bb0ef9dd329'
X--- util.c	2012-10-10 04:45:31.000000000 -0400
X+++ util.c	2012-10-10 04:42:23.000000000 -0400
X@@ -26,7 +26,6 @@
X #include <stdlib.h>
X #include <stdio.h>
X #include <syslog.h>
X-#include <alloca.h>
X #include <errno.h>
X #include <unistd.h>
X #include <string.h>
d258bc9144ec8c92fce63bb0ef9dd329
echo x - pushpoold/files/patch-Makfile.am
sed 's/^X//' >pushpoold/files/patch-Makfile.am << 'abd9ac4db2ed593820f9a94384ef7a09'
X--- Makefile.am	2011-06-27 13:57:30.000000000 -0400
X+++ Makefile.am	2012-10-11 01:08:13.000000000 -0400
X@@ -13,4 +13,4 @@
X pushpoold_LDFLAGS = $(PTHREAD_FLAGS)
X pushpoold_LDADD	= @LIBCURL@ @EVENT_LIBS@ @PTHREAD_LIBS@ @JANSSON_LIBS@ \
X 		  @CRYPTO_LIBS@ @Z_LIBS@ @LIBMEMCACHED_LIBS@ \
X-		  @SQLITE3_LDFLAGS@ @MYSQL_LDFLAGS@ @POSTGRESQL_LDFLAGS@
X+		  @SQLITE3_LDFLAGS@ @MYSQL_LDFLAGS@ @POSTGRESQL_LDFLAGS@ -largp
abd9ac4db2ed593820f9a94384ef7a09
echo x - pushpoold/files/example-blkmon.cfg
sed 's/^X//' >pushpoold/files/example-blkmon.cfg << 'e88776b2810429919b9eec455a4d2063'
Xhost=127.0.0.1
Xport=8333
Xpid=/tmp/pushpoold.pid
X
e88776b2810429919b9eec455a4d2063
echo x - pushpoold/files/example-cfg.json
sed 's/^X//' >pushpoold/files/example-cfg.json << 'dfe0ac53fdb9af698e374ba762d52eef'
X{
X	# network ports
X	"listen" : [
X		# binary protocol (default), port 8336
X		{ "port" : 8336 },
X
X		# HTTP JSON-RPC protocol, port 8337
X		{ "port" : 8337, "protocol" : "http-json" },
X
X		# HTTP JSON-RPC protocol, port 8339,
X		# with trusted proxy appserver.example.com forwarding
X		# requests to us
X		{ "port" : 8337, "protocol" : "http-json",
X		  "proxy" : "appserver.example.com" },
X
X		# binary protocol, localhost-only port 8338
X		{ "host" : "127.0.0.1", "port" : 8338, "protocol" : "binary" }
X	],
X
X	# database settings
X	"database" : {
X		"engine" : "sqlite3",
X		"name" : "/tmp/data.sqlite",
X		"stmt.pwdb" :
X		  "SELECT password FROM pool_worker WHERE username = ?"
X
X		# ... or ...
X
X		"engine" : "mysql",
X
X		# 'host' defaults to localhost, if not specified
X		"host" : "mysql.example.com",
X
X		# 'port' uses proper default port for the DB engine,
X		# if not specified
X		"port" : 12121,
X
X		"name" : "mydatabasename",
X		"username" : "myuser",
X		"password" : "mypass",
X
X		"stmt.pwdb" :
X		  "SELECT password FROM pool_worker WHERE username = ?"
X
X		# ... or ...
X
X		"engine" : "postgresql",
X
X		"host" : "db.example.com",
X
X		"port" : 12121,
X
X		"name" : "mydatabasename",
X		"username" : "myuser",
X		"password" : "mypass",
X
X		"stmt.pwdb" :
X		  "SELECT password FROM pool_worker WHERE username = $1"
X	},
X
X	# cache settings
X	"memcached" : {
X		"servers" : [
X			{ "host" : "127.0.0.1", "port" : 11211 }
X		]
X	},
X
X	"pid" : "/tmp/pushpoold.pid",
X
X	# overrides local hostname detection
X	"forcehost" : "localhost.localdomain",
X
X	"log.requests" : "/tmp/request.log",
X	"log.shares" : "/tmp/shares.log",
X
X	# the server assumes longpolling (w/ SIGUSR1 called for each blk)
X	"longpoll.disable" : false,
X
X	# length of time to cache username/password credentials, in seconds
X	"auth.cred_cache.expire" : 75,
X
X	# RPC settings
X	"rpc.url" : "http://127.0.0.1:8332/",
X	"rpc.user" : "myusername",
X	"rpc.pass" : "mypassword",
X
X	# rewrite returned 'target' to difficulty-1?
X	"rpc.target.rewrite" : true,
X
X	# allow clients to update the ntime field of their work
X	"roll.ntime.disable" : false
X}
dfe0ac53fdb9af698e374ba762d52eef
echo x - pushpoold/files/pushpool.in
sed 's/^X//' >pushpoold/files/pushpool.in << '71430ad33ae8ef8626278882670d58d2'
X#!/bin/sh
X
X# $FreeBSD$
X#
X# PROVIDE: pushpool
X# REQUIRE: LOGIN bitcoin
X# KEYWORD: shutdown
X#
X# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
X# to enable this service:
X#
X# pushpool_enable (bool):	Set to NO by default.
X#				Set it to YES to enable pushpool.
X# pushpool_config (path):	Set to %%PREFIX%%/etc/pushpool.conf
X#				by default.
X
X. /etc/rc.subr
X
Xname=pushpool
Xrcvar=`set_rcvar`
X
Xload_rc_config $name
X
X: ${pushpool_enable:="NO"}
X: ${pushpool_config="%%PREFIX%%/etc/pushpool.conf"}
X
Xcommand=%%PREFIX%%/sbin/pushpoold
Xpidfile="/var/run/${name}.pid"
X
Xcommand_args="--config=$pushpool_config --pid=$pidfile"
X
Xrun_rc_command "$1"
71430ad33ae8ef8626278882670d58d2
echo x - pushpoold/files/pushpool.conf.sample
sed 's/^X//' >pushpoold/files/pushpool.conf.sample << 'e423f15c11975b07f447367618c19e7d'
X{
X	# network ports
X	"listen" : [
X		# binary protocol (default), port 8342
X		{ "port" : 8342 },
X
X		# HTTP JSON-RPC protocol, port 8341
X		{ "port" : 8341, "protocol" : "http-json" },
X
X		# HTTP JSON-RPC protocol, port 8344,
X		# with trusted proxy appserver.example.com forwarding
X		# requests to us
X		{ "port" : 8344, "protocol" : "http-json",
X		  "proxy" : "127.0.0.1" },
X
X		# binary protocol, localhost-only port 8338
X		{ "host" : "127.0.0.1", "port" : 8338, "protocol" : "binary" }
X	],
X
X	# database settings
X	"database" : {
X		"engine" : "mysql",
X		"host" : "localhost",
X		"port" : 3306,
X		"name" : "pushpoold",
X		"username" : "pushpoold",
X		"password" : "pushpoold12345",
X		"sharelog" : true,
X		"stmt.pwdb":"SELECT `password` FROM `pool_worker` WHERE `username` = ?",
X		"stmt.sharelog":"INSERT INTO shares (rem_host, username, our_result, upstream_result, reason, solution) VALUES (?, ?, ?, ?, ?, ?)"
X
X	},
X
X	# cache settings
X	"memcached" : {
X		"servers" : [
X			{ "host" : "localhost", "port" : 11211 }
X		]
X	},
X
X	#"pid" : "/var/run/pushpool.pid",
X
X	# overrides local hostname detection
X	"forcehost" : "localhost.localdomain",
X
X	"log.requests" : "/var/log/pushpool-request.log",
X	"log.shares" : "/var/log/pushpool-shares.log",
X
X	# the server assumes longpolling (w/ SIGUSR1 called for each blk)
X	"longpoll.disable" : false,
X
X	# length of time to cache username/password credentials, in seconds
X	"auth.cred_cache.expire" : 75,
X
X	# RPC settings | Notice how this ISN'T port number 8332 this is becuase the same port number should not becuase inconjunction with the JSON RPC port other wise you'll get 500 errors
X	"rpc.url" : "http://127.0.0.1:8333/",
X	"rpc.user" : "admin",
X	"rpc.pass" : "1234567890",
X
X	# rewrite returned 'target' to difficulty-1?
X	"rpc.target.rewrite" : true
X}
e423f15c11975b07f447367618c19e7d
echo x - pushpoold/files/blkmon.conf.sample
sed 's/^X//' >pushpoold/files/blkmon.conf.sample << 'bdf8758ddd6afde69afb73e67ec44841'
Xhost=127.0.0.1
Xport=8333
Xpid=/var/run/pushpool.pid
X
bdf8758ddd6afde69afb73e67ec44841
echo x - pushpoold/files/pkg-message.in
sed 's/^X//' >pushpoold/files/pkg-message.in << '2fc28ea9e111215c14bbea6a8d0a1c6b'
X*******************************************************************
XTo configure pushpoold, please copy: 
X%%PORTEXAMPLES%%%%EXAMPLESDIR%%/pushpool.conf.sample to %%PREFIX%%/etc/pushpool.conf
Xand edit this file:
X
Xcp %%PORTEXAMPLES%%%%EXAMPLESDIR%%/pushpool.conf.sample %%PREFIX%%/etc/pushpool.conf
X
XTo run the pushpoold server at startup, add the following
Xsettings to your /etc/rc.conf
X
Xpushpool_enable="YES"
X
X*******************************************************************
2fc28ea9e111215c14bbea6a8d0a1c6b
exit



>Release-Note:
>Audit-Trail:

From: Daniel Morante <daniel@morante.net>
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/172595: New port: net-p2p/pushpoold bitcoin push-mining
 pool server
Date: Thu, 11 Oct 2012 08:39:14 -0400

 This is a multi-part message in MIME format.
 --------------010400050505050505050401
 Content-Type: text/plain; charset=ISO-8859-1; format=flowed
 Content-Transfer-Encoding: 7bit
 
 Added in USE_PYTHON to Makefile.
 
 --------------010400050505050505050401
 Content-Type: text/plain; charset=windows-1252;
  name="pushpoold.shar"
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment;
  filename="pushpoold.shar"
 
 # This is a shell archive.  Save it in a file, remove anything before
 # this line, and then unpack it by entering "sh file".  Note, it may
 # create directories; files and directories will be owned by you and
 # have default permissions.
 #
 # This archive contains:
 #
 #	pushpoold
 #	pushpoold/Makefile
 #	pushpoold/pkg-descr
 #	pushpoold/pkg-plist
 #	pushpoold/distinfo
 #	pushpoold/files
 #	pushpoold/files/patch-msg.c
 #	pushpoold/files/patch-server.c
 #	pushpoold/files/patch-util.c
 #	pushpoold/files/patch-Makfile.am
 #	pushpoold/files/example-blkmon.cfg
 #	pushpoold/files/example-cfg.json
 #	pushpoold/files/pushpool.in
 #	pushpoold/files/pushpool.conf.sample
 #	pushpoold/files/blkmon.conf.sample
 #	pushpoold/files/pkg-message.in
 #
 echo c - pushpoold
 mkdir -p pushpoold > /dev/null 2>&1
 echo x - pushpoold/Makefile
 sed 's/^X//' >pushpoold/Makefile << '5b840b30ce618fd7a2a45dff30aa07ce'
 X# $FreeBSD$
 X
 XPORTNAME=	pushpoold
 XPORTVERSION=	0.5.1
 XCATEGORIES=	net-p2p
 X
 XMAINTAINER=	daniel@morante.net
 XCOMMENT=	A bitcoin push-mining pool server
 X
 XBUILD_DEPENDS=	${LOCALBASE}/include/argp.h:${PORTSDIR}/devel/argp-standalone
 XLIB_DEPENDS=	event-1:${PORTSDIR}/devel/libevent \
 X		memcached:${PORTSDIR}/databases/libmemcached \
 X		jansson:${PORTSDIR}/devel/jansson \
 X		curl:${PORTSDIR}/ftp/curl
 X
 XUSE_GITHUB=	yes
 XGH_ACCOUNT=	jgarzik
 XGH_PROJECT=	pushpool
 XGH_COMMIT=	4d959b8
 XGH_TAGNAME=	v${PORTVERSION}
 X
 XUSE_AUTOTOOLS=	autoconf autoheader libtool automake aclocal
 XACLOCAL_ARGS=	-I m4
 XAUTOMAKE_ARGS=	--gnu --add-missing --copy
 XUSE_PKGCONFIG=	yes
 XUSE_OPENSSL=	yes
 X
 XCONFIGURE_ENV=	PTHREAD_CFLAGS="${PTHREAD_CFLAGS}" PTHREAD_LIBS="${PTHREAD_LIBS}"
 XCFLAGS+=	-I${LOCALBASE}/include
 XLDFLAGS+=	-L${LOCALBASE}/lib
 X
 XUSE_MYSQL=	yes
 XUSE_PYTHON=	yes
 XUSE_RC_SUBR=	pushpool
 XSUB_FILES=	pkg-message
 X
 Xpost-install:
 X.if !defined(NOPORTEXAMPLES)
 X	${MKDIR} ${EXAMPLESDIR}
 X	${INSTALL_MAN} ${FILESDIR}/pushpool.conf.sample ${EXAMPLESDIR}
 X	${INSTALL_MAN} ${FILESDIR}/blkmon.conf.sample ${EXAMPLESDIR}
 X	${INSTALL_MAN} ${FILESDIR}/example-blkmon.cfg ${EXAMPLESDIR}
 X	${INSTALL_MAN} ${FILESDIR}/example-cfg.json ${EXAMPLESDIR}
 X.endif
 X
 X.include <bsd.port.mk>
 5b840b30ce618fd7a2a45dff30aa07ce
 echo x - pushpoold/pkg-descr
 sed 's/^X//' >pushpoold/pkg-descr << '821777b5bcdb85ea48e5bd8e06f0587a'
 XA bitcoin push-mining pool server.
 X
 XPushpools is an open source mining pool server.  A mining pool server is an 
 XHTTP JSON-RPC proxy to backend bitcoind processes.
 821777b5bcdb85ea48e5bd8e06f0587a
 echo x - pushpoold/pkg-plist
 sed 's/^X//' >pushpoold/pkg-plist << '9a6241c6be95f9eef1a62a86ac909974'
 Xsbin/pushpoold
 Xsbin/blkmond
 X%%PORTEXAMPLES%%%%EXAMPLESDIR%%/blkmon.conf.sample
 X%%PORTEXAMPLES%%%%EXAMPLESDIR%%/pushpool.conf.sample
 X%%PORTEXAMPLES%%%%EXAMPLESDIR%%/example-blkmon.cfg
 X%%PORTEXAMPLES%%%%EXAMPLESDIR%%/example-cfg.json
 X%%PORTEXAMPLES%%@dirrm %%EXAMPLESDIR%%
 9a6241c6be95f9eef1a62a86ac909974
 echo x - pushpoold/distinfo
 sed 's/^X//' >pushpoold/distinfo << '3b67fb5b21fb470eb0db0fd4890a0c5b'
 XSHA256 (pushpoold-0.5.1.tar.gz) = 8692588700d82bb30f869234f9da23ef623a0a01613004577b1ef91c23b8e07d
 XSIZE (pushpoold-0.5.1.tar.gz) = 48555
 3b67fb5b21fb470eb0db0fd4890a0c5b
 echo c - pushpoold/files
 mkdir -p pushpoold/files > /dev/null 2>&1
 echo x - pushpoold/files/patch-msg.c
 sed 's/^X//' >pushpoold/files/patch-msg.c << 'c8196cd1ca9b8d8e89f382037c9e009c'
 X--- msg.c	2011-06-27 13:57:30.000000000 -0400
 X+++ msg.c	2012-10-10 03:00:47.000000000 -0400
 X@@ -27,7 +27,11 @@
 X #include <unistd.h>
 X #include <string.h>
 X #include <jansson.h>
 X-#include <byteswap.h>
 X+# define bswap_64 __bswap64 
 X+# define bswap_32 __bswap32 
 X+# define bswap_16 __bswap16 
 X+# define __BIG_ENDIAN__ (_BYTE_ORDER == _BIG_ENDIAN)
 X+#include <sys/endian.h>
 X #include <openssl/sha.h>
 X #include <syslog.h>
 X #include "server.h"
 c8196cd1ca9b8d8e89f382037c9e009c
 echo x - pushpoold/files/patch-server.c
 sed 's/^X//' >pushpoold/files/patch-server.c << '55cc764e3b9791d34dd406a70f67a10e'
 X--- server.c	2011-06-27 13:57:30.000000000 -0400
 X+++ server.c	2012-10-10 03:05:31.000000000 -0400
 X@@ -38,7 +38,7 @@
 X #include <zlib.h>
 X #include <netdb.h>
 X #include <stdarg.h>
 X-#include <endian.h>
 X+#include <sys/endian.h>
 X #include <openssl/sha.h>
 X #include <argp.h>
 X #include "server.h"
 55cc764e3b9791d34dd406a70f67a10e
 echo x - pushpoold/files/patch-util.c
 sed 's/^X//' >pushpoold/files/patch-util.c << 'd258bc9144ec8c92fce63bb0ef9dd329'
 X--- util.c	2012-10-10 04:45:31.000000000 -0400
 X+++ util.c	2012-10-10 04:42:23.000000000 -0400
 X@@ -26,7 +26,6 @@
 X #include <stdlib.h>
 X #include <stdio.h>
 X #include <syslog.h>
 X-#include <alloca.h>
 X #include <errno.h>
 X #include <unistd.h>
 X #include <string.h>
 d258bc9144ec8c92fce63bb0ef9dd329
 echo x - pushpoold/files/patch-Makfile.am
 sed 's/^X//' >pushpoold/files/patch-Makfile.am << 'abd9ac4db2ed593820f9a94384ef7a09'
 X--- Makefile.am	2011-06-27 13:57:30.000000000 -0400
 X+++ Makefile.am	2012-10-11 01:08:13.000000000 -0400
 X@@ -13,4 +13,4 @@
 X pushpoold_LDFLAGS = $(PTHREAD_FLAGS)
 X pushpoold_LDADD	= @LIBCURL@ @EVENT_LIBS@ @PTHREAD_LIBS@ @JANSSON_LIBS@ \
 X 		  @CRYPTO_LIBS@ @Z_LIBS@ @LIBMEMCACHED_LIBS@ \
 X-		  @SQLITE3_LDFLAGS@ @MYSQL_LDFLAGS@ @POSTGRESQL_LDFLAGS@
 X+		  @SQLITE3_LDFLAGS@ @MYSQL_LDFLAGS@ @POSTGRESQL_LDFLAGS@ -largp
 abd9ac4db2ed593820f9a94384ef7a09
 echo x - pushpoold/files/example-blkmon.cfg
 sed 's/^X//' >pushpoold/files/example-blkmon.cfg << 'e88776b2810429919b9eec455a4d2063'
 Xhost=127.0.0.1
 Xport=8333
 Xpid=/tmp/pushpoold.pid
 X
 e88776b2810429919b9eec455a4d2063
 echo x - pushpoold/files/example-cfg.json
 sed 's/^X//' >pushpoold/files/example-cfg.json << 'dfe0ac53fdb9af698e374ba762d52eef'
 X{
 X	# network ports
 X	"listen" : [
 X		# binary protocol (default), port 8336
 X		{ "port" : 8336 },
 X
 X		# HTTP JSON-RPC protocol, port 8337
 X		{ "port" : 8337, "protocol" : "http-json" },
 X
 X		# HTTP JSON-RPC protocol, port 8339,
 X		# with trusted proxy appserver.example.com forwarding
 X		# requests to us
 X		{ "port" : 8337, "protocol" : "http-json",
 X		  "proxy" : "appserver.example.com" },
 X
 X		# binary protocol, localhost-only port 8338
 X		{ "host" : "127.0.0.1", "port" : 8338, "protocol" : "binary" }
 X	],
 X
 X	# database settings
 X	"database" : {
 X		"engine" : "sqlite3",
 X		"name" : "/tmp/data.sqlite",
 X		"stmt.pwdb" :
 X		  "SELECT password FROM pool_worker WHERE username = ?"
 X
 X		# ... or ...
 X
 X		"engine" : "mysql",
 X
 X		# 'host' defaults to localhost, if not specified
 X		"host" : "mysql.example.com",
 X
 X		# 'port' uses proper default port for the DB engine,
 X		# if not specified
 X		"port" : 12121,
 X
 X		"name" : "mydatabasename",
 X		"username" : "myuser",
 X		"password" : "mypass",
 X
 X		"stmt.pwdb" :
 X		  "SELECT password FROM pool_worker WHERE username = ?"
 X
 X		# ... or ...
 X
 X		"engine" : "postgresql",
 X
 X		"host" : "db.example.com",
 X
 X		"port" : 12121,
 X
 X		"name" : "mydatabasename",
 X		"username" : "myuser",
 X		"password" : "mypass",
 X
 X		"stmt.pwdb" :
 X		  "SELECT password FROM pool_worker WHERE username = $1"
 X	},
 X
 X	# cache settings
 X	"memcached" : {
 X		"servers" : [
 X			{ "host" : "127.0.0.1", "port" : 11211 }
 X		]
 X	},
 X
 X	"pid" : "/tmp/pushpoold.pid",
 X
 X	# overrides local hostname detection
 X	"forcehost" : "localhost.localdomain",
 X
 X	"log.requests" : "/tmp/request.log",
 X	"log.shares" : "/tmp/shares.log",
 X
 X	# the server assumes longpolling (w/ SIGUSR1 called for each blk)
 X	"longpoll.disable" : false,
 X
 X	# length of time to cache username/password credentials, in seconds
 X	"auth.cred_cache.expire" : 75,
 X
 X	# RPC settings
 X	"rpc.url" : "http://127.0.0.1:8332/",
 X	"rpc.user" : "myusername",
 X	"rpc.pass" : "mypassword",
 X
 X	# rewrite returned 'target' to difficulty-1?
 X	"rpc.target.rewrite" : true,
 X
 X	# allow clients to update the ntime field of their work
 X	"roll.ntime.disable" : false
 X}
 dfe0ac53fdb9af698e374ba762d52eef
 echo x - pushpoold/files/pushpool.in
 sed 's/^X//' >pushpoold/files/pushpool.in << '71430ad33ae8ef8626278882670d58d2'
 X#!/bin/sh
 X
 X# $FreeBSD$
 X#
 X# PROVIDE: pushpool
 X# REQUIRE: LOGIN bitcoin
 X# KEYWORD: shutdown
 X#
 X# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
 X# to enable this service:
 X#
 X# pushpool_enable (bool):	Set to NO by default.
 X#				Set it to YES to enable pushpool.
 X# pushpool_config (path):	Set to %%PREFIX%%/etc/pushpool.conf
 X#				by default.
 X
 X. /etc/rc.subr
 X
 Xname=pushpool
 Xrcvar=`set_rcvar`
 X
 Xload_rc_config $name
 X
 X: ${pushpool_enable:="NO"}
 X: ${pushpool_config="%%PREFIX%%/etc/pushpool.conf"}
 X
 Xcommand=%%PREFIX%%/sbin/pushpoold
 Xpidfile="/var/run/${name}.pid"
 X
 Xcommand_args="--config=$pushpool_config --pid=$pidfile"
 X
 Xrun_rc_command "$1"
 71430ad33ae8ef8626278882670d58d2
 echo x - pushpoold/files/pushpool.conf.sample
 sed 's/^X//' >pushpoold/files/pushpool.conf.sample << 'e423f15c11975b07f447367618c19e7d'
 X{
 X	# network ports
 X	"listen" : [
 X		# binary protocol (default), port 8342
 X		{ "port" : 8342 },
 X
 X		# HTTP JSON-RPC protocol, port 8341
 X		{ "port" : 8341, "protocol" : "http-json" },
 X
 X		# HTTP JSON-RPC protocol, port 8344,
 X		# with trusted proxy appserver.example.com forwarding
 X		# requests to us
 X		{ "port" : 8344, "protocol" : "http-json",
 X		  "proxy" : "127.0.0.1" },
 X
 X		# binary protocol, localhost-only port 8338
 X		{ "host" : "127.0.0.1", "port" : 8338, "protocol" : "binary" }
 X	],
 X
 X	# database settings
 X	"database" : {
 X		"engine" : "mysql",
 X		"host" : "localhost",
 X		"port" : 3306,
 X		"name" : "pushpoold",
 X		"username" : "pushpoold",
 X		"password" : "pushpoold12345",
 X		"sharelog" : true,
 X		"stmt.pwdb":"SELECT `password` FROM `pool_worker` WHERE `username` = ?",
 X		"stmt.sharelog":"INSERT INTO shares (rem_host, username, our_result, upstream_result, reason, solution) VALUES (?, ?, ?, ?, ?, ?)"
 X
 X	},
 X
 X	# cache settings
 X	"memcached" : {
 X		"servers" : [
 X			{ "host" : "localhost", "port" : 11211 }
 X		]
 X	},
 X
 X	#"pid" : "/var/run/pushpool.pid",
 X
 X	# overrides local hostname detection
 X	"forcehost" : "localhost.localdomain",
 X
 X	"log.requests" : "/var/log/pushpool-request.log",
 X	"log.shares" : "/var/log/pushpool-shares.log",
 X
 X	# the server assumes longpolling (w/ SIGUSR1 called for each blk)
 X	"longpoll.disable" : false,
 X
 X	# length of time to cache username/password credentials, in seconds
 X	"auth.cred_cache.expire" : 75,
 X
 X	# RPC settings | Notice how this ISN'T port number 8332 this is becuase the same port number should not becuase inconjunction with the JSON RPC port other wise you'll get 500 errors
 X	"rpc.url" : "http://127.0.0.1:8333/",
 X	"rpc.user" : "admin",
 X	"rpc.pass" : "1234567890",
 X
 X	# rewrite returned 'target' to difficulty-1?
 X	"rpc.target.rewrite" : true
 X}
 e423f15c11975b07f447367618c19e7d
 echo x - pushpoold/files/blkmon.conf.sample
 sed 's/^X//' >pushpoold/files/blkmon.conf.sample << 'bdf8758ddd6afde69afb73e67ec44841'
 Xhost=127.0.0.1
 Xport=8333
 Xpid=/var/run/pushpool.pid
 X
 bdf8758ddd6afde69afb73e67ec44841
 echo x - pushpoold/files/pkg-message.in
 sed 's/^X//' >pushpoold/files/pkg-message.in << '2fc28ea9e111215c14bbea6a8d0a1c6b'
 X*******************************************************************
 XTo configure pushpoold, please copy: 
 X%%PORTEXAMPLES%%%%EXAMPLESDIR%%/pushpool.conf.sample to %%PREFIX%%/etc/pushpool.conf
 Xand edit this file:
 X
 Xcp %%PORTEXAMPLES%%%%EXAMPLESDIR%%/pushpool.conf.sample %%PREFIX%%/etc/pushpool.conf
 X
 XTo run the pushpoold server at startup, add the following
 Xsettings to your /etc/rc.conf
 X
 Xpushpool_enable="YES"
 X
 X*******************************************************************
 2fc28ea9e111215c14bbea6a8d0a1c6b
 exit
 
 
 --------------010400050505050505050401--
State-Changed-From-To: open->feedback 
State-Changed-By: pawel 
State-Changed-When: Sat Jan 5 15:55:40 UTC 2013 
State-Changed-Why:  
Thank you for your submission, during test I have found some things that 
need to be addressed: 

1) On my system some dependencies are not recorded in Makefile: 

[corn:ports/net-p2p/pushpoold]# pkg-lib-check pushpoold ERR:  not 
registered missing dependency databases/sqlite3 ERR:  not registered 
missing dependency devel/argp-standalone WARN: not registered implicit 
dependency devel/libexecinfo 

2) I think that pushpool.conf.sample should be unconditionally 
installed in ${PREFIX}/etc/ and if user edition is not required 
copied to ${PREFIX}/etc/pushpool.conf - this is how most ports 
behave. Technicalities are described here: 

http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/plist-config.html 

3) files/blkmon.conf.sample and files/example-blkmon.cfg files are 
almost copies of files in ${WRKSRC}. I think better idea is to modify 
(by REINPLACE_CMD? ) files from distfile and then install them - 
keeping them in files seems wasteful. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=172595 
State-Changed-From-To: feedback->closed 
State-Changed-By: jadawin 
State-Changed-When: Mon Nov 18 15:56:26 UTC 2013 
State-Changed-Why:  
No feedback since 5 Jan 2013. Please submit a new PR if needed. Thanks! 

http://www.freebsd.org/cgi/query-pr.cgi?pr=172595 
>Unformatted:
