262 Commits

Author SHA1 Message Date
Miguel Freitas
f75fc11274 getlocaldirectmessages: get decrypted direct messages sent/received by user 2013-10-14 11:41:40 -03:00
Miguel Freitas
f4939a7874 create structure per local user to keep m_following and directmsgs
add proper mutexes to twister.cpp
2013-10-08 15:39:56 -03:00
Miguel Freitas
cb7f080b75 less noisy. disable some dht announce and already connected messages 2013-10-06 23:02:30 -03:00
Miguel Freitas
7182f1bad8 getlasthave 2013-10-06 22:29:17 -03:00
Miguel Freitas
0071cb31db support key replacement from json rpc. seems to work. 2013-10-02 19:04:38 -03:00
Miguel Freitas
ea32a5a117 - begin refactoring twister_utils.h
- new rpc commands getdefaultuser/setdefaultuser (why is it not setting default on creation?)
- putdht now receives a generic json value parameter
2013-09-28 17:17:14 -03:00
Miguel Freitas
adeeb15213 implement very very simple html server to fix cross-domain problems executing json-rpc from browser 2013-09-28 07:47:07 -03:00
Miguel Freitas
8294e75672 listusernamespartial rpc 2013-09-21 17:53:55 -03:00
Miguel Freitas
ac55203421 follow/unfollow rpc 2013-09-20 23:05:38 -03:00
Miguel Freitas
2e1c79a4c8 setspammsg rpc 2013-09-20 19:51:56 -03:00
Miguel Freitas
5e68d4e2ae new getposts rpc 2013-09-20 18:59:31 -03:00
Miguel Freitas
460be48e63 rpc cleanups 2013-09-19 07:23:54 -03:00
Miguel Freitas
198c85f8ae newrtmsg command working. requires original post json object "v" (containing userpost/sig_userpost) 2013-09-18 23:09:51 -03:00
miguel
b9c5b90e4d error handling in newpostmsg and newdirectmsg implemented 2013-08-20 21:08:18 -03:00
miguel
5112e73a07 newpostmsg command, working. 2013-08-20 12:18:03 -03:00
Miguel Freitas
8ed88a6eb3 dhtget/dhtput threadsafe 2013-08-07 08:43:50 -03:00
Miguel Freitas
830a02c009 dht get/put kind of working. with json interface. amazing. 2013-08-05 22:33:38 -03:00
Miguel Freitas
f2699c4753 rpcwallet cleanups 2013-07-25 11:26:26 -03:00
Miguel Freitas
927aad13a5 send transation of a new user created in wallet 2013-07-25 10:45:42 -03:00
Miguel Freitas
f764674865 create/list users in wallet 2013-07-25 09:36:57 -03:00
Miguel Freitas
76f8a901a7 removing stuff 2013-07-24 20:28:23 -03:00
Miguel Freitas
26bbd5614f remove GetCoins/SetCoins 2013-07-24 18:23:05 -03:00
Miguel Freitas
6e1c42e963 tx accepted! 2013-07-20 23:58:56 -03:00
Miguel Freitas
2fa9731108 remove stuff, improve TxToJSON 2013-07-20 20:26:21 -03:00
Miguel Freitas
d9fdca340c implement CScript => string extraction, check username constraits, improve username hash 2013-07-20 19:54:48 -03:00
Jeff Garzik
091aa8dae9 RPC: add getbestblockhash, to return tip of best chain 2013-07-03 11:02:29 -04:00
Pieter Wuille
ee4949794b Merge pull request #2592 from sipa/dumpwallet
Add dumpwallet and importwallet RPC commands
2013-06-23 12:10:17 -07:00
Jeff Garzik
4be2aba302 Merge pull request #2778 from jgarzik/rpc-verifydb
RPC: add 'verifychain' to verify chain database at runtime
2013-06-22 23:08:13 -07:00
Pieter Wuille
4e534aa9d8 Add dumpwallet and importwallet RPCs
dumpwallet: produce a dump of all keys in a wallet, in a format
compatible with Bitcoin Wallet for Android and Multibit.

importwallet: import such a dump
2013-06-22 17:30:56 +02:00
Jeff Garzik
f590653377 RPC: add 'verifychain', to verify chain database at runtime 2013-06-19 11:53:02 -04:00
Mike Hearn
0e4b317555 Introduce a CChainParameters singleton class and regtest mode.
The new class is accessed via the Params() method and holds
most things that vary between main, test and regtest networks.
The regtest mode has two purposes, one is to run the
bitcoind/bitcoinj comparison tool which compares two separate
implementations of the Bitcoin protocol looking for divergence.

The other is that when run, you get a local node which can mine
a single block instantly, which is highly convenient for testing
apps during development as there's no need to wait 10 minutes for
a block on the testnet.
2013-06-19 16:28:52 +02:00
Jeff Garzik
543d70a676 Merge pull request #2747 from luke-jr/getblock_verbose0
Add verbose flag to getblock RPC so it is possible to get hex dumps of blocks
2013-06-10 08:16:39 -07:00
Luke Dashjr
2331952141 RPC: getblock(): Accept 2nd "verbose" parameter, similar to getrawtransaction, but defaulting to 1 for backward compatibility 2013-06-07 17:44:39 +00:00
Philip Kaufmann
3260b4c090 remove GetBoolArg() fDefault parameter defaulting to false
- explicitly set the default of all GetBoolArg() calls
- rework getarg_test.cpp and util_tests.cpp to cover this change
- some indentation fixes
- move macdockiconhandler.h include in bitcoin.cpp to the "our headers"
  section
