1
0
mirror of https://github.com/GOSTSec/sgminer synced 2025-01-01 18:55:36 +00:00
Commit Graph

250 Commits

Author SHA1 Message Date
Noel Maersk
4f387321ce misc: update AUTHORS.md, add CR to sgminer.c, minor style. 2014-06-05 23:07:14 +03:00
Jan Berdajs
f0e47ec8ec make sure reinit_device cannot happen while algo switching, which would probably result in segfault 2014-06-05 18:40:27 +02:00
Jan Berdajs
e58cd00db7 fix bug in thread_reportin (watchdog can detect getwork is false before thr->last is set), and a few cosmetic changes 2014-06-05 18:35:46 +02:00
troky
b8a1c1f660 MSVS compatibility update. 2014-06-05 10:20:43 +02:00
Jan Berdajs
e4a4efdb42 fix some potential memory leaks, remove a few old unused functions 2014-06-05 00:13:43 +02:00
Jan Berdajs
87bbca6148 only change gpu engine, memclock, fans, if ADL is enabled 2014-06-05 00:13:34 +02:00
Anatoly
8c48255802 Code cleanup
WATCHDOG_SICK_TIME increase reverted
Hardcode in get_work_blockdiff removed
2014-06-04 18:07:20 +02:00
Anatoly
99db17145f show-coindiff option added 2014-06-04 18:07:13 +02:00
Anatoly
8f10cbfac5 Total uptime length
Conflicts:
	sgminer.c
2014-06-04 18:07:12 +02:00
Anatoly
d89e53b3db Extend time to sick state 2014-06-04 18:07:07 +02:00
Jan Berdajs
2ec09155e6 per-pool gpu-fan 2014-05-30 00:00:36 +02:00
Jan Berdajs
f596631a07 adjust ncurses interface when we change mining_threads count 2014-05-29 02:05:15 +02:00
Jan Berdajs
6c5ce535d9 fix compiler warnings 2014-05-29 01:34:29 +02:00
Jan Berdajs
13cdc33809 pool-gpu-threads setting 2014-05-29 00:52:07 +02:00
Jan Berdajs
19fc4cc93c remove gpu_threads which is identical to mining_threads. refactor mining threads init code 2014-05-29 00:07:32 +02:00
Jan Berdajs
24d0ce4884 all hail SPACE 2014-05-28 23:38:58 +02:00
Jan Berdajs
c4f2b78d65 per-pool gpu-engine, gpu-memclock and thread_concurrency 2014-05-28 23:19:04 +02:00
Jan Berdajs
06d8e1d1dc extranonce - some cleanup and better description for pool setting 2014-05-28 23:18:14 +02:00
elbandi
91a26c46b7 Protect pool name with lock
Disconnect from pool, if auth is failed

handle mining.set_extranonce method

subscribe for mining.extranonce

Allow disable extranonce subscribe

Send subscribe request before auth

Change mining.set_extranonce method as stratum notification

Set extranonce.subscribe timeout to 2sec

Some tweaks for extranonce

Handle pool response, who send errors in invalid format

Move no-extranonce-subscribe parameter to a pool config

Include pool.h

Set the pool idle and switch pool, if need

Mark pool as idle if stratum restart is failed

Conflicts:
	sgminer.c
2014-05-28 23:17:51 +02:00
Jan Berdajs
cac833e5c2 fix bug which can occur when switching from a very low diff algo (darkcoin) to a high diff algo (scrypt), which caused invalid nonces 2014-05-28 00:37:53 +02:00
Jan Berdajs
5b8adcd9a1 add todo comment if we ever fix the broken config parser 2014-05-27 04:21:41 +02:00
Jan Berdajs
efe1ebd7ae Intensity can be set for each pool individually 2014-05-27 04:13:52 +02:00
Jan Berdajs
9d9f5b7586 Add MaxCoin support 2014-05-27 01:12:30 +02:00
Jan Berdajs
c0baf790f6 making new algorithms and other changes merged from sph-sgminer work with current version of sgminer 2014-05-27 01:11:54 +02:00
Jan Berdajs
93e3a6d107 Merge branch 'master' into sph
Not working yet, need to upgrade algorithm_t

