Bitcoin Forum
April 18, 2024, 02:30:51 AM *
News: Latest Bitcoin Core release: 26.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 3 4 5 6 7 8 [9] 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 »
  Print  
Author Topic: New stratum/getwork proxy with Web-based GUI and pools management  (Read 120832 times)
cayars
Full Member
***
Offline Offline

Activity: 168
Merit: 100


View Profile
July 31, 2014, 12:51:42 PM
Last edit: July 31, 2014, 01:03:42 PM by cayars
 #161

If you want to offer me a beer to help me improve the proxy, you are welcome. Grin Here is my donation address:    19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi

Get CryptoNight working and I'll buy you a can of beer.  This size:


I'll even throw in some of these to help with the hang-over:

 Grin

Carlo

PS I know you really don't want to support CN coins but I don't think it will really be that much trouble.  I've integrated CN into ccminer/nvminer and the changes needed were pretty trivial.
If memory serves me correctly it was just supporting JSON2 and an authentication issue.  Other then that I don't really remember any other changes needed. At least for integration into something like cpuminer/ccminer.

PS Shipping not included, so you'll have to pickup locally with BTC sent to your address. LOL

Can't blame a guy for trying.
1713407451
Hero Member
*
Offline Offline

Posts: 1713407451

View Profile Personal Message (Offline)

Ignore
1713407451
Reply with quote  #2

1713407451
Report to moderator
The grue lurks in the darkest places of the earth. Its favorite diet is adventurers, but its insatiable appetite is tempered by its fear of light. No grue has ever been seen by the light of day, and few have survived its fearsome jaws to tell the tale.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1713407451
Hero Member
*
Offline Offline

Posts: 1713407451

View Profile Personal Message (Offline)

Ignore
1713407451
Reply with quote  #2

1713407451
Report to moderator
1713407451
Hero Member
*
Offline Offline

Posts: 1713407451

View Profile Personal Message (Offline)

Ignore
1713407451
Reply with quote  #2

1713407451
Report to moderator
Pfool (OP)
Full Member
***
Offline Offline

Activity: 217
Merit: 100


View Profile WWW
July 31, 2014, 01:29:31 PM
 #162

Hum... It makes me dream...so much beer...Tongue