2013-06-01 12:53:57 +02:00
Jeff Garzik
6bc6d57303 Merge pull request #2716 from laanwj/2013_05_30_getwork
Move pMiningKey init out of StartRPCThreads
2013-05-30 09:15:16 -07:00
Jeff Garzik
9c95a2e836 Merge pull request #2625 from gavinandresen/walletlock_asio
Use boost::asio::deadline_timer for walletpassphrase timeout
2013-05-30 08:01:22 -07:00
Wladimir J. van der Laan
d98bf10f23 Move pMiningKey init out of StartRPCThreads
This commit decouples the pMiningKey initialization and shutdown from the RPC
threads.

`getwork` and `getblocktemplate` rely on pMiningKey, and can also be ran
from the debug window in the UI even when the RPC server is not running.

Solves issue #2706.
2013-05-30 16:41:35 +02:00
Gavin Andresen
36e826cea1 Clean up mining CReserveKey to prevent crash at shutdown
Fixes issue#2687
2013-05-23 14:17:15 -04:00
Gavin Andresen
92f2c1fe0f Use boost::asio::deadline_timer for walletpassphrase timeout
New method in bitcoinrpc:  RunLater, that uses a map of deadline
timers to run a function later.

Behavior of walletpassphrase is changed; before, calling
walletpassphrase again before the lock timeout passed
would result in: Error: Wallet is already unlocked.

You would have to call lockwallet before walletpassphrase.

Now: the last walletpassphrase with correct password
wins, and overrides any previous timeout.

Fixes issue# 1961 which was caused by spawning too many threads.

Test plan:

Start with encrypted wallet, password 'foo'
NOTE:
 python -c 'import time; print("%d"%time.time())'
... will tell you current unix timestamp.

Try:

walletpassphrase foo 600
getinfo
EXPECT: unlocked_until is about 10 minutes in the future

walletpassphrase foo 1
sleep 2
sendtoaddress mun74Bvba3B1PF2YkrF4NsgcJwHXXh12LF 11
EXPECT: Error: Please enter the wallet passphrase with walletpassphrase first.

walletpassphrase foo 600
walletpassphrase foo 0
getinfo
EXPECT: wallet is locked (unlocked_until is 0)

walletpassphrase foo 10
walletpassphrase foo 600
getinfo
EXPECT: wallet is unlocked until 10 minutes in future

walletpassphrase foo 60
walletpassphrase bar 600
EXPECT: Error, incorrect passphrase
getinfo
EXPECT: wallet still scheduled to lock 60 seconds from first (successful) walletpassphrase
2013-05-07 11:47:33 -04:00
Jeff Garzik
9f4976afe2 RPC: strictly require HTTP URI "/"
Previously, JSON-RPC clients accessed URI "/", and the JSON-RPC server
did not care about the URI at all, and would accept any URI as valid.

Change the JSON-RPC server to require URI "/" for all current accesses.

This changes enables the addition of future interfaces at different
URIs, such as pull request #1982 which demonstrates HTTP REST wallet
download.

Or, a future, breaking change in JSON-RPC interface could be introduced
by serving JSON-RPC calls from new URI "/v2/".
2013-05-01 10:41:24 -04:00
Gavin Andresen
b31499ec72 Clean up shutdown process 2013-04-03 19:57:53 -04:00
Gavin Andresen
21eb5adadb Port Thread* methods to boost::thread_group 2013-04-03 19:57:13 -04:00
Gavin Andresen
1b43bf0d3a Rename util.h Sleep --> MilliSleep
Two reasons for this change:
1. Need to always use boost::thread's sleep, even on Windows, so the
sleeps can be interrupted (prior code used Windows' built-in Sleep).

2. I always forgot what units the old Sleep took.
2013-04-03 14:04:21 -04:00
Philip Kaufmann
90bd933e6d translation base files update 2013-04-02
- also includes a small change to a string in bitcoinrpc.cpp, which is not
  on Transifex anyway, so is safe to merge
2013-04-02 15:46:40 +02:00
Gavin Andresen
3d9d2d423b Recommend alertnotify 2013-03-21 10:08:21 -04:00
freewil
10ef361169 CRPCCommand.unlocked -> CRPCCommand.threadSafe
unlocked could be confused with wallet encryption
2013-03-07 06:18:55 -05:00
freewil
dcf8b8fd9e make vRPCCommands comment match property names 2013-03-07 05:29:18 -05:00
Andrew Poelstra
3913a99087 Enable dumpprivkey in safe mode 2013-02-14 11:55:55 -08:00
Matt Corallo
67a11bd6c5 Add a getaddednodeinfo RPC. 2013-01-27 03:03:04 -05:00
Matt Corallo
72a348fd9a Add addnode RPC command. 2013-01-27 03:03:04 -05:00