Conflicts:
	configure.ac
	driver-opencl.c
	miner.h
	ocl.c
	sgminer.c
	util.c
2014-05-24 21:22:04 +02:00
troky
22a3c5b6fe Reverting 83d71da. VS2010 fix. 2014-05-22 09:55:43 +02:00
Noel Maersk
ecfd497467 core: remove second-to-last remnants of hotplug.
If you grep hotplug, you'll find two more occurences as a function
argument, but it's unused.
2014-05-11 17:28:25 +03:00
elbandi
e32dcd7190 Mark pool as idle if stratum restart is failed 2014-05-08 00:04:01 +02:00
elbandi
98676763b9 Set the pool idle and switch pool, if need 2014-05-08 00:02:39 +02:00
Noel Maersk
5b054542db config: Don't write commas if not needed, default to opt_algorithm when adding pool without one set explicitly. 2014-05-05 15:34:02 +03:00
sterlingpickens
83d71da225 Update sgminer.c 2014-05-02 09:36:35 -07:00
Elbandi
973dcefa8c Use get_pool_name everywhere 2014-04-24 12:09:56 +02:00
Noel Maersk
3d7167ce2c config: improve pool section writing.
Order so JSON's not broken, write `priority` and `algorithm`.

Closes #102.
2014-04-18 17:31:06 +03:00
phm
0001517ac0 Merge branch 'marucoin'
Conflicts:
	Makefile.am
	configure.ac
	driver-opencl.c
	miner.h
	ocl.c
	sgminer.c
2014-04-15 19:43:30 +02:00
phm
67cf41a50c Added support for MaruCoin 2014-04-15 00:20:05 +02:00
Noel Maersk
92c3b5eb48 api: set algorithm properly on addpool. 2014-04-12 17:32:41 +03:00
Noel Maersk
3c3a58475e ui+api: ask for pool name/description/algorithm when adding pool from NCurses/API.
Closes #116.

This is trivial and shouldn't be so hard: it required modifying
functions in both sgminer.c (for NCurses stuff) and api.c. There is
much code repetition, since the NCurses interface is hard-coded in.
Removing it would simplify things greatly.
2014-04-11 15:06:36 +03:00
troky
01e96606f0 Fixed (pool) algo selection. 2014-04-11 10:41:37 +02:00
Noel Maersk
da667d63e0 config: write pool name and description to config. 2014-04-11 03:01:13 +03:00
Noel Maersk
2c00158216 Merge pull request #189 from Bllacky/patch-7
Update sgminer.c
2014-04-10 18:47:28 +03:00
Noel Maersk
b3d483a035 core: revert two of the changes in Bllacky's pull request #187.
`ndigits` is actually an int, used as a field width specifier in
snprintf().

s is an extensively-used pointer.
2014-04-09 22:37:07 +03:00
Bllacky
fe64ac99d6 Update sgminer.c
One small change to work well with previous ones.
Number of warnings now is 151, down from 157.