More seriously, 3 months ago, I had tried to make CryptoNight work. The JSON RPC 2.0 is not the problem (it was working properly). The real problem is that the pool I have tried was not using the same JSON RPC method names and even the flow control was not the same (no need to subsribe, no difficulty notifications...). I read the cpuminer-multi (https://github.com/LucasJones/cpuminer-multi) and confirmed that different method names are used.

If you can provide me a PCAP capture (using Wireshark or tcpdump) of the communication between your miner and a pool, I may check once again. But sincerely, I think the CryptoNight protocol is too different to be integrated properly to the proxy. If it is not too complicated, MAYBE I will quickly fork the proxy with CryptoNight only compatibility.

Thanx Wink
BTC: 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi
cayars
Full Member
***
Offline Offline

Activity: 168
Merit: 100


View Profile
July 31, 2014, 01:51:56 PM
 #163

Hum... It makes me dream...so much beer...Tongue

More seriously, 3 months ago, I had tried to make CryptoNight work. The JSON RPC 2.0 is not the problem (it was working properly). The real problem is that the pool I have tried was not using the same JSON RPC method names and even the flow control was not the same (no need to subsribe, no difficulty notifications...). I read the cpuminer-multi (https://github.com/LucasJones/cpuminer-multi) and confirmed that different method names are used.

If you can provide me a PCAP capture (using Wireshark or tcpdump) of the communication between your miner and a pool, I may check once again. But sincerely, I think the CryptoNight protocol is too different to be integrated properly to the proxy. If it is not too complicated, MAYBE I will quickly fork the proxy with CryptoNight only compatibility.

If you want to take a quick look I'd suggest maybe this instead:
https://github.com/tsiv/ccminer-cryptonight

cpu-miner.c being probably the key file.

This is tsiv's miner built off ccminer which is a fork of cpuminer.  This is the code I've used in my nvMiner release.
You should be able to easily see what is different as this miner will work with both normal and CN stratum servers.
It's C code but close enough to Java you can read it and understand what is different.

rpc2_login
rpc2_login_decode
json_rpc2_call
json_rpc2_call_recur
rpc2_job_decode
get_upstream_work
submit_upstream_work

Being the functions you might want to take a look at. You should be able to see what is different or needed from a normal stratum to the CN mangled/changed stratum.

My guess is that you could do something very similar to the above approach and have one proxy that supports normal and CN stratum. From one programmer to another, I don't think it will end up being nearly as hard as you think it will be. But of course that's easy for me to say. lol

And the half keg is a legit offer. Of course any releases after CN could suffer for a while. Smiley

Carlo
Pfool (OP)
Full Member
***
Offline Offline

Activity: 217
Merit: 100


View Profile WWW
July 31, 2014, 02:13:37 PM
 #164

Unfortunately, that is what I already saw. (The code is the same has the one I saw in cpuminer-multi).

The rpc2_* functions does not just use JSON-RPC 2.0 instead of 1.0, they also uses different method names with different parameters from the "real" stratum protocol.

For example, exchanges between the proxy and a "real" stratum pool (sha-256, scrypt, x11, x13...) are:

Proxy                             Pool
mining.subscribe ------->
                      <-------- mining.subscribe response
mining.authorize ------->
                      <-------- mining.authorize response
                      <-------- set_difficulty notification
                      <-------- mining.notify notification
mining.submit    -------->
                      <-------- mining.submit response
mining.submit    -------->
                      <-------- mining.submit response
                      <-------- mining.notify notification
mining.submit    -------->
                      <-------- mining.submit response
mining.submit    -------->
                      <-------- mining.submit response
                      <-------- set_difficulty notification
                      <-------- mining.notify notification


With a cryptonight pool, it should be like that (If you could provide me a protocol dump of a real mining session to confirm):

Proxy                             Pool
login                 ------->
                      <-------- login response
getjob              ------->
                      <-------- getjob response
submit              -------->
                      <-------- submit response
submit              -------->
                     <-------- submit response
getjob              ------->
                      <-------- getjob response
submit              -------->
                      <-------- submit response

You can see that methods are not the same (and parameters are not the same at all). Even the flow control is not the same at all, thus I cannot integrate this properly in the proxy.

Thanx Wink
BTC: 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi
cayars
Full Member
***
Offline Offline

Activity: 168
Merit: 100


View Profile
July 31, 2014, 03:54:53 PM
 #165

Well yes, I realize everything you just said, but it's pretty trivial changes overall.

If CN use this communications flow, else use that communications flow
If CN use this call, else use that call/function/method

That's what's done in the code I showed you and it really wasn't bad at all in ccminer. Pretty trivial changes.

However, I would think the only "major" difference between the two situations is:
ccminer-> pool->ccminer
vs
ccminer->proxy->pool->proxy->ccminer

So there is an extra level of communication also with the client and just not the pool, but of course that's the nature of a proxy and it would use the same "flow".

But hey, I appreciate the consideration you gave it.  I'll keep pestering you from time to time.

Maybe if you get "thirsty" enough.  Smiley

Carlo
Pfool (OP)
Full Member
***
Offline Offline

Activity: 217
Merit: 100


View Profile WWW
July 31, 2014, 07:10:52 PM
 #166

Could you send me a protocol dump when mining an a CryptoNight pool ? (Log file of your miner with JSON RPC requests/response or a PCAP capture). This will greatly help me to check my assumptions.

Thanx Wink
BTC: 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi
ballot
Hero Member
*****
Offline Offline

Activity: 969
Merit: 1000



View Profile
August 02, 2014, 11:51:15 PM
 #167

gwada971
Jr. Member
*
Offline Offline

Activity: 32
Merit: 10


View Profile
August 03, 2014, 12:16:37 AM
 #168

hey good news if you're thinking in crypto proxy Wink because you're proxy is great one  Grin
crashoveride54902
Hero Member
*****
Offline Offline

Activity: 784
Merit: 504


Dream become broken often


View Profile
August 06, 2014, 10:28:26 PM
Last edit: August 07, 2014, 12:14:43 AM by crashoveride54902
 #169

Jar file was not found
     1: org.glassfish.grizzly.http.server.CLStaticHttpHandler.getJarFile(CLStaticHttpHandler.java:339)
     2: org.glassfish.grizzly.http.server.CLStaticHttpHandler.handle(CLStaticHttpHandler.java:278)
     3: strat.mining.stratum.proxy.Launcher$2.handle(Launcher.java:294)
     4: org.glassfish.grizzly.http.server.StaticHttpHandlerBase.service(StaticHttpHandlerBase.java:188)
     5: org.glassfish.grizzly.http.server.HttpHandler$1.run(HttpHandler.java:217)
     6: org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565)
     7: org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
     8: java.lang.Thread.run(Unknown Source)

what jar file am i missing? using the standard 5.0 and have newest java installed...thxs
i read last page and yes i do have the stratum-proxy-webapp.jar in the lib folder and OS is vista spk1

proxy still works great just no web gui
was sad to hear nicehash doesn't let appendworkers function work Sad 4096 diff rate on a 1.4mh/s sucks

weird installed this on another lappy with vista...web gui works on that one...same version installed both for proxy n java...i'm confused

oh well might not get to use this long since NH doesn't honor appendworkers...and diff rate upto 16k now, hashrate down Sad

Dreams of cyprto solving everything is slowly slipping away...Replaced by scams/hacks Sad
blufish
Newbie
*
Offline Offline

Activity: 4
Merit: 0


View Profile
August 12, 2014, 02:04:36 PM
Last edit: August 12, 2014, 02:44:12 PM by blufish
 #170

Good morning,

I would like to use this proxy to manage which pool my rig is pointed too, rather than using the miner's own API calls or TUI to switch on demand. I use bfgminer, and it seems to like to hang / crash every now and then when I pass in RPC API calls. My hope is that I can simply configure this proxy as bfgminer's pool, using a single username / password, and then doing all pool management in the proxy.

Problem is, I can not seem to get bfgminer to successfully communicate with the proxy.

I am testing with stratum-proxy-0.5.0, built locally from a clone of the git repo.

My proxy config is:
Code:
{
  "logDirectory" : "/tmp/",
  "logLevel" : "TRACE",
  "disableLogAppend": false,
  "isScrypt" : true,
  "pools" :
  [
  {
    "name" : "Nicehash Scrypt",
    "host" : "stratum.nicehash.com:3333",
    "user" : "1NGP...Mxq9",
    "password" : "d=512",
    "enableExtranonceSubscribe" : true
  },
  {
    "name" : "Westhash Scrypt",
    "host" : "stratum.westhash.com:3333",
    "user" : "1HCS...rrL8",
    "password" : "d=512",
    "enableExtranonceSubscribe" : true
  }
  ]
}

My proxy command line is:
Code:
java -jar stratum-proxy.jar -f nicehash.conf

bfgminer config
Code:
{
"pools" : [
{
"url" : "stratum+tcp://127.0.0.1:3333",
"user" : "x",
"pass" : "x",
"pool-priority" : "1"
}
]
,
...
"scrypt" : true,
...
}

When I start bfgminer, I get the following in the proxy logs (I enabled trace level logging... hope that doesn't break anyone's brain). I am hoping that I just missed something simply in the config due to usernames / passwords. In any case, maybe shed some light?

Code:
2014-08-12 09:55:33,213 INFO     [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.manager.ProxyManager$1 - New connection on /0.0.0.0:3333 from /127.0.0.1:49552.
2014-08-12 09:55:33,218 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection$1 - Start reading on connection /127.0.0.1:49552.
2014-08-12 09:55:33,219 DEBUG    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.utils.Timer - Scheduling of task SubscribeTimeoutTask-/127.0.0.1:49552 in 10000 ms.
2014-08-12 09:55:33,219 TRACE    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.utils.Timer - Expected execution time of task SubscribeTimeoutTask-/127.0.0.1:49552: 1407851743219.
2014-08-12 09:55:33,220 TRACE    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.utils.Timer - Task SubscribeTimeoutTask-/127.0.0.1:49552 added in queue => Waking up the scheduler. [Task [isCancelled=false, expectedExecutionTime=1407851743219, name=SubscribeTimeoutTask-/127.0.0.1:49552], Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851966531, name=NotifyTimeoutTask-Westhash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt]]
2014-08-12 09:55:33,220 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49552. Line read: ��S���:r6��sp�_�e Nm��I�m�/��xv��f��
2014-08-12 09:55:33,220 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Looking for next task to execute: [Task [isCancelled=false, expectedExecutionTime=1407851743219, name=SubscribeTimeoutTask-/127.0.0.1:49552], Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851966531, name=NotifyTimeoutTask-Westhash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt]]
2014-08-12 09:55:33,220 DEBUG    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.manager.ProxyManager$1 - Waiting for incoming connection on /0.0.0.0:3333...
2014-08-12 09:55:33,222 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Next task to execute SubscribeTimeoutTask-/127.0.0.1:49552: waiting for 9999 ms.
2014-08-12 09:55:33,223 ERROR    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:49552. Failed to parse line ��S���:r6��sp�_�e Nm��I�m�/��xv��f��.
com.fasterxml.jackson.core.JsonParseException: Illegal character ((CTRL-CHAR, code 22)): only regular white space (\r, \n, \t) is allowed between tokens
 at [Source: ��S���:r6��sp�_�e Nm��I�m�/��xv��f��; line: 1, column: 2]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.base.ParserMinimalBase._throwInvalidSpace(ParserMinimalBase.java:459)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._skipWSOrEnd(ReaderBasedJsonParser.java:1874)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:571)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 09:55:33,227 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49552. Line read: �"�!98����5�����
