Con Kolivas
|
91854f81ec
|
Cope with failure to get a single block template more gracefully
|
11 years ago |
Con Kolivas
|
4e4ad53e98
|
Implement diff tracking by job id and vardiff to maintain share submission rate of 20pm
|
11 years ago |
Con Kolivas
|
e383d6f736
|
Invalidate workbases from old blocks and reject shares that don't have a matching workbase
|
11 years ago |
Con Kolivas
|
328a85c1fe
|
Only assume clients have disconnected on an error from recv
|
11 years ago |
Con Kolivas
|
b6030d3809
|
Close sockets immediately after every received message in connector and stratifier
|
11 years ago |
Con Kolivas
|
cecaad4095
|
Add some sanity checking to params sent with share submission and clear memory used when workbases are dropped
|
11 years ago |
Con Kolivas
|
9db3db3b8b
|
Enable keepalive and nodelay for remote clients and remove mistaken setting of noblock, and add reuseaddr option to sockets
|
11 years ago |
Con Kolivas
|
6a7e1bcc37
|
Add fake submit parsing and poll every second instead of millisecond
|
11 years ago |
Con Kolivas
|
3bee9efed6
|
Remove invalidated clients from broadcasts
|
11 years ago |
Con Kolivas
|
9d73d6b145
|
Add broadcasting of stratum updates to all authorised users, with further json fixes
|
11 years ago |
Con Kolivas
|
db5aece42a
|
Fix mining notify json and add basic authorise mechanism
|
11 years ago |
Con Kolivas
|
2e1a1100d3
|
Send a stratum parameter update to a client that's just subscribed, caching parameters that will be reused
|
11 years ago |
Con Kolivas
|
7cf768fddf
|
Cope with the unlikely event we have been requested a mining subscribe before any work templates have been generated
|
11 years ago |
Con Kolivas
|
4916591ae5
|
Create response to mining.subscribe request and deny all other invalid requests
|
11 years ago |
Con Kolivas
|
8be725bde6
|
Retry binding the connector to the socket for up to 2 minutes
|
11 years ago |
Con Kolivas
|
7f0824260b
|
Disconnect clients that send invalid json
|
11 years ago |
Con Kolivas
|
72ebb96ef6
|
Return a json response to any valid json from the stratifier to connector to send to the relevant connected client
|
11 years ago |
Con Kolivas
|
126c7964e2
|
Add a json parser to the stratum receiver that will generate return messages
|
11 years ago |
Con Kolivas
|
4f0379299a
|
Create new stratum instances for each new client id, adding them to a hashtable
|
11 years ago |
Con Kolivas
|
df64af6ce4
|
Add a stratum add sending function for adding messages to send to the linked list
|
11 years ago |
Con Kolivas
|
04c5de6ad0
|
Store the latest hash, noting when it changes to allow stratum clean notification
|
11 years ago |
Con Kolivas
|
080eef5f31
|
Send and receive stratum messages via their own threads that add and remove client ids to the json using linked lists and pthread conditionals to wake them
|
11 years ago |
Con Kolivas
|
e946665023
|
Create stratum receive/send threads that will use their own hashtables and conditionals to do work
|
11 years ago |
Con Kolivas
|
1b745f0db3
|
Pass recognised json messages sent to connector to stratifier with the added client_id field
|
11 years ago |
Con Kolivas
|
718bf11a46
|
Reference clients by id, not fd since fd can be the same and be invalidated
|
11 years ago |
Con Kolivas
|
5a0d3f8d24
|
Create a hashtable of workbases as they're created, removing them if they're older than 10 minutes old
|
11 years ago |
Con Kolivas
|
438f8c4472
|
Add the beginnings of a sanity checking client message parser
|
11 years ago |
Con Kolivas
|
f2b32839c1
|
Create a client instance hash table and use it to determine which fds need to be polled
|
11 years ago |
Con Kolivas
|
3c21f90aab
|
Use poll to connect many clients and see which connections need to be read in connector
|
11 years ago |
Con Kolivas
|
bcbafba42e
|
Create a thread from the connector process that listens for incoming connections and opens new connections for them
|
11 years ago |
Con Kolivas
|
55b8e8424a
|
Add connector process which will process all remote communications
|
11 years ago |
Con Kolivas
|
9e92be3f5e
|
Use a longer timeout for reading a socket line, along with a select timeout on each loop through the read function to increase reliability over network connections
|
11 years ago |
Con Kolivas
|
4ab9120e61
|
Handle failed generator startup as a fatal startup, sending listener a shutdown message and adding shutdown parsing
|
11 years ago |
Con Kolivas
|
2b1f9510cf
|
Add a block update thread that polls bitcoind regularly for the latest hash and handle failed json requests as closed sockets
|
11 years ago |
Con Kolivas
|
8f0958bbfb
|
Add some default parameters to make polling intervals configurable
|
11 years ago |
Con Kolivas
|
2bcdc4bcce
|
Cache the header binary that will be used for work reconstruction
|
11 years ago |
Con Kolivas
|
86159a60ec
|
Generate coinbase templates, fixing missing fields from gbt parser
|
11 years ago |
Con Kolivas
|
3cd82a5dd1
|
Validate pool address on starting generator
|
11 years ago |
Con Kolivas
|
4766e90df2
|
Left out nbit from parsing
|
11 years ago |
Con Kolivas
|
b65c555d87
|
Decode the generator response and store the variables in the stratifier
|
11 years ago |
Con Kolivas
|
bbd4e59069
|
Use the send recv proc helper in the stratifier process
|
11 years ago |
Con Kolivas
|
1953cd2935
|
Add helper functions for sending/receiving to a process instance
|
11 years ago |
Con Kolivas
|
a723e70f51
|
Remove signal handlers and use a watchdog thread to watch for dead child processes and restart them
|
11 years ago |
Con Kolivas
|
0d3d2434be
|
Use name for socket directory and add more config options
|
11 years ago |
Con Kolivas
|
6f1838536c
|
Create a stratifier thread that updates the data from the gbt template regularly and receives other requests
|
11 years ago |
Con Kolivas
|
945c730447
|
Add and test a getbase function of the generator process
|
11 years ago |
Con Kolivas
|
6f679e1cf4
|
Create the main read parse loop for the generator and send it a test message
|
11 years ago |
Con Kolivas
|
eb041c331f
|
Use a consistent method for sending/receiving messages across unix sockets
|
11 years ago |
Con Kolivas
|
0da6336602
|
Fix gbt base generation, be more flexible with reading lines from socket, and add gbtbase clearing function
|
11 years ago |
Con Kolivas
|
4c4246c8d4
|
Create basic connsock data and connect to socket in generator
|
11 years ago |