Still a long way to go. Most of the serious warnings are related to variables in miner.h, which is so intertwined with everything else that I fear of breaking something or making performance worse if I touch miner.h too much.
2014-04-09 22:17:37 +03:00
Bllacky
1dc8aabda9 Update sgminer.c
Minor changes to variable declaration.
Should reduce the number of warnings by about 5.
2014-04-09 22:03:12 +03:00
Noel Maersk
aa5f4c713b config: add const qualifier to set_pool_{algorithm,nfactor}().
MSVS doesn't like implicit casting.
2014-04-08 14:28:50 +03:00
Noel Maersk
e7078a5e16 misc: clarify currentpool() comment. 2014-04-07 22:51:23 +03:00
Noel Maersk
f6616aa63b config: allow specifying per-pool algorithm with --algorithm instead of --pool-algorithm.
This will probably only work with config file, though, since it relies
on json_array_index.
2014-04-07 22:43:43 +03:00
Noel Maersk
53a199a21d config: use get_pool_name() in set_pool_algorithm() and set_pool_nfactor(). 2014-04-07 22:21:57 +03:00
Noel Maersk
af879b1c77 core/misc: rename set_poolname() to set_pool_name(). 2014-04-07 22:19:57 +03:00
Noel Maersk
3ddf6baad9 core: rename default_algorithm to opt_algorithm.
... So it's easier to find when refactoring the configuration system
later on.
2014-04-07 22:09:05 +03:00
Noel Maersk
0793c96074 Merge remote-tracking branch 'mrbrdo/poolalgo' into poolalgo
Conflicts (resolved):
	ocl.h
	sgminer.c
2014-04-07 22:05:33 +03:00
Noel Maersk
b6218e20c1 config: rename --pool-priority to --priority, --coin to --description.
There are now get_current_pool() and current_pool(), which is confusing.
Moved them closer together, so it's at least obvious.
2014-04-07 21:14:17 +03:00
phm
7678db6801 Fixed problem with stratum support when mining FC, GRS and TWE. Added --difficulty-multiplier parameter for controlling stratum difficulty multiplier. 2014-04-05 20:55:22 +02:00
phm
769c9f8036 Merge branch 'twecoin'
Conflicts:
	Makefile.am
	configure.ac
	driver-opencl.c
	miner.h
	ocl.c
	sgminer.c
	sph/Makefile.am
2014-04-05 17:41:42 +02:00
phm
474091c426 Added support for Twecoin 2014-04-05 17:27:59 +02:00
Jan Berdajs
cdb817bcbd Change algorithm more robustly and faster, previous way was buggy 2014-03-31 21:05:20 +02:00
Jan Berdajs
c2131df6aa add support for setting algorithm/nfactor for each pool separately, and fix bugged OpenCL thread cleanup (thread shutdown) 2014-03-31 21:05:20 +02:00
phm
a683f935a4 Merge branch 'sifcoin'
Conflicts:
	Makefile.am
	configure.ac
	driver-opencl.c
	miner.h
	ocl.c
	sgminer.c
2014-03-31 17:06:16 +02:00
phm
0f88162c39 Added support for Sifcoin 2014-03-31 17:02:06 +02:00
Noel Maersk
a57f841570 Revert "fix for mingw-w64"
This reverts commit 32b13ccb46.

Reported by Wolf0 (aka wolf9466) to not break MinGW 64-bit compilation
with GCC 4.8.2 (latest stable).
2014-03-29 03:04:30 +02:00
Noel Maersk
db0f7cf6f0 core: silence gcc warning about sprintf() use in add_pool() - this time for sure. 2014-03-28 17:21:10 +02:00
Noel Maersk
5896da18b1 core: remove total_users, total_passes, total_userpasses (no longer used).
Silence gcc warnings.

Need for these accounting vars removed a few commits ago by troky.
2014-03-28 16:30:11 +02:00
Noel Maersk
08ff1574df config: write algorithm to config if not default.
Closes https://github.com/veox/sgminer/issues/175
2014-03-28 16:28:15 +02:00
Noel Maersk
8203fea539 config: move --coin in config table (alphabetically). 2014-03-27 17:58:16 +02:00
Noel Maersk
e7ca7fabba Merge pull request #168 from troky/testing
--pool-priority, --coin and fix for #80
2014-03-27 17:51:01 +02:00
Noel Maersk
10ec7769c8 pool: don't pass unused argument to sprintf() in add_pool().
Silences gcc warning.
2014-03-26 18:41:18 +02:00
Noel Maersk
ac3d13880c Revert "core: correctly parse boolean configuration values."
This reverts commit 8dd1c2d4af.