2014-08-12 09:55:33,229 ERROR    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:49552. Failed to parse line �"�!98����5�����.
com.fasterxml.jackson.core.JsonParseException: Unexpected character ('�' (code 65533 / 0xfffd)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
 at [Source: �"�!98����5�����; line: 1, column: 2]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:437)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1462)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 09:55:33,229 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49552. Line read: �
2014-08-12 09:55:33,229 ERROR    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:49552. Failed to parse line �.
com.fasterxml.jackson.core.JsonParseException: Unexpected character ('�' (code 65533 / 0xfffd)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
 at [Source: �; line: 1, column: 2]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:437)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1462)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 09:55:33,230 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49552. Line read: �� ��32��ED��/�A���
                                                                                                                                                                            � �E
                                                                                                                                                                                              
2014-08-12 09:55:33,230 ERROR    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:49552. Failed to parse line �� ��32��ED��/�A���
                                                                                                                                                                                                                            � �E
                                                                                                                                                                                                                                              .
com.fasterxml.jackson.core.JsonParseException: Unexpected character ('�' (code 65533 / 0xfffd)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
 at [Source: �� ��32��ED��/�A���
                                            � �E
                                                              ; line: 1, column: 2]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:437)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1462)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 09:55:33,231 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49552. Line read: 42
2014-08-12 09:55:33,231 ERROR    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:49552. Failed to parse line 42.
com.fasterxml.jackson.core.JsonParseException: Illegal character ((CTRL-CHAR, code 0)): only regular white space (\r, \n, \t) is allowed between tokens
 at [Source: 42; line: 1, column: 2]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.base.ParserMinimalBase._throwInvalidSpace(ParserMinimalBase.java:459)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._skipWSOrEnd(ReaderBasedJsonParser.java:1874)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:571)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 09:55:33,231 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49552. Line read: 

                                                                                                                                                
2014-08-12 09:55:33,232 ERROR    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:49552. Failed to parse line 

                                                                                                                                                                                                   .
com.fasterxml.jackson.core.JsonParseException: Illegal character ((CTRL-CHAR, code 0)): only regular white space (\r, \n, \t) is allowed between tokens
 at [Source: 

               ; line: 1, column: 2]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.base.ParserMinimalBase._throwInvalidSpace(ParserMinimalBase.java:459)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._skipWSOrEnd(ReaderBasedJsonParser.java:1874)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:571)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 09:55:42,684 DEBUG    [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.network.StratumConnection - Pool-Westhash Scrypt. Line read: {"params":["668a", "138fd85d4b071910c44479a904464334770ab98800f5f9565248dce341932878", "01000000d81cea53010000000000000000000000000000000000000000000000000000000000000000ffffffff27034dc301062f503253482f04d91cea5308", "0d2f7374726174756d506f6f6c2f000000000130f87c000000000023210216aa67e545532ae9369dadffc22909bbc5775e6142bb117ebe0cbd32dc8d26c3ac00000000", [], "00000006", "1b511649", "53ea1cd8", true],"id":null,"method":"mining.notify"}
2014-08-12 09:55:42,684 DEBUG    [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.utils.Timer$Task - Cancelling the task NotifyTimeoutTask-Westhash Scrypt.
2014-08-12 09:55:42,684 DEBUG    [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.utils.Timer$Task - Task NotifyTimeoutTask-Westhash Scrypt removed. [Task [isCancelled=false, expectedExecutionTime=1407851743219, name=SubscribeTimeoutTask-/127.0.0.1:49552], Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt]]
2014-08-12 09:55:42,685 DEBUG    [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.utils.Timer - Scheduling of task NotifyTimeoutTask-Westhash Scrypt in 240000 ms.
2014-08-12 09:55:42,685 TRACE    [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.utils.Timer - Expected execution time of task NotifyTimeoutTask-Westhash Scrypt: 1407851982685.
2014-08-12 09:55:42,685 TRACE    [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.utils.Timer - Task NotifyTimeoutTask-Westhash Scrypt added in queue => Waking up the scheduler. [Task [isCancelled=false, expectedExecutionTime=1407851743219, name=SubscribeTimeoutTask-/127.0.0.1:49552], Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851982685, name=NotifyTimeoutTask-Westhash Scrypt]]
2014-08-12 09:55:42,685 INFO     [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.manager.ProxyManager - New block detected on pool Westhash Scrypt.
2014-08-12 09:55:42,685 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Looking for next task to execute: [Task [isCancelled=false, expectedExecutionTime=1407851743219, name=SubscribeTimeoutTask-/127.0.0.1:49552], Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851982685, name=NotifyTimeoutTask-Westhash Scrypt]]
2014-08-12 09:55:42,685 DEBUG    [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.manager.ProxyManager - No worker connections on pool Westhash Scrypt. Do not send notify.
2014-08-12 09:55:42,685 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Next task to execute SubscribeTimeoutTask-/127.0.0.1:49552: waiting for 534 ms.
2014-08-12 09:55:43,220 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Looking for next task to execute: [Task [isCancelled=false, expectedExecutionTime=1407851743219, name=SubscribeTimeoutTask-/127.0.0.1:49552], Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851982685, name=NotifyTimeoutTask-Westhash Scrypt]]
2014-08-12 09:55:43,220 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Task to execute now: SubscribeTimeoutTask-/127.0.0.1:49552.
2014-08-12 09:55:43,220 DEBUG    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Executing task SubscribeTimeoutTask-/127.0.0.1:49552 now.
2014-08-12 09:55:43,220 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Looking for next task to execute: [Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851982685, name=NotifyTimeoutTask-Westhash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt]]
2014-08-12 09:55:43,220 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Next task to execute HashrateRecoderTask: waiting for 865 ms.
2014-08-12 09:55:43,220 WARN     [TimerExecutorThread-0]:strat.mining.stratum.proxy.worker.StratumWorkerConnection$1 - No subscribe request received from /127.0.0.1:49552 in 10000 ms. Closing connection.
2014-08-12 09:55:43,221 DEBUG    [TimerExecutorThread-0]:strat.mining.stratum.proxy.network.StratumConnection - Closing connection /127.0.0.1:49552...
2014-08-12 09:55:43,221 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection - Closing connection /127.0.0.1:49552...
2014-08-12 09:55:43,221 INFO     [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.manager.ProxyManager$1 - New connection on /0.0.0.0:3333 from /127.0.0.1:49555.
2014-08-12 09:55:43,222 DEBUG    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.utils.Timer - Scheduling of task SubscribeTimeoutTask-/127.0.0.1:49555 in 10000 ms.
2014-08-12 09:55:43,222 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.network.StratumConnection$1 - Start reading on connection /127.0.0.1:49555.
2014-08-12 09:55:43,222 TRACE    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.utils.Timer - Expected execution time of task SubscribeTimeoutTask-/127.0.0.1:49555: 1407851753222.
2014-08-12 09:55:43,222 TRACE    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.utils.Timer - Task SubscribeTimeoutTask-/127.0.0.1:49555 added in queue => Waking up the scheduler. [Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851753222, name=SubscribeTimeoutTask-/127.0.0.1:49555], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851982685, name=NotifyTimeoutTask-Westhash Scrypt]]
2014-08-12 09:55:43,222 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49555. Line read: {"id": 0, "method": "mining.subscribe", "params": ["bfgminer/4.6.0-6-g8f60a5f"]}
2014-08-12 09:55:43,222 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Looking for next task to execute: [Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851753222, name=SubscribeTimeoutTask-/127.0.0.1:49555], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851982685, name=NotifyTimeoutTask-Westhash Scrypt]]
2014-08-12 09:55:43,222 DEBUG    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.manager.ProxyManager$1 - Waiting for incoming connection on /0.0.0.0:3333...
2014-08-12 09:55:43,222 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Next task to execute HashrateRecoderTask: waiting for 863 ms.
2014-08-12 09:55:43,226 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.utils.Timer$Task - Cancelling the task SubscribeTimeoutTask-/127.0.0.1:49555.
2014-08-12 09:55:43,226 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.utils.Timer$Task - Task SubscribeTimeoutTask-/127.0.0.1:49555 removed. [Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851982685, name=NotifyTimeoutTask-Westhash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt]]
2014-08-12 09:55:43,226 INFO     [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.manager.ProxyManager - New WorkerConnection /127.0.0.1:49555 subscribed. 1 connections active on pool Nicehash Scrypt.
2014-08-12 09:55:43,229 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49555. Send response: {"id": 0, "error": null, "result": [[["mining.set_difficulty", "b4b6693b72a50c7116db18d6497cac52"],["mining.notify", "ae6812eb4cd7735a302a8a9dd95cf71f"]], "70000038fe00",2]}
2014-08-12 09:55:43,231 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49555. Send notification: {"id": null, "method": "mining.set_difficulty", "params": [512.0]}
2014-08-12 09:55:43,231 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Initial difficulty sent to /127.0.0.1:49555.
2014-08-12 09:55:43,233 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49555. Send notification: {"id": null, "method": "mining.notify", "params": ["7dc", "563f68a59f42b1dbb448af9ad4677e18128e516ccb6b16c20a9e3073bdfa1dd2", "01000000010000000000000000000000000000000000000000000000000000000000000000ffffffff26029321062f503253482f04ac1cea5308", "0d2f6e6f64655374726174756d2f0000000003c09ba870030000001976a9143f61b71df09051cb2dafdd682433692fcc2c01a588ac209db406000000001976a914e2c25c4262ac29207f15e343f65bfeedb5f7f0a688ac209db406000000001976a9142bb6da413fb28d010ecf7d3dc7c9c7ea052b1f4588ac00000000",[], "00000002", "1c051b09", "53ea1cab",true]}
2014-08-12 09:55:43,234 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Initial job sent to /127.0.0.1:49555.
2014-08-12 09:55:43,234 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49555. Line read: {"id": "auth", "method": "mining.authorize", "params": ["x", "x"]}
2014-08-12 09:55:43,234 ERROR    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.network.StratumConnection - JSON-RPC Parsing error with line: {"id": "auth", "method": "mining.authorize", "params": ["x", "x"]}
com.fasterxml.jackson.databind.exc.InvalidFormatException: Can not construct instance of long from String value 'auth': not a valid Long value
 at [Source: {"id": "auth", "method": "mining.authorize", "params": ["x", "x"]}; line: 1, column: 2] (through reference chain: strat.mining.stratum.proxy.json.JsonRpcRequest["id"])
at com.fasterxml.jackson.databind.exc.InvalidFormatException.from(InvalidFormatException.java:55)
at com.fasterxml.jackson.databind.DeserializationContext.weirdStringException(DeserializationContext.java:797)
at com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseLong(StdDeserializer.java:443)
at com.fasterxml.jackson.databind.deser.std.NumberDeserializers$LongDeserializer.deserialize(NumberDeserializers.java:321)
at com.fasterxml.jackson.databind.deser.std.NumberDeserializers$LongDeserializer.deserialize(NumberDeserializers.java:303)
at com.fasterxml.jackson.databind.deser.SettableBeanProperty.deserialize(SettableBeanProperty.java:538)
at com.fasterxml.jackson.databind.dese[Suspicious link removed]pl.MethodProperty.deserializeAndSet(MethodProperty.java:99)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:242)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:118)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3051)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
crashoveride54902
Hero Member
*****
Offline Offline

