whirlpool-client-cli issueshttps://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues2019-06-18T10:06:08Zhttps://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/3Incorrect API key header2019-06-18T10:06:08ZzeroleakIncorrect API key header*Created by: Technifocal*
Documentation states you need to send `API_KEY`:
https://github.com/Samourai-Wallet/whirlpool-client-cli/blob/bfaa0d6afea34431d3f275dcd2178025605433ce/README-API.md
Code requires `apiKey`:
https://gith...*Created by: Technifocal*
Documentation states you need to send `API_KEY`:
https://github.com/Samourai-Wallet/whirlpool-client-cli/blob/bfaa0d6afea34431d3f275dcd2178025605433ce/README-API.md
Code requires `apiKey`:
https://github.com/Samourai-Wallet/whirlpool-client-cli/blob/66f254d8fdad1aac920505c769e8156c26d812a9/src/main/java/com/samourai/whirlpool/cli/api/protocol/CliApi.java#L6https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/4Feature request: Whirlpool to address2022-10-12T10:24:39ZzeroleakFeature request: Whirlpool to address*Created by: Technifocal*
As of current it is trivial to identify that an address is controlled by a hot wallet: if it is an output of a whirlpool, it's part of the whirlpool's mnemonic.
A feature I would like to see is the ability to ...*Created by: Technifocal*
As of current it is trivial to identify that an address is controlled by a hot wallet: if it is an output of a whirlpool, it's part of the whirlpool's mnemonic.
A feature I would like to see is the ability to provide an address to the API of `whirlpool-client-cli` that makes the last `mixsTarget` round spend to that address. For privacy's sake, the address would have to be the same type of address that `whirlpool-client-cli` generates internally (bech 32).
This would confuse potential watchers of the blockchain if the address is a cold wallet (I.E. fully offline) or simply a UTXO that has hit it's `mixsTarget`/gone offline.https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/5Feature request: Set sat/byte miner fees for tx0, and pool mining fees2019-07-20T18:00:17ZzeroleakFeature request: Set sat/byte miner fees for tx0, and pool mining fees*Created by: Technifocal*
I'd like to see two new features added to the `tx0` creation API call.
1. `sat/byte` value that affects the actual tx0 transaction
2. An `overfund by` value that configures how much more than the poolsize e...*Created by: Technifocal*
I'd like to see two new features added to the `tx0` creation API call.
1. `sat/byte` value that affects the actual tx0 transaction
2. An `overfund by` value that configures how much more than the poolsize each UTXO should be valued at. This value should be sanity checked against the pool's `mustMixBalanceMin` and `mustMixBalanceMax`.
For example, on the `tx0` API call, two new parameters could be added:
`feeSatPerByte`
and
`mixUtxoOverspend`
and an API query (in bash for the lowest fee) might look like:
```
OVERSPEND="$(($(http --body 'http://127.0.0.1:8899/rest/pools' "apiKey:${API_KEY}" | jq '.pools[] | select(.denomination == 1000000) | .mustMixBalanceMin')-1000000))"
http "http://localhost:8899/rest/utxos/${hash}:${index}/tx0" "apiKey:${API_KEY}" 'poolId=0.01btc' 'feeSatPerByte=2' "mixUtxoOverspend=${OVERSPEND}"
```https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/6TOR workijg or Not2019-07-20T16:54:29ZzeroleakTOR workijg or Not*Created by: ghost*
Not sure there is an issue or not but wanted to send in a Screen Shot of Logs I got for 0.7.0 with TOR running CLI only.
I spun up 4 different CLI and all seem to run, just want to make sure functioning right. Se...*Created by: ghost*
Not sure there is an issue or not but wanted to send in a Screen Shot of Logs I got for 0.7.0 with TOR running CLI only.
I spun up 4 different CLI and all seem to run, just want to make sure functioning right. See attached Screen Shots.
![IMG_20190702_100853_506](https://user-images.githubusercontent.com/51298667/60519758-2fb4ca80-9cb2-11e9-9455-3bb98f62a11c.jpg)
![IMG_20190702_100856_746](https://user-images.githubusercontent.com/51298667/60519768-33e0e800-9cb2-11e9-84a2-bbfcab18a9e9.jpg)
https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/7Reason for utilising clearnet address instead of OnionV3 address2019-07-12T08:50:01ZzeroleakReason for utilising clearnet address instead of OnionV3 address*Created by: Technifocal*
As per @SamouraiDev's suggestion on Telegram, I am posting this question here:
In the function [computeServerUrl()](https://github.com/Samourai-Wallet/whirlpool-client-cli/blob/d289ddd7df636c31765dbdedc4198b...*Created by: Technifocal*
As per @SamouraiDev's suggestion on Telegram, I am posting this question here:
In the function [computeServerUrl()](https://github.com/Samourai-Wallet/whirlpool-client-cli/blob/d289ddd7df636c31765dbdedc4198bbb68061a7b/src/main/java/com/samourai/whirlpool/cli/config/CliConfigFile.java#L278-L283) you always return the clearnet server URL defined [here](https://github.com/Samourai-Wallet/whirlpool-client/blob/9c399cb873397ac0956458cacc1e21d7ae409a3b/src/main/java/com/samourai/whirlpool/client/wallet/beans/WhirlpoolServer.java#L22).
As the code to detect Tor and return the Tor hidden service is specifically commented out, I'm wondering what the reason for not using the Tor V3 address is? Especially as the Tor hidden service is up and running:
```
$ torify curl 'udkmfc5j6zvv3ysavbrwzhwji4hpyfe3apqa6yst7c7l32mygf65g4ad.onion/rest/pools'
{"pools":[...]}
```
Thanks.zeroleakzeroleakhttps://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/8The following artifacts could not be resolved: com.msopentech.thali:java:jar:...2022-10-16T00:40:10ZzeroleakThe following artifacts could not be resolved: com.msopentech.thali:java:jar:0.0.3, com.msopentech.thali:universal:jar:0.0.3*Created by: mikispag*
`mvn clean install -Dmaven.test.skip=true -U`
```
[...]
Downloading from central: https://repo.maven.apache.org/maven2/com/msopentech/thali/java/0.0.3/java-0.0.3.jar
Downloading from central: https://repo.maven.a...*Created by: mikispag*
`mvn clean install -Dmaven.test.skip=true -U`
```
[...]
Downloading from central: https://repo.maven.apache.org/maven2/com/msopentech/thali/java/0.0.3/java-0.0.3.jar
Downloading from central: https://repo.maven.apache.org/maven2/com/msopentech/thali/universal/0.0.3/universal-0.0.3.jar
[ERROR] Failed to execute goal on project whirlpool-client-cli: Could not resolve dependencies for project com.github.Samourai-Wallet:whirlpool-client-cli:jar:0.7.1: The following artifacts could not be resolved: com.msopentech.thali:java:jar:0.0.3, com.msopentech.thali:universal:jar:0.0.3: Could not find artifact com.msopentech.thali:java:jar:0.0.3 in jitpack.io (https://jitpack.io)
```
Both packages look missing.https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/9Mix Target no Updating2019-07-15T06:40:46ZzeroleakMix Target no Updating*Created by: ghost*
I have been running CLI with commands:
java -jar whirlpool-client-cli-0.7.1-run.jar --server=mainnet --clients=1 --auto-mix --authenticate --debug --debug-client --mixs-target=10
When I first started mixing my ...*Created by: ghost*
I have been running CLI with commands:
java -jar whirlpool-client-cli-0.7.1-run.jar --server=mainnet --clients=1 --auto-mix --authenticate --debug --debug-client --mixs-target=10
When I first started mixing my mix-target has been set to 5. I have been checking the thread in CLI and each UTXO that is currently in queue still shows mix target of 5, see picture below. Am I doing something wrong or is this an issue?
![Screen Shot 2019-07-14 at 11 44 18 AM](https://user-images.githubusercontent.com/51298667/61185915-bbbcdf80-a62c-11e9-87f3-83cb458f6039.png)https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/10Post-Mix missing2019-07-18T20:28:47ZBTCxZelkoPost-Mix missingHad a 0.5 Pre-mix and immediately mixed. Can no longer find it. When sent the transaction from that mix I can see my mix and can trace by to me but It is not in appearing in my wallet/GUI/Postmix or anywhere I can find.
Background: I...Had a 0.5 Pre-mix and immediately mixed. Can no longer find it. When sent the transaction from that mix I can see my mix and can trace by to me but It is not in appearing in my wallet/GUI/Postmix or anywhere I can find.
Background: I run own CLI. But i also tried switching back to GUI standalone CLI to see if it would generate and no luck.https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/11"Trying to join mix"2019-07-20T17:59:25ZBTCxZelko"Trying to join mix"Running whirlpool-client-cli mixes changed to trying to join a mix. I was informed that it should stay in waiting for a mix until it mixes. Any root cause to this?Running whirlpool-client-cli mixes changed to trying to join a mix. I was informed that it should stay in waiting for a mix until it mixes. Any root cause to this?https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/12API documentation incorrectly states argument 'mixsTarget' as optional2019-09-10T12:28:00ZzeroleakAPI documentation incorrectly states argument 'mixsTarget' as optional*Created by: Technifocal*
In `README-API.md` it states that `mixsTarget` is optional for `/tx0`:
[mixsTarget (optional): override utxo's mixsTarget](https://github.com/Samourai-Wallet/whirlpool-client-cli/blob/74dad036996598bc4fe1de3...*Created by: Technifocal*
In `README-API.md` it states that `mixsTarget` is optional for `/tx0`:
[mixsTarget (optional): override utxo's mixsTarget](https://github.com/Samourai-Wallet/whirlpool-client-cli/blob/74dad036996598bc4fe1de3770c28f03351d0b1f/README-API.md#tx0-post-restutxoshashindextx0)
Unfortunately this throws an error:
```
java.lang.NullPointerException: null
at com.samourai.whirlpool.cli.api.controllers.utxo.UtxoController.tx0(UtxoController.java:77) ~[classes!/:na]
[...stack trace...]
```
[NullPointerException is thrown here](https://github.com/Samourai-Wallet/whirlpool-client-cli/blob/bfaa0d6afea34431d3f275dcd2178025605433ce/src/main/java/com/samourai/whirlpool/cli/api/controllers/utxo/UtxoController.java#L77)
Sending `mixsTarget` allows the UTXO to be tx0'd as normal.zeroleakzeroleakhttps://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/13[Tor] bridge support for whirlpool-cli-config.properties file2020-03-10T14:11:36Zzeroleak[Tor] bridge support for whirlpool-cli-config.properties file*Created by: nickodev*
I tried setting the <code>cli.torConfig.executable</code> to my locally installed tor: /usr/bin/tor in <code>whirlpool-cli-config.properties</code>, but it is not using my torrc file which has the configured bridg...*Created by: nickodev*
I tried setting the <code>cli.torConfig.executable</code> to my locally installed tor: /usr/bin/tor in <code>whirlpool-cli-config.properties</code>, but it is not using my torrc file which has the configured bridges and my tor connection can not be established.
Is there any way to set the bridge and transport in the whirlpool config (properties) file to be able to connect to the tor network?https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/14Issue with REST API: Stop mixing UTXO2019-12-30T19:14:59ZzeroleakIssue with REST API: Stop mixing UTXO*Created by: jaimefoo*
In last versions of whirlpool (0.9.1 at least) you could do:
POST /rest/utxos/{hash}:{index}/stopMix
to "freeze" a particular utxo and avoid it entering a mix
Now the same command returns a 200 OK, but i...*Created by: jaimefoo*
In last versions of whirlpool (0.9.1 at least) you could do:
POST /rest/utxos/{hash}:{index}/stopMix
to "freeze" a particular utxo and avoid it entering a mix
Now the same command returns a 200 OK, but in reality whirlpool drops a ""mixStop ignored: not mixing" when its status is " MIX_QUEUE MIXABLE". It only works when that utxo is with status "MIX_STARTED HASH_MIXING". https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/15Feature request: UTXO address in ApiUtxo2022-04-23T11:15:29ZDojoCoderFeature request: UTXO address in ApiUtxoIt would be helpful to add utxo address to ApiUtxo class, so we can show this address in the GUI along with TX id to be able to copy it out and paste to block explorer.It would be helpful to add utxo address to ApiUtxo class, so we can show this address in the GUI along with TX id to be able to copy it out and paste to block explorer.https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/16Whirlpool-cli crashing - java.lang.OutOfMemoryError2020-01-07T19:00:47ZDojoCoderWhirlpool-cli crashing - java.lang.OutOfMemoryErrorMy whirlpool-cli is crashing every day due to java.lang.OutOfMemoryError. Sometimes it is able to be killed gracefully, sometimes there is a need to kill the whole Java process.
Hardware: Raspberry Pi4
OS: Raspbian
logs:
```bas...My whirlpool-cli is crashing every day due to java.lang.OutOfMemoryError. Sometimes it is able to be killed gracefully, sometimes there is a need to kill the whole Java process.
Hardware: Raspberry Pi4
OS: Raspbian
logs:
```bash
at org.springframework.messaging.simp.stomp.DefaultStompSession.afterConnectFailure(DefaultStompSession.java:398) ~[spring-messaging-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
at org.springframework.web.socket.messaging.WebSocketStompClient$WebSocketTcpConnectionHandlerAdapter.onFailure(WebSocketStompClient.java:314) ~[spring-websocket-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
at org.springframework.util.concurrent.ListenableFutureCallbackRegistry.notifyFailure(ListenableFutureCallbackRegistry.java:86) ~[spring-core-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
at org.springframework.util.concurrent.ListenableFutureCallbackRegistry.addCallback(ListenableFutureCallbackRegistry.java:67) ~[spring-core-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
at org.springframework.util.concurrent.ListenableFutureTask.addCallback(ListenableFutureTask.java:61) ~[spring-core-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
at org.springframework.util.concurrent.SettableListenableFuture.addCallback(SettableListenableFuture.java:76) ~[spring-core-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
at org.springframework.web.socket.messaging.WebSocketStompClient.connect(WebSocketStompClient.java:268) ~[spring-websocket-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
at org.springframework.web.socket.messaging.WebSocketStompClient.connect(WebSocketStompClient.java:249) ~[spring-websocket-5.1.6.RELEASE.jar!/:5.1.6.RELEASE]
at com.samourai.stomp.client.JavaStompClient.connect(JavaStompClient.java:68) ~[classes!/:na]
at com.samourai.stomp.client.StompTransport.connect(StompTransport.java:33) ~[whirlpool-client-0.23.0.jar!/:na]
at com.samourai.whirlpool.client.mix.dialog.MixSession.connect(MixSession.java:77) ~[whirlpool-client-0.23.0.jar!/:na]
at com.samourai.whirlpool.client.mix.dialog.MixSession$3.onTransportDisconnected(MixSession.java:278) ~[whirlpool-client-0.23.0.jar!/:na]
at com.samourai.stomp.client.StompTransport$1.onError(StompTransport.java:54) ~[whirlpool-client-0.23.0.jar!/:na]
at com.samourai.stomp.client.StompTransport$1.onError(StompTransport.java:36) ~[whirlpool-client-0.23.0.jar!/:na]
at com.samourai.stomp.client.JavaStompClient$1.handleTransportError(JavaStompClient.java:149) ~[classes!/:na]
2020-01-06 23:26:17.624 ERROR 8929 --- [t-1578349073606] c.samourai.stomp.client.JavaStompClient : ! transportError: java.lang.OutOfMemoryError: unable to create native thread: possibly out of memory or process/resource limits reached
2020-01-06 23:26:17.625 INFO 8929 --- [t-1578349073606] c.s.w.c.m.d.MixSession[1578349073606] : ! Failed to connect to server. Please check your connectivity or retry later.
2020-01-06 23:26:17.625 ERROR 8929 --- [t-1578349073606] c.s.w.c.mix.MixClient[1578349073606] : ERROR: Disconnected
2020-01-06 23:26:17.625 ERROR 8929 --- [t-1578349073606] s.w.c.w.l.LoggingWhirlpoolClientListener : - [MIX] ⣿ WHIRLPOOL FAILED ⣿ Disconnected
2020-01-06 23:26:17.626 INFO 8929 --- [t-1578349073606] c.s.w.client.wallet.WhirlpoolWallet : onMixFail(DISCONNECTED): will retry later
^C[76894,737s][warning][os,thread] Failed to start thread - pthread_create failed (EAGAIN) for attributes: stacksize: 320k, guardsize: 0k, detached.
```https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/17UTXO selection for freeriding based on confirmations2020-03-30T15:55:01ZCrazyk031crazyk@samourai.ioUTXO selection for freeriding based on confirmationsAs it stands now it seems the same "coins/UTXOs" just keep getting cycled over & over, so if you have a large set of UTXOs in Whirlpool many mix once and thats it, then a small minority keep getting freerides. My suggestion is UTXOs get ...As it stands now it seems the same "coins/UTXOs" just keep getting cycled over & over, so if you have a large set of UTXOs in Whirlpool many mix once and thats it, then a small minority keep getting freerides. My suggestion is UTXOs get chosen for freerides based on which has the most confirmations. Then your whole UTXO stack would constantly cycle through evenly. https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/180.10.4: GUI hang on long disconnect2022-04-23T11:15:56Zzeroleak0.10.4: GUI hang on long disconnect*Created by: r4v3r23*
- GUI connected to CLI via API on same machine.
- whirlpool-cli running in background
- deactivated wifi for about an hour then reconnected
- GUI became unresposive to logout/stop requests
- after closing wallet w...*Created by: r4v3r23*
- GUI connected to CLI via API on same machine.
- whirlpool-cli running in background
- deactivated wifi for about an hour then reconnected
- GUI became unresposive to logout/stop requests
- after closing wallet was failing to open giving the v2 onion error
- restarting computer fixed issue and mix counts resethttps://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/19Startup failure for `clients` option on 0.10.42020-04-14T13:19:43ZzeroleakStartup failure for `clients` option on 0.10.4*Created by: MrHash*
Cannot start client with any value for `--clients` startup option, nor removing the option from startup command.
```
Failed to bind properties under 'cli.mix.clients' to int:
Property: cli.mix.clients
...*Created by: MrHash*
Cannot start client with any value for `--clients` startup option, nor removing the option from startup command.
```
Failed to bind properties under 'cli.mix.clients' to int:
Property: cli.mix.clients
Value:
Origin: URL [file:whirlpool-cli-config.properties]:5:0
Reason: failed to convert java.lang.String to @javax.validation.constraints.NotEmpty int
```https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/20Be able to selectively enable tor only for the coordinator2020-04-14T14:01:36ZzeroleakBe able to selectively enable tor only for the coordinator*Created by: ketominer*
When CLI and Dojo are running on the same device, it would be great to be able to access Dojo from CLI through cli.dojo.url=http\://127.0.0.1:port/v2/ instead of doing a round trip through tor. Currently, when to...*Created by: ketominer*
When CLI and Dojo are running on the same device, it would be great to be able to access Dojo from CLI through cli.dojo.url=http\://127.0.0.1:port/v2/ instead of doing a round trip through tor. Currently, when tor is enabled, CLI tries to reach 127.0.0.1 through tor, which fails. Maybe that could be done by setting cli.tor=coordonly or something like that :) That would greatly improve the reliability of CLI when running with Dojo.https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/21mixsDone gets forgotten, how to reconstruct2020-06-18T15:08:19ZzeroleakmixsDone gets forgotten, how to reconstruct*Created by: blamb5*
I have been mixing several hundreds of addresses with mixs-target=10 and after months I had a few dozens of mixsDone=10. But then all of sudden I noticed that many 10s disappeared and got reset to 1. Not all of them...*Created by: blamb5*
I have been mixing several hundreds of addresses with mixs-target=10 and after months I had a few dozens of mixsDone=10. But then all of sudden I noticed that many 10s disappeared and got reset to 1. Not all of them and probably not just 10s. Simply it seemed like I had done many fewer mixes than in the reality. I don't know how it happened, I didn't do anything strange with the cli, only I stopped it quite many times to compile a new version from git. Fortunately I did have some oldish backups of both json files but still I "lost" several months of mixing. I shrugged and let it be until yesterday, another couple of months of mixing later, I again noticed that many mixsDone had been reset to 1. so I am letting you know that there might be a bug. Maybe something is wrong with my machine but it's a stable powerful underutilized server with a rather reliable filesystem (zfs on raid1) so I don't know. Maybe it happened to other people too, they just never noticed.
So I decided to recalculate the correct mixsDone values and fix the whirlpool-cli-utxos-xxx.json file. From zpub I generated a list of my addresses and then I took each utxo (just a copy&paste of UTXO column from "O" cli command output) and went back in transactions and counted how many times one of the input addresses belongs to my list and that was the correct mixsDone. Now all my mixsDone are correct again, I even got a couple of mixsDone=11.
If anyone notices the same problem, here is a little tool for this reconstruction I made in Python: https://pastebin.com/W0b4dqp3https://code.samourai.io/whirlpool/whirlpool-client-cli/-/issues/23Derivation index is frozen2022-02-14T08:17:33ZViktorDerivation index is frozenHey! I've been using whirlpool cli for a long time. Near week ago I got a freeze for cli (with api). After restart it balances (which really existed on addresses with some derivation index) not loaded. How I can force reload and resync a...Hey! I've been using whirlpool cli for a long time. Near week ago I got a freeze for cli (with api). After restart it balances (which really existed on addresses with some derivation index) not loaded. How I can force reload and resync all addresses? Or I have to use another wallet to move frozen coins?