Introduced a security bug: since CCAN/opt is used to parse the JSON
config (something it is not meant to do), it was possible to specify
the default of

    "api-listen":false

in .conf and expect the API to be disabled. However, since CCAN/opt
does not check for parameters to OPT_WITHOUT_ARG, this got set to
true anyway, and enabled the API on a (possibly unfirewalled) network.

For this reason, configuration options are not named uniformly.

This should have been reverted as soon as it became known:

4c4b909be6 (Fri Feb 28)

Sorry for that.
2014-03-26 18:34:49 +02:00
troky
bcb78ed91b Added --coin pool parameter. 2014-03-26 11:10:41 +01:00
troky
17f5e296a9 Fixed configuration/command line parsing. 2014-03-26 10:46:17 +01:00
troky
8db53026cb Added --pool-priority 2014-03-25 20:37:45 +01:00
Martin Danielsen
01b3f70b63 A new --no-client-reconnect command that disables the 'client.reconnect' function.
It looks like there's an exploit that abuses said command, but it is still not clear exactly how.

There's also an additional message when the reconnect happens: "WARNING: POTENTIAL CLIENT.EXPLOIT!", but it requires you to be actively monitoring your log to catch it, and in which case you already get a "Reconnect requested from Pool 0 to 127.0.0.1" message.

Note that disabling 'client.reconnect' might affect some pools that rely on the feature, like pools that you lease your rig to.

Oh and this is dry-coded. :)
2014-03-24 15:12:40 +02:00
phm
983eae1142 Merge branch 'groestlcoin'
Conflicts:
	Makefile.am
	configure.ac
	driver-opencl.c
	miner.h
	ocl.c
	sgminer.c
2014-03-22 23:58:10 +01:00
phm
764d8706b4 Added support for GroestlCoin. 2014-03-22 23:50:21 +01:00
phm
a0c0975bb8 Merge branch 'animecoin'
Conflicts:
	Makefile.am
	configure.ac
	driver-opencl.c
	miner.h
	ocl.c
	sgminer.c
2014-03-20 18:36:28 +01:00
phm
35744a86c2 Merge branch 'inkcoin'
Conflicts:
	Makefile.am
	configure.ac
	driver-opencl.c
	miner.h
	ocl.c
	sgminer.c
2014-03-20 17:52:31 +01:00
Noel Maersk
106dbee1f9 core: check if GPU thread is disabled before checking if it's waiting on getwork.
Otherwise the watchdog thread segfaults on checking an uninitialised
thr->getwork value.
2014-03-17 21:57:00 +02:00
Noel Maersk
87801c2578 opencl: rename cgpu_info->kname to cgpu_info->kernelname. 2014-03-17 21:57:00 +02:00
Noel Maersk
1333ed576d core: simplify kernel selection code.
WIP!

Use a string instead of a state-machine-ey kernel selection mechanism
where kernel names have to be predefined. This should allow just dropping
new kernels into dir `kernel` without bloating the code in three other
places.

Is in dire need of a cleanup, function parameter check, edge case check -
all the usual testing.

In particular, checking these definitions/keywords:

* enum cl_kernels
* kname
* [c]gpu[s]->kernel (and similar)
* memory cleanup after strdup()?..
* chosen_kernel
* queue_scrypt_kernel
* strbuf
* initCl
2014-03-17 21:56:43 +02:00
phm
e260e79ab2 Added support for FugueCoin 2014-03-17 19:25:43 +01:00
Noel Maersk
fc902f0f41 pool: add back --poolname as hidden option for backward compatibility.
+ Udate NEWS.
2014-03-15 19:08:24 +02:00
troky
49aef7100f Reverting "poolname" to "name". 2014-03-15 19:08:24 +02:00
unknown
958764fecc MSVS build: Fixed debug build. MSVS doesn't like uninitialized variables. 2014-03-15 12:47:32 +01:00
Noel Maersk
8079d054d6 Merge branch 'nfactor'
Conflicts (resolved):
	Makefile.am
	winbuild/sgminer.vcxproj.filters