Activity: 784
Merit: 504


Dream become broken often


View Profile
August 12, 2014, 03:26:32 PM
 #171

Blufish for your bfgminer pool try http:// ip of rig with the proxy:3333 or 8332 for getwork

Dreams of cyprto solving everything is slowly slipping away...Replaced by scams/hacks Sad
blufish
Newbie
*
Offline Offline

Activity: 4
Merit: 0


View Profile
August 12, 2014, 04:31:43 PM
 #172

Blufish for your bfgminer pool try http:// ip of rig with the proxy:3333 or 8332 for getwork

Well I tried simply modifying my bfgminer config to point to http://127.0.0.1:3333 instead of stratum+tcp://127.0.0.1:3333 and got the following. It looks like the proxy just puked when trying t process all of the HTTP headers. BFGMiner just kinda hangs there trying to start up.  Sad

Code:
2014-08-12 12:24:19,171 INFO     [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.manager.ProxyManager$1 - New connection on /0.0.0.0:3333 from /127.0.0.1:52422.
2014-08-12 12:24:19,172 ERROR    [/127.0.0.1:52422-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:52422. Failed to parse line POST / HTTP/1.1.
com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'POST': was expecting ('true', 'false' or 'null')
 at [Source: POST / HTTP/1.1; line: 1, column: 5]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._reportInvalidToken(ReaderBasedJsonParser.java:2300)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1459)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 12:24:19,173 ERROR    [/127.0.0.1:52422-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:52422. Failed to parse line Authorization: Basic eDp4.
com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'Authorization': was expecting ('true', 'false' or 'null')
 at [Source: Authorization: Basic eDp4; line: 1, column: 14]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._reportInvalidToken(ReaderBasedJsonParser.java:2300)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1459)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 12:24:19,174 ERROR    [/127.0.0.1:52422-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:52422. Failed to parse line Host: 127.0.0.1:3333.
com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'Host': was expecting ('true', 'false' or 'null')
 at [Source: Host: 127.0.0.1:3333; line: 1, column: 5]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._reportInvalidToken(ReaderBasedJsonParser.java:2300)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1459)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 12:24:19,175 ERROR    [/127.0.0.1:52422-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:52422. Failed to parse line Accept: */*.
com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'Accept': was expecting ('true', 'false' or 'null')
 at [Source: Accept: */*; line: 1, column: 7]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._reportInvalidToken(ReaderBasedJsonParser.java:2300)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1459)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 12:24:19,176 ERROR    [/127.0.0.1:52422-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:52422. Failed to parse line Accept-Encoding: deflate, gzip.
com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'Accept': was expecting ('true', 'false' or 'null')
 at [Source: Accept-Encoding: deflate, gzip; line: 1, column: 7]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._reportInvalidToken(ReaderBasedJsonParser.java:2300)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1459)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 12:24:19,177 ERROR    [/127.0.0.1:52422-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:52422. Failed to parse line Content-type: application/json.
com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'Content': was expecting ('true', 'false' or 'null')
 at [Source: Content-type: application/json; line: 1, column: 8]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._reportInvalidToken(ReaderBasedJsonParser.java:2300)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1459)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 12:24:19,179 ERROR    [/127.0.0.1:52422-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:52422. Failed to parse line X-Mining-Extensions: longpoll midstate rollntime submitold.
com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'X': was expecting ('true', 'false' or 'null')
 at [Source: X-Mining-Extensions: longpoll midstate rollntime submitold; line: 1, column: 2]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._reportInvalidToken(ReaderBasedJsonParser.java:2300)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1459)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 12:24:19,180 ERROR    [/127.0.0.1:52422-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:52422. Failed to parse line Content-Length: 44.
com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'Content': was expecting ('true', 'false' or 'null')
 at [Source: Content-Length: 44; line: 1, column: 8]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._reportInvalidToken(ReaderBasedJsonParser.java:2300)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1459)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 12:24:19,181 ERROR    [/127.0.0.1:52422-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:52422. Failed to parse line User-Agent: bfgminer/4.6.0-6-g8f60a5f.
com.fasterxml.jackson.core.JsonParseException: Unrecognized token 'User': was expecting ('true', 'false' or 'null')
 at [Source: User-Agent: bfgminer/4.6.0-6-g8f60a5f; line: 1, column: 5]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._reportInvalidToken(ReaderBasedJsonParser.java:2300)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1459)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 12:24:19,183 ERROR    [/127.0.0.1:52422-Thread]:strat.mining.stratum.proxy.network.StratumConnection - JSON-RPC Parsing error with line:
