Hey, I'm having a small issue with pushpool.
Here is my readout:
~/pushpool# pushpoold -E -F -D 2
[2012-09-26 18:03:30.311169] Debug output enabled
[2012-09-26 18:03:30.312361] Forcing local hostname to xxx.xxx.xxx.xxx
[2012-09-26 18:03:30.320688] Listening on host :: port 8342
[2012-09-26 18:03:30.320985] Listening on host :: port 8351
[2012-09-26 18:03:30.321187] Listening on host :: port 8344
[2012-09-26 18:03:30.321297] Listening on host 127.0.0.1 port 8338
[2012-09-26 18:03:30.326450] initialized
When I connect, it does this:
JSON protocol request:
{"method": "getwork", "params": [], "id":1}
* About to connect() to 127.0.0.1 port 8333 (#0)
* Trying 127.0.0.1... * TCP_NODELAY set
* connected
* Server auth using Basic with user 'username'
> POST / HTTP/1.1
Authorization: Basic blahblahblahblahblahblahblah==
Host: 127.0.0.1:8333
Accept: */*
Accept-Encoding: deflate, gzip
Content-type: application/json
Content-Length: 45
* Empty reply from server
* Connection #0 to host 127.0.0.1 left intact
Any suggestions?
Here is my server.json and bitcoin.conf
server.json:
{
# network ports
"listen" : [
# binary protocol (default), port 8342
{ "port" : 8342 },
# HTTP JSON-RPC protocol, port 8351
{ "port" : 8351, "protocol" : "http-json" },
# HTTP JSON-RPC protocol, port 8344,
# with trusted proxy appserver.example.com forwarding
# requests to us
{ "port" : 8344, "protocol" : "http-json",
"proxy" : "127.0.0.1" },
# binary protocol, localhost-only port 8338
{ "host" : "127.0.0.1", "port" : 8338, "protocol" : "binary" }
],
# database settings
"database" : {
"engine" : "mysql",
"host" : "localhost",
"port" : 3306,
"name" : "DATABASENAME",
"username" : "USERNAME",
"password" : "PASSWORD",
"sharelog" : true,
"stmt.pwdb":"SELECT `password` FROM `pool_worker` WHERE `username` = ?",
"stmt.sharelog":"INSERT INTO shares (rem_host, username, our_result, upstream_result, reason, solution) VALUES (?, ?, ?, ?, ?, ?)"
},
# cache settings
"memcached" : {
"servers" : [
{ "host" : "127.0.0.1", "port" : 11211 }
]
},
"pid" : "/tmp/pushpoold.pid",
# overrides local hostname detection
"forcehost" : "xxx.xxx.xxx.xxx",
"log.requests" : "/tmp/request.log",
"log.shares" : "/tmp/shares.log",
# the server assumes longpolling (w/ SIGUSR1 called for each blk)
"longpoll.disable" : false,
# length of time to cache username/password credentials, in seconds
"auth.cred_cache.expire" : 75,
# 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
"rpc.url" : "http://127.0.0.1:8333/",
"rpc.user" : "MyUserName",
"rpc.pass" : "MyPasswordWasHere",
# rewrite returned 'target' to difficulty-1?
"rpc.target.rewrite" : true
}
My Bitcoin.conf file:
# bitcoin.conf configuration file. Lines beginning with # are comments.
# Network-related settings:
# Run on the test network instead of the real bitcoin network.
#testnet=0
# Connect via a socks4 proxy
#proxy=127.0.0.1:9050
##############################################################
## Quick Primer on addnode vs connect ##
## Let's say for instance you use addnode=4.2.2.4 ##
## addnode will connect you to and tell you about the ##
## nodes connected to 4.2.2.4. In addition it will tell ##
## the other nodes connected to it that you exist so ##
## they can connect to you. ##
## connect will not do the above when you 'connect' to it. ##
## It will *only* connect you to 4.2.2.4 and no one else.##
## ##
## So if you're behind a firewall, or have other problems ##
## finding nodes, add some using 'addnode'. ##
## ##
## If you want to stay private, use 'connect' to only ##
## connect to "trusted" nodes. ##
## ##
## If you run multiple nodes on a LAN, there's no need for ##
## all of them to open lots of connections. Instead ##
## 'connect' them all to one node that is port forwarded ##
## and has lots of connections. ##
## Thanks goes to [Noodle] on Freenode. ##
##############################################################
# Use as many addnode= settings as you like to connect to specific peers
#addnode=69.164.218.197
#addnode=10.0.0.2:8333
# ... or use as many connect= settings as you like to connect ONLY
# to specific peers:
#connect=69.164.218.197
#connect=10.0.0.1:8333
# Do not use Internet Relay Chat (irc.lfnet.org #bitcoin channel) to
# find other peers.
#noirc=0
# Maximum number of inbound+outbound connections.
#maxconnections=
# JSON-RPC options (for controlling a running Bitcoin/bitcoind process)
# server=1 tells Bitcoin-QT to accept JSON-RPC commands.
server=1
# You must set rpcuser and rpcpassword to secure the JSON-RPC api
rpcuser=USERNAME
rpcpassword=PASSWORD
# How many seconds bitcoin will wait for a complete RPC HTTP request.
# after the HTTP connection is established.
rpctimeout=30
# By default, only RPC connections from localhost are allowed. Specify
# as many rpcallowip= settings as you like to allow connections from
# other hosts (and you may use * as a wildcard character):
rpcallowip=*
# Listen for RPC connections on this TCP port:
rpcport=8332
# You can use Bitcoin or bitcoind to send commands to Bitcoin/bitcoind
# running on another host using this option:
rpcconnect=xxx.xxx.xxx.xxx
# Use Secure Sockets Layer (also known as TLS or HTTPS) to communicate
# with Bitcoin -server or bitcoind
#rpcssl=1
# OpenSSL settings used when rpcssl=1
#rpcsslciphers=TLSv1+HIGH:!SSLv2:!aNULL:!eNULL:!AH:!3DES:@STRENGTH
#rpcsslcertificatechainfile=server.cert
#rpcsslprivatekeyfile=server.pem
# Miscellaneous options
# Set gen=1 to attempt to generate bitcoins
#gen=0
# Use SSE instructions to try to generate bitcoins faster.
#4way=1
# Pre-generate this many public/private key pairs, so wallet backups will be valid for
# both prior transactions and several dozen future transactions.
#keypool=100
# Pay an optional transaction fee every time you send bitcoins. Transactions with fees
# are more likely than free transactions to be included in generated blocks, so may
# be validated sooner.
#paytxfee=0.00
# Allow direct connections for the 'pay via IP address' feature.
#allowreceivebyip=1
# User interface options
# Start Bitcoin minimized
#min=1
# Minimize to the system tray
#minimizetotray=1