2014-03-14 17:46:54 +02:00
unknown
0e37fc24b0 Added algorrithm name to "coin" API command. Changed default algo name to "scrypt". 2014-03-13 23:02:51 +01:00
Noel Maersk
a3f9b24c69 core: set default algorithm for when neither --algorithm nor --nfactor are provided. 2014-03-07 02:27:06 +02:00
Noel Maersk
c6a27709f8 core: use global algorithm structure instead of opt_nfactor.
Also squashed:

config: add log messages to set_algo() and set_nfactor().

algorithm: use set_algorithm_nfactor() when setting default nfactor in set_algorithm().

Otherwise algorithm->n defaults to 0.

P.S. Did I already mention how this could have been C++?..
2014-03-07 02:27:06 +02:00
Noel Maersk
a0c52bf67c config: introduce set_nfactor() and use it to call set_algorithm_nfactor().
Had two bugs:

1. Will not compile due to unknown algorithm_t size.
2. nfactor is set to 0 (bad calling, fix later).

So squashed two commits:

1. algorithm: move algorithm_t definition to header.
2. config: if --nfactor is specified, properly set algorithm->nfactor.
2014-03-07 02:27:06 +02:00
Noel Maersk
92b7770212 config: add --algorithm option and documentation.
Doc in `doc/configuration.md` (has to be started sometime, no?).

Configuration function has to be lamely-named set_algo(), because
set_algorithm() is already declared in algorithm.h (prevent namespace
conflict).

algorithm has to be added as global variable due to the way the
callback is done (by CCAN/opt, which in itself is nice).

This can be cleaned up significantly by (at least) introducing a
global configuration struct, but there is no reason to do it now
just for this - better a wholesale manana.
2014-03-07 02:27:00 +02:00
phm
66f508d01f Added support for AnimeCoin 2014-03-05 18:00:30 +01:00
Noel Maersk
ded4452316 ui: check for opt_incognito is Display settings menu. 2014-03-02 20:41:49 +02:00
Noel Maersk
9c0f912434 core: remove ifdef from opt_compact and opt_incognito declaration. 2014-03-02 19:13:08 +02:00
phm
8fe1b860c5 Added support for MyriadCoin groestl algorithm. 2014-03-01 09:33:32 +01:00
Noel Maersk
428061e416 pool: display URL instead of "Pool N" if no poolname provided.
This works since get_pool_name() in pool.c checks if an empty string is
provided, and uses the URL instead if so.
2014-02-28 23:56:14 +02:00
Noel Maersk
d58de45c0e pool: use get_pool_name() where appropriate. 2014-02-28 23:22:40 +02:00
Noel Maersk
0a4f71882c pool: use get_pool_user(). 2014-02-28 22:45:07 +02:00
Noel Maersk
8e4fb3c554 pool: abstract get_pool_name()
The introduction of get_pool_name() warrants a separate function
so opt_incognito does not litter everywhere.
2014-02-28 22:15:39 +02:00
Noel Maersk
0d562ffbf5 core: use opt_incognito in a few more applog() places. 2014-02-28 22:13:42 +02:00
Noel Maersk
888fab437f ui: <incognito> pool name in incognito mode, too.
Ah, what the heck. If it's a pool-related, we'll just ask.
2014-02-28 04:13:22 +02:00
Noel Maersk
a511266959 doc: minor fix for --help message on --incognito. 2014-02-28 03:35:32 +02:00
Noel Maersk
5a8f84b49b ui: allow switching to incognito mode through ncurses interface. 2014-02-28 03:00:12 +02:00
Noel Maersk
d78f372712 core: undo some of previous two commits and andd conditionals to display user name as <incognito> instead.
Fix whitspace (squashed).
2014-02-28 02:46:56 +02:00