com.fasterxml.jackson.databind.JsonMappingException: No content to map due to end-of-input
 at [Source: ; line: 1, column: 1]
at com.fasterxml.jackson.databind.JsonMappingException.from(JsonMappingException.java:164)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3095)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 12:24:19,189 WARN     [/127.0.0.1:52422-Thread]:strat.mining.stratum.proxy.network.StratumConnection - Unknown request type on connection /127.0.0.1:52422. methodName: getwork, id: 0, params: []
2014-08-12 12:24:19,346 INFO     [Pool-Nicehash Scrypt-Thread]:strat.mining.stratum.proxy.manager.ProxyManager - New block detected on pool Nicehash Scrypt.
2014-08-12 12:24:24,071 INFO     [Pool-Nicehash Scrypt-Thread]:strat.mining.stratum.proxy.manager.ProxyManager - New block detected on pool Nicehash Scrypt.
2014-08-12 12:24:29,172 WARN     [TimerExecutorThread-0]:strat.mining.stratum.proxy.worker.StratumWorkerConnection$1 - No subscribe request received from /127.0.0.1:52422 in 10000 ms. Closing connection.
Pfool (OP)
Full Member
***
Offline Offline

Activity: 217
Merit: 100


View Profile WWW
August 12, 2014, 06:10:40 PM
 #173

Good morning,

I would like to use this proxy to manage which pool my rig is pointed too, rather than using the miner's own API calls or TUI to switch on demand. I use bfgminer, and it seems to like to hang / crash every now and then when I pass in RPC API calls. My hope is that I can simply configure this proxy as bfgminer's pool, using a single username / password, and then doing all pool management in the proxy.

Problem is, I can not seem to get bfgminer to successfully communicate with the proxy.

I am testing with stratum-proxy-0.5.0, built locally from a clone of the git repo.

My proxy config is:
Code:
{
  "logDirectory" : "/tmp/",
  "logLevel" : "TRACE",
  "disableLogAppend": false,
  "isScrypt" : true,
  "pools" :
  [
  {
    "name" : "Nicehash Scrypt",
    "host" : "stratum.nicehash.com:3333",
    "user" : "1NGP...Mxq9",
    "password" : "d=512",
    "enableExtranonceSubscribe" : true
  },
  {
    "name" : "Westhash Scrypt",
    "host" : "stratum.westhash.com:3333",
    "user" : "1HCS...rrL8",
    "password" : "d=512",
    "enableExtranonceSubscribe" : true
  }
  ]
}

My proxy command line is:
Code:
java -jar stratum-proxy.jar -f nicehash.conf

bfgminer config
Code:
{
"pools" : [
{
"url" : "stratum+tcp://127.0.0.1:3333",
"user" : "x",
"pass" : "x",
"pool-priority" : "1"
}
]
,
...
"scrypt" : true,
...
}

When I start bfgminer, I get the following in the proxy logs (I enabled trace level logging... hope that doesn't break anyone's brain). I am hoping that I just missed something simply in the config due to usernames / passwords. In any case, maybe shed some light?

Code:
2014-08-12 09:55:33,213 INFO     [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.manager.ProxyManager$1 - New connection on /0.0.0.0:3333 from /127.0.0.1:49552.
2014-08-12 09:55:33,218 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection$1 - Start reading on connection /127.0.0.1:49552.
2014-08-12 09:55:33,219 DEBUG    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.utils.Timer - Scheduling of task SubscribeTimeoutTask-/127.0.0.1:49552 in 10000 ms.
2014-08-12 09:55:33,219 TRACE    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.utils.Timer - Expected execution time of task SubscribeTimeoutTask-/127.0.0.1:49552: 1407851743219.
2014-08-12 09:55:33,220 TRACE    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.utils.Timer - Task SubscribeTimeoutTask-/127.0.0.1:49552 added in queue => Waking up the scheduler. [Task [isCancelled=false, expectedExecutionTime=1407851743219, name=SubscribeTimeoutTask-/127.0.0.1:49552], Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851966531, name=NotifyTimeoutTask-Westhash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt]]
2014-08-12 09:55:33,220 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49552. Line read: ��S���:r6��sp�_�e Nm��I�m�/��xv��f��
2014-08-12 09:55:33,220 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Looking for next task to execute: [Task [isCancelled=false, expectedExecutionTime=1407851743219, name=SubscribeTimeoutTask-/127.0.0.1:49552], Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851966531, name=NotifyTimeoutTask-Westhash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt]]
2014-08-12 09:55:33,220 DEBUG    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.manager.ProxyManager$1 - Waiting for incoming connection on /0.0.0.0:3333...
2014-08-12 09:55:33,222 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Next task to execute SubscribeTimeoutTask-/127.0.0.1:49552: waiting for 9999 ms.
2014-08-12 09:55:33,223 ERROR    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:49552. Failed to parse line ��S���:r6��sp�_�e Nm��I�m�/��xv��f��.
com.fasterxml.jackson.core.JsonParseException: Illegal character ((CTRL-CHAR, code 22)): only regular white space (\r, \n, \t) is allowed between tokens
 at [Source: ��S���:r6��sp�_�e Nm��I�m�/��xv��f��; line: 1, column: 2]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.base.ParserMinimalBase._throwInvalidSpace(ParserMinimalBase.java:459)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._skipWSOrEnd(ReaderBasedJsonParser.java:1874)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:571)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 09:55:33,227 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49552. Line read: �"�!98����5�����
2014-08-12 09:55:33,229 ERROR    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:49552. Failed to parse line �"�!98����5�����.
com.fasterxml.jackson.core.JsonParseException: Unexpected character ('�' (code 65533 / 0xfffd)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
 at [Source: �"�!98����5�����; line: 1, column: 2]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:437)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1462)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 09:55:33,229 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49552. Line read: �
2014-08-12 09:55:33,229 ERROR    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:49552. Failed to parse line �.
com.fasterxml.jackson.core.JsonParseException: Unexpected character ('�' (code 65533 / 0xfffd)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
 at [Source: �; line: 1, column: 2]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:437)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1462)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 09:55:33,230 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49552. Line read: �� ��32��ED��/�A���
                                                                                                                                                                            � �E
                                                                                                                                                                                              
2014-08-12 09:55:33,230 ERROR    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:49552. Failed to parse line �� ��32��ED��/�A���
                                                                                                                                                                                                                            � �E
                                                                                                                                                                                                                                              .
com.fasterxml.jackson.core.JsonParseException: Unexpected character ('�' (code 65533 / 0xfffd)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
 at [Source: �� ��32��ED��/�A���
                                            � �E
                                                              ; line: 1, column: 2]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportUnexpectedChar(ParserMinimalBase.java:437)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._handleOddValue(ReaderBasedJsonParser.java:1462)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:683)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 09:55:33,231 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49552. Line read: 42
2014-08-12 09:55:33,231 ERROR    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:49552. Failed to parse line 42.
com.fasterxml.jackson.core.JsonParseException: Illegal character ((CTRL-CHAR, code 0)): only regular white space (\r, \n, \t) is allowed between tokens
 at [Source: 42; line: 1, column: 2]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.base.ParserMinimalBase._throwInvalidSpace(ParserMinimalBase.java:459)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._skipWSOrEnd(ReaderBasedJsonParser.java:1874)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:571)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 09:55:33,231 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49552. Line read: 

                                                                                                                                                
2014-08-12 09:55:33,232 ERROR    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Parsing error on worker connection /127.0.0.1:49552. Failed to parse line 

                                                                                                                                                                                                   .
com.fasterxml.jackson.core.JsonParseException: Illegal character ((CTRL-CHAR, code 0)): only regular white space (\r, \n, \t) is allowed between tokens
 at [Source: 

               ; line: 1, column: 2]
at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1419)
at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:508)
at com.fasterxml.jackson.core.base.ParserMinimalBase._throwInvalidSpace(ParserMinimalBase.java:459)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._skipWSOrEnd(ReaderBasedJsonParser.java:1874)
at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.nextToken(ReaderBasedJsonParser.java:571)
at com.fasterxml.jackson.databind.ObjectMapper._initForReading(ObjectMapper.java:3090)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3036)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)
2014-08-12 09:55:42,684 DEBUG    [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.network.StratumConnection - Pool-Westhash Scrypt. Line read: {"params":["668a", "138fd85d4b071910c44479a904464334770ab98800f5f9565248dce341932878", "01000000d81cea53010000000000000000000000000000000000000000000000000000000000000000ffffffff27034dc301062f503253482f04d91cea5308", "0d2f7374726174756d506f6f6c2f000000000130f87c000000000023210216aa67e545532ae9369dadffc22909bbc5775e6142bb117ebe0cbd32dc8d26c3ac00000000", [], "00000006", "1b511649", "53ea1cd8", true],"id":null,"method":"mining.notify"}
2014-08-12 09:55:42,684 DEBUG    [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.utils.Timer$Task - Cancelling the task NotifyTimeoutTask-Westhash Scrypt.
2014-08-12 09:55:42,684 DEBUG    [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.utils.Timer$Task - Task NotifyTimeoutTask-Westhash Scrypt removed. [Task [isCancelled=false, expectedExecutionTime=1407851743219, name=SubscribeTimeoutTask-/127.0.0.1:49552], Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt]]
2014-08-12 09:55:42,685 DEBUG    [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.utils.Timer - Scheduling of task NotifyTimeoutTask-Westhash Scrypt in 240000 ms.
2014-08-12 09:55:42,685 TRACE    [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.utils.Timer - Expected execution time of task NotifyTimeoutTask-Westhash Scrypt: 1407851982685.
2014-08-12 09:55:42,685 TRACE    [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.utils.Timer - Task NotifyTimeoutTask-Westhash Scrypt added in queue => Waking up the scheduler. [Task [isCancelled=false, expectedExecutionTime=1407851743219, name=SubscribeTimeoutTask-/127.0.0.1:49552], Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851982685, name=NotifyTimeoutTask-Westhash Scrypt]]
2014-08-12 09:55:42,685 INFO     [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.manager.ProxyManager - New block detected on pool Westhash Scrypt.
2014-08-12 09:55:42,685 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Looking for next task to execute: [Task [isCancelled=false, expectedExecutionTime=1407851743219, name=SubscribeTimeoutTask-/127.0.0.1:49552], Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851982685, name=NotifyTimeoutTask-Westhash Scrypt]]
2014-08-12 09:55:42,685 DEBUG    [Pool-Westhash Scrypt-Thread]:strat.mining.stratum.proxy.manager.ProxyManager - No worker connections on pool Westhash Scrypt. Do not send notify.
2014-08-12 09:55:42,685 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Next task to execute SubscribeTimeoutTask-/127.0.0.1:49552: waiting for 534 ms.
2014-08-12 09:55:43,220 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Looking for next task to execute: [Task [isCancelled=false, expectedExecutionTime=1407851743219, name=SubscribeTimeoutTask-/127.0.0.1:49552], Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851982685, name=NotifyTimeoutTask-Westhash Scrypt]]
2014-08-12 09:55:43,220 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Task to execute now: SubscribeTimeoutTask-/127.0.0.1:49552.
2014-08-12 09:55:43,220 DEBUG    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Executing task SubscribeTimeoutTask-/127.0.0.1:49552 now.
2014-08-12 09:55:43,220 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Looking for next task to execute: [Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851982685, name=NotifyTimeoutTask-Westhash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt]]
2014-08-12 09:55:43,220 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Next task to execute HashrateRecoderTask: waiting for 865 ms.
2014-08-12 09:55:43,220 WARN     [TimerExecutorThread-0]:strat.mining.stratum.proxy.worker.StratumWorkerConnection$1 - No subscribe request received from /127.0.0.1:49552 in 10000 ms. Closing connection.
2014-08-12 09:55:43,221 DEBUG    [TimerExecutorThread-0]:strat.mining.stratum.proxy.network.StratumConnection - Closing connection /127.0.0.1:49552...
2014-08-12 09:55:43,221 DEBUG    [/127.0.0.1:49552-Thread]:strat.mining.stratum.proxy.network.StratumConnection - Closing connection /127.0.0.1:49552...
2014-08-12 09:55:43,221 INFO     [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.manager.ProxyManager$1 - New connection on /0.0.0.0:3333 from /127.0.0.1:49555.
2014-08-12 09:55:43,222 DEBUG    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.utils.Timer - Scheduling of task SubscribeTimeoutTask-/127.0.0.1:49555 in 10000 ms.
2014-08-12 09:55:43,222 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.network.StratumConnection$1 - Start reading on connection /127.0.0.1:49555.
2014-08-12 09:55:43,222 TRACE    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.utils.Timer - Expected execution time of task SubscribeTimeoutTask-/127.0.0.1:49555: 1407851753222.
2014-08-12 09:55:43,222 TRACE    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.utils.Timer - Task SubscribeTimeoutTask-/127.0.0.1:49555 added in queue => Waking up the scheduler. [Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851753222, name=SubscribeTimeoutTask-/127.0.0.1:49555], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851982685, name=NotifyTimeoutTask-Westhash Scrypt]]
2014-08-12 09:55:43,222 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49555. Line read: {"id": 0, "method": "mining.subscribe", "params": ["bfgminer/4.6.0-6-g8f60a5f"]}
2014-08-12 09:55:43,222 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Looking for next task to execute: [Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851753222, name=SubscribeTimeoutTask-/127.0.0.1:49555], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851982685, name=NotifyTimeoutTask-Westhash Scrypt]]
2014-08-12 09:55:43,222 DEBUG    [StratumProxyManagerSeverSocketListener]:strat.mining.stratum.proxy.manager.ProxyManager$1 - Waiting for incoming connection on /0.0.0.0:3333...
2014-08-12 09:55:43,222 TRACE    [TimerSchedulerThread]:strat.mining.stratum.proxy.utils.Timer$Scheduler - Next task to execute HashrateRecoderTask: waiting for 863 ms.
2014-08-12 09:55:43,226 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.utils.Timer$Task - Cancelling the task SubscribeTimeoutTask-/127.0.0.1:49555.
2014-08-12 09:55:43,226 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.utils.Timer$Task - Task SubscribeTimeoutTask-/127.0.0.1:49555 removed. [Task [isCancelled=false, expectedExecutionTime=1407851744085, name=HashrateRecoderTask], Task [isCancelled=false, expectedExecutionTime=1407851982685, name=NotifyTimeoutTask-Westhash Scrypt], Task [isCancelled=false, expectedExecutionTime=1407851938031, name=NotifyTimeoutTask-Nicehash Scrypt]]
2014-08-12 09:55:43,226 INFO     [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.manager.ProxyManager - New WorkerConnection /127.0.0.1:49555 subscribed. 1 connections active on pool Nicehash Scrypt.
2014-08-12 09:55:43,229 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49555. Send response: {"id": 0, "error": null, "result": [[["mining.set_difficulty", "b4b6693b72a50c7116db18d6497cac52"],["mining.notify", "ae6812eb4cd7735a302a8a9dd95cf71f"]], "70000038fe00",2]}
2014-08-12 09:55:43,231 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49555. Send notification: {"id": null, "method": "mining.set_difficulty", "params": [512.0]}
2014-08-12 09:55:43,231 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Initial difficulty sent to /127.0.0.1:49555.
2014-08-12 09:55:43,233 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49555. Send notification: {"id": null, "method": "mining.notify", "params": ["7dc", "563f68a59f42b1dbb448af9ad4677e18128e516ccb6b16c20a9e3073bdfa1dd2", "01000000010000000000000000000000000000000000000000000000000000000000000000ffffffff26029321062f503253482f04ac1cea5308", "0d2f6e6f64655374726174756d2f0000000003c09ba870030000001976a9143f61b71df09051cb2dafdd682433692fcc2c01a588ac209db406000000001976a914e2c25c4262ac29207f15e343f65bfeedb5f7f0a688ac209db406000000001976a9142bb6da413fb28d010ecf7d3dc7c9c7ea052b1f4588ac00000000",[], "00000002", "1c051b09", "53ea1cab",true]}
2014-08-12 09:55:43,234 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.worker.StratumWorkerConnection - Initial job sent to /127.0.0.1:49555.
2014-08-12 09:55:43,234 DEBUG    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.network.StratumConnection - /127.0.0.1:49555. Line read: {"id": "auth", "method": "mining.authorize", "params": ["x", "x"]}
2014-08-12 09:55:43,234 ERROR    [/127.0.0.1:49555-Thread]:strat.mining.stratum.proxy.network.StratumConnection - JSON-RPC Parsing error with line: {"id": "auth", "method": "mining.authorize", "params": ["x", "x"]}
com.fasterxml.jackson.databind.exc.InvalidFormatException: Can not construct instance of long from String value 'auth': not a valid Long value
 at [Source: {"id": "auth", "method": "mining.authorize", "params": ["x", "x"]}; line: 1, column: 2] (through reference chain: strat.mining.stratum.proxy.json.JsonRpcRequest["id"])
at com.fasterxml.jackson.databind.exc.InvalidFormatException.from(InvalidFormatException.java:55)
at com.fasterxml.jackson.databind.DeserializationContext.weirdStringException(DeserializationContext.java:797)
at com.fasterxml.jackson.databind.deser.std.StdDeserializer._parseLong(StdDeserializer.java:443)
at com.fasterxml.jackson.databind.deser.std.NumberDeserializers$LongDeserializer.deserialize(NumberDeserializers.java:321)
at com.fasterxml.jackson.databind.deser.std.NumberDeserializers$LongDeserializer.deserialize(NumberDeserializers.java:303)
at com.fasterxml.jackson.databind.deser.SettableBeanProperty.deserialize(SettableBeanProperty.java:538)
at com.fasterxml.jackson.databind.dese[Suspicious link removed]pl.MethodProperty.deserializeAndSet(MethodProperty.java:99)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.vanillaDeserialize(BeanDeserializer.java:242)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:118)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:3051)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2146)
at strat.mining.stratum.proxy.network.StratumConnection.onLineRead(StratumConnection.java:214)
at strat.mining.stratum.proxy.network.StratumConnection.access$200(StratumConnection.java:55)
at strat.mining.stratum.proxy.network.StratumConnection$1.run(StratumConnection.java:152)


Your pool url in bfgminer looks good (stratum+tcp://127.0.0.1:3333)

It seems that bfgminer sends binary data to the proxy over the stratum connection (that's why you have the odd characters in the log file). So the parsing of the JSON (which is plain text) fails on the proxy side. I do not know bfgminer, but maybe there is an option you should disable (maybe ssl, compression...) that may send binary data on the stratum connection.



Thanx Wink
BTC: 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi
blufish
Newbie
*
Offline Offline

Activity: 4
Merit: 0


View Profile
August 13, 2014, 09:18:38 PM
 #174

Your pool url in bfgminer looks good (stratum+tcp://127.0.0.1:3333)

It seems that bfgminer sends binary data to the proxy over the stratum connection (that's why you have the odd characters in the log file). So the parsing of the JSON (which is plain text) fails on the proxy side. I do not know bfgminer, but maybe there is an option you should disable (maybe ssl, compression...) that may send binary data on the stratum connection.

Thanks Pfool, I agree with your assessment. I don't know stratum, nor the details of BFGMiner's implementation, so it's hard to say what the heck it's trying to do. Scanning through it's -help, I did not see anything suggesting a possible solution. So.... I switched to cgminer! All is well connecting to the proxy now. Also, I seem to be getting a better / more stable hashrate out of cgminer (running 8 Zeus Blizzards), with or without the proxy..

Thanks again for the help.
John peter
Newbie
*
Offline Offline

Activity: 5
Merit: 0


View Profile
August 14, 2014, 04:43:35 AM
 #175

Hi,

Is this available in python code.
Pfool (OP)
Full Member
***
Offline Offline

Activity: 217
Merit: 100


View Profile WWW
August 14, 2014, 09:01:08 AM
 #176

No, this proxy is implemented in java. For a Python stratum proxy, you can look at the reference implementation:  https://github.com/slush0/stratum-mining-proxy

Thanx Wink
BTC: 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi
John peter
Newbie
*
Offline Offline

Activity: 5
Merit: 0


View Profile
August 19, 2014, 04:59:08 AM
 #177

Hi,

But in python,there is no much features as you have in java stratum code.

  I need to connect all my miners to this proxy server at a time and redirected to any famous pool.

But this java code having this all features i think.
tmpwhore
Full Member
***
Offline Offline

Activity: 343
Merit: 100


View Profile
August 25, 2014, 03:06:40 AM
 #178

Jar file was not found
     1: org.glassfish.grizzly.http.server.CLStaticHttpHandler.getJarFile(CLStaticHttpHandler.java:339)
     2: org.glassfish.grizzly.http.server.CLStaticHttpHandler.handle(CLStaticHttpHandler.java:278)
     3: strat.mining.stratum.proxy.Launcher$2.handle(Launcher.java:294)
     4: org.glassfish.grizzly.http.server.StaticHttpHandlerBase.service(StaticHttpHandlerBase.java:188)
     5: org.glassfish.grizzly.http.server.HttpHandler$1.run(HttpHandler.java:217)
     6: org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565)
     7: org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545)
     8: java.lang.Thread.run(Unknown Source)

what jar file am i missing? using the standard 5.0 and have newest java installed...thxs
i read last page and yes i do have the stratum-proxy-webapp.jar in the lib folder and OS is vista spk1

proxy still works great just no web gui
was sad to hear nicehash doesn't let appendworkers function work Sad 4096 diff rate on a 1.4mh/s sucks

weird installed this on another lappy with vista...web gui works on that one...same version installed both for proxy n java...i'm confused

oh well might not get to use this long since NH doesn't honor appendworkers...and diff rate upto 16k now, hashrate down Sad


Same problem here. stratum-proxy-webapp.jar is in the /lib/ folder but still no go on the web app. Win 7 sp1 and using stratum proxy 0.5.0. Where are the grizzly log files located? Maybe I can troubleshoot it for you.
Pfool (OP)
Full Member
***
Offline Offline

Activity: 217
Merit: 100


View Profile WWW
August 25, 2014, 06:24:26 AM
 #179

The grizzly logs are ine the same log file but you have to enable a lower log level with the configuration file option:
"apiLogLevel" : "DEBUG"

Could ypu send me the log file with this option ? Thanks.

EDIT: Could you give the absolute path to your stratum-proxy.jar file? I suspect a bug with some kind of special characters. Do you run the proxy with administrator privileges ?

Thanx Wink
BTC: 19wv8FQKv3NkwTdzBCQn1AGsb9ghqBPWXi
cyberpinoy
Hero Member
*****
Offline Offline

Activity: 1008
Merit: 502



View Profile WWW
August 25, 2014, 06:29:35 PM
 #180

OkI am totally new to this so please bear with me, I just need to learn how to set this up. I put the command lines in and all it does is tell me unable to access jarfile (pick any pool address you want and put it here) I tried a couple different pools all with the same result.


E:\Bitcoin\Stratum Proxy\stratum-proxy-0.5.0>java -jar -h nl1.ghash.io:3334 -u c
yberpinoy.rbox -p x
Error: Unable to access jarfile nl1.ghash.io:3334

E:\Bitcoin\Stratum Proxy\stratum-proxy-0.5.0>java -jar -h stratum+tcp://nl1.ghas
h.io:3334 -u cyberpinoy.rbox -p x
Error: Unable to access jarfile stratum+tcp://nl1.ghash.io:3334

E:\Bitcoin\Stratum Proxy\stratum-proxy-0.5.0>

in a few other cases I am getting this


E:\Bitcoin\Stratum Proxy\stratum-proxy-0.5.0>java -jar stratum-proxy.jar proxyOp
tions
Exception in thread "main" java.lang.NullPointerException
        at strat.mining.stratum.proxy.Launcher.main(Launcher.java:101)

E:\Bitcoin\Stratum Proxy\stratum-proxy-0.5.0>

the help finally started working but I was getting a java.dll missinf and a value 1.8 is present and needs to be 1.7 but I think those errors maybe gone now for some reason.


Also I have checked all the folders and can not find either of the config files i would rather set it up that way I did find this however


E:\Bitcoin\Stratum Proxy\stratum-proxy-0.5.0>java -jar stratum-proxy.jar
Log directory not set or available. Use the tmp OS directory.
2014-08-26 02:23:26,009 INFO     [main]:strat.mining.stratum.proxy.Launcher - LogLevel not set, using INFO.
2014-08-26 02:23:26,015 INFO     [main]:strat.mining.stratum.proxy.Launcher - Using pools: [].
2014-08-26 02:23:26,068 INFO     [main]:strat.mining.stratum.proxy.manager.StratumProxyManager - ServerSocket opened on 0.0.0.0/0.0.0.0:3333.
Aug 26, 2014 2:23:26 AM org.glassfish.jersey.server.ApplicationHandler initialize
INFO: Initiating Jersey application, version Jersey: 2.7 2014-03-12 18:11:31...
Aug 26, 2014 2:23:27 AM org.glassfish.grizzly.http.server.NetworkListener start
INFO: Started listener bound to [0.0.0.0:8888]
Aug 26, 2014 2:23:27 AM org.glassfish.grizzly.http.server.HttpServer start
INFO: [HttpServer] Started.


very new to this and just trying to get a nice stratum system up and running, I am hoping this will do what i am hoping it will do.

Pages: « 1 2 3 4 5 6 7 8 [9] 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 »
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!