Miguel Freitas
bf3ec900d0
some nodes are still on the wrong chain (block 18973 with an invalid spamuser). checkpoint the
...
correct branch to force them to go to the right chain.
2014-01-13 08:03:43 -02:00
Miguel Freitas
e0dad4a114
update version
2014-01-12 23:55:55 -02:00
Miguel Freitas
77d1a4fb7b
trying to fix infinite recursion in SetBestChain
2014-01-12 23:44:33 -02:00
Miguel Freitas
ba43f10e8f
move spamuser key validation from CheckTransation to ConnectBlock.
...
reason: this is not context-independent validation.
2014-01-12 20:41:58 -02:00
Miguel Freitas
fbc7d9a77a
generalize checking if tx is in mainchain for GetTransaction
2014-01-12 19:29:33 -02:00
miguelfreitas
7e5c85279a
Merge pull request #49 from toyg/osx_makefile_backport
...
osx makefile backport of be34510
2014-01-10 12:33:04 -08:00
Miguel Freitas
9d5d203a0c
bugfix: weak checking for existing users (the transaction may exist in index only
...
but the chain it belongs was invalidated) caused fork between users who erased their
block database from yesterday and those who didn't. improve the checking (test
if tx is actually in main chain). add another checkpoint. enforce.
2014-01-10 17:36:23 -02:00
Miguel Freitas
9f9bb58635
disable safemode & add checkpoint
2014-01-10 16:04:52 -02:00
toyg
43ac45c925
osx makefile backporting of commit be34510a9a
2014-01-10 02:52:04 +00:00
Miguel Freitas
be34510a9a
When passing CC or CXX down to sub-makes, add quotes around it so that
...
blanks (say, CC=ccache distcc gcc -m64) don't mess things up.
2014-01-09 22:48:58 -02:00
Miguel Freitas
58d905aab3
change max block size as well
2014-01-09 21:50:28 -02:00
Miguel Freitas
394333a8bb
increase the number of blocks to check at startup to force people to move to the right chain.
2014-01-09 15:03:50 -02:00
Miguel Freitas
6b01734ccf
fix segfault in dhtget when ses is NULL ( http://pastebin.com/rcJQm48W )
2014-01-09 14:48:42 -02:00
Miguel Freitas
23cb6fbdb6
limit transaction size
2014-01-09 12:21:58 -02:00
Miguel Freitas
5ab658ae3d
enforce bencoded size. sanity check.
2014-01-07 16:51:40 -02:00
Miguel Freitas
8e80324c36
try to reduce the level of useless dht tracker requests by not announcing empty torrents we do not follow.
2014-01-06 21:59:40 -02:00
miguelfreitas
4eab7e4d81
Merge pull request #38 from toyg/usermessages
...
Replaced references to bitcoin/bitcoind in user-visible messages
2014-01-06 10:04:56 -08:00
Miguel Freitas
8287b2b1e1
use a single database for all swarms of the same libtorrent session.
...
upgrade resume file to version 2 and enforce on loading (to force existing clients to download all pieces again).
fixes #24 .
2014-01-06 15:10:32 -02:00
toyg
ce787d6cd3
Replaced references to bitcoin/bitcoind in user-visible messages
2014-01-06 15:53:54 +00:00
Stefan Sayer
28975dd0d2
makefile: libtorrent needs -lrt for linking
2014-01-03 01:32:37 +01:00
toyg
83dcd048bb
fixes to compile and run under OSX 10.9.1
2014-01-02 23:10:57 +00:00
toyg
65dfbef547
now compiling and running on OSX. old makefile.osx from bitcoin is still around in case we need to merge back some stuff.
2014-01-02 23:07:22 +00:00
Miguel Freitas
5462a3bf0b
increase number of file descriptors as discussed in #24
...
the original value was ok for bitcoin only but now we also need fd's for libtorrent.
2014-01-02 14:21:12 -02:00
Miguel Freitas
6708cec239
report dht_global_nodes in getinfo
2013-12-31 09:46:19 -02:00
Miguel Freitas
342d3e1478
just learned that scrypt is too slow for CBlockTreeDB::LoadBlockIndexGuts.
...
disable CheckIndex() like litecoin does.
2013-12-30 15:12:52 -02:00
Miguel Freitas
46660a989a
checkpoint
2013-12-30 14:52:41 -02:00
Miguel Freitas
339c4a00ea
TODO cleanups
2013-12-30 14:15:45 -02:00
Miguel Freitas
884e25eecc
prevent useless dhtget (for neighbor check) when torrent is already known
2013-12-30 12:24:29 -02:00
Miguel Freitas
60db413630
less noisy
2013-12-30 12:14:03 -02:00
Miguel Freitas
378e4622e3
make it 2h before blockchain is considered outdated
2013-12-17 08:08:16 -02:00
Miguel Freitas
fd404d0927
dumppubkey json return value must be hexstr
2013-12-08 18:24:25 -02:00
Miguel Freitas
4d3e7a3551
upnp enabled by default like in qmake project
2013-12-08 16:34:07 -02:00
Miguel Freitas
e26785510c
third dnsseed
2013-12-03 22:03:50 -02:00
Miguel Freitas
33a04c7cf0
improve miner response to new blocks received to prevent stale blocks being generated
2013-11-30 18:48:04 -02:00
Miguel Freitas
d2d64bfed2
make sure strSpamUser is valid before using it to sign message
2013-11-30 18:34:34 -02:00
Miguel Freitas
74470ebddb
check for key mismatch when importing keys
2013-11-30 18:21:47 -02:00
Miguel Freitas
36da093939
recheckusertorrent rpc
2013-11-23 18:25:55 -02:00
Miguel Freitas
dd128a39a1
Merge ../twister-bare
2013-11-23 13:09:16 -02:00
Miguel Freitas
b4d044f843
utf8 character counting to check message size < 140
2013-11-23 13:06:28 -02:00
Miguel Freitas
0903a9e0ec
fix bug where "follow" failed for empty users (who followed no one)
2013-11-23 10:05:15 -02:00
Miguel Freitas
c61f016b44
reduce checkblocks even more for faster startup
2013-11-23 10:04:43 -02:00
Miguel Freitas
40cd54e0ec
use utf8 for text json strings. only a few characters need to be
...
escaped per json rfc spec. escaping everything was causing problem with browsers.
2013-11-22 17:34:39 -02:00
Miguel Freitas
bc990abfff
"hexcape" binary strings before json encoding.
...
because json doesn't support binary we need to escape to hex, unfortunatly,
this add requirement to twisterd to know each possible binary field we may add to dht items.
(unlike bencode that simply doesn't care).
2013-11-22 17:33:07 -02:00
Miguel Freitas
d5a81fdcdd
check less blocks on startup
2013-11-21 14:50:49 -02:00
Miguel Freitas
6fae6f216b
remove assert. not the proper way to handle this
2013-11-20 14:49:37 -02:00
Miguel Freitas
408fec30ed
periodically save user_data
2013-11-18 18:01:30 -02:00
Miguel Freitas
570d9196a2
reordering direct messages by time is only allowed when both messages have been received (not fromMe).
...
otherwise we would be comparing times from different computers, which may cause messages to get out of order.
2013-11-18 13:54:07 -02:00
Miguel Freitas
37aa4f1827
rework locking in getinfo to fix deadlock
2013-11-18 10:51:23 -02:00
Miguel Freitas
78f3ceb921
reduce contention with mutex cs_twister
2013-11-17 23:43:54 -02:00
Miguel Freitas
fb0802449c
implement index of partial usernames so search-as-you-type can work as expected with listusernamespartial
2013-11-17 22:56:06 -02:00
Miguel Freitas
f4d6c2be28
getnumpieces rpc
2013-11-14 16:17:06 -02:00
Miguel Freitas
2499954dbd
proper deleting leveldb iterator fixes assertion failure
2013-11-14 15:15:47 -02:00
Miguel Freitas
ba0b4c8613
avoid adding the same nodes to dht subsys all the time
2013-11-14 15:07:47 -02:00
Miguel Freitas
9c93f1c377
fix checkpoint
2013-11-14 01:46:56 -02:00
Miguel Freitas
3847d74f5d
fix GetTransaction old key search. how many more iterations do i need to get this thing right?
2013-11-14 01:22:19 -02:00
Miguel Freitas
30992b87c3
use scrypt hash function like litecoin
2013-11-14 00:57:51 -02:00
Miguel Freitas
a93a864539
import scrypt sources from litecoin
2013-11-13 22:34:18 -02:00
Miguel Freitas
4be2deab5c
backup dns seed
2013-11-13 22:26:16 -02:00
Miguel Freitas
bc0519068a
parameter -htmldir
2013-11-11 17:14:12 -02:00
Miguel Freitas
6957873a90
serve html files from ~/.twister/html (actually dataDir + "/html")
2013-11-10 15:08:02 -02:00
Miguel Freitas
bd479f0b2e
new rpc adddnsseed
2013-11-10 11:54:22 -02:00
Miguel Freitas
a2c87535c0
periodically save resume data. if daemon crashes we don't lose everything.
2013-11-10 00:03:24 -02:00
Miguel Freitas
00411a4020
client name is now "twisterd"
2013-11-08 19:50:42 -02:00
Miguel Freitas
2917054c80
change to version 0.9.00. sounds better than 0.8.99
2013-11-08 18:37:24 -02:00
Miguel Freitas
22cba50e54
useless debug
2013-11-08 08:49:50 -02:00
Miguel Freitas
c035fc8371
Merge
2013-11-08 00:37:15 -02:00
Miguel Freitas
6d7e895d7c
finer locking to fix another deadlock case
2013-11-08 00:36:49 -02:00
Miguel Freitas
57eeb6d73b
more hashtags separators and tolower
2013-11-07 17:38:21 -02:00
Miguel Freitas
c3bea0a3dd
If bitcoin network goes down, pause libtorrent to prevent pieces being falsely rejected because height > bestHeight.
...
Also, if bitcoin network is down, try to add nodes from DHT bucket tables back to the bitcoin network.
2013-11-07 15:06:06 -02:00
Miguel Freitas
ceddb2781b
Check duplicate usernames within the same block
2013-11-06 18:25:24 -02:00
Miguel Freitas
5529ce130c
add a valid checkpoint
2013-11-06 16:20:01 -02:00
Miguel Freitas
26778c1ff1
fix another deadlock
2013-11-06 16:19:43 -02:00
Miguel Freitas
b470360bd5
fix another case of uninitialized entry on bencode
2013-11-06 15:43:12 -02:00
Miguel Freitas
2c256b6edb
implement piece verification using old signatures. now i can reenable banning peers due to bad pieces.
2013-11-06 09:22:05 -02:00
Miguel Freitas
4c99e80449
fix txindex inconsistency if twisterd crashes.
...
txindex (user,-1) may point to a key in a block not yet linked to the chain.
2013-11-05 14:02:37 -02:00
Miguel Freitas
247ae657ef
remove failing assert when db is empty
2013-11-05 00:26:20 -02:00
Miguel Freitas
f81088be70
properly implement verification using keys that have been replaced.
...
the basic idea is replace txIndex key with a pair (username,height).
height = -1 for the most up-to-date key, otherwise height = last block where previous key was valid.
by checking maxHeight and iterating backwards we can easily find the key to validate data from any given block number.
2013-11-05 00:00:11 -02:00
Miguel Freitas
1838558305
Merge
2013-11-04 21:05:12 -02:00
Miguel Freitas
a4695ba9e1
delay libtorrent initialization until we have valid blocks
2013-11-04 19:55:59 -02:00
Miguel Freitas
70f96750b5
Merge ../twister-android
2013-11-02 12:41:01 -02:00
Miguel Freitas
ecd49d2fb2
truncate url at '?' when serving htmls
2013-11-02 12:39:56 -02:00
Miguel Freitas
7e1468299b
Merge branch 'master' of /home/miguel/softs/twister
2013-11-02 12:35:58 -02:00
Miguel Freitas
22161a71ed
fix deadlock
2013-11-01 15:13:37 -02:00
Miguel Freitas
6594b01e6f
less logging when pooling for network status
2013-10-31 23:52:44 -02:00
Miguel Freitas
8286e4c78d
old debug printf
2013-10-31 14:24:04 -02:00
Miguel Freitas
0678ae169b
CreateSpamMsgTx fallback to "nobody"
2013-10-31 14:04:13 -02:00
Miguel Freitas
2c48386b4e
Properly implement spam signing and checking to prevent it from been used to impersonate users.
...
"nobody" is an exception so default client could still send unauthenticated/anonymous spam
messages.
2013-10-31 14:02:29 -02:00
Miguel Freitas
277c917b53
no use for setting/getting defaultuser, it just adds confusion.
2013-10-31 13:48:31 -02:00
Miguel Freitas
2df6ff2420
persist spammsg to send and generate status
2013-10-30 21:19:14 -02:00
Miguel Freitas
3ac54ffbe9
don't start torrent for nonexistent users. (we will need something different for #hashtags)
2013-10-30 20:57:49 -02:00
Miguel Freitas
defb9a13a3
increase POW difficulty for user registrations
2013-10-30 18:55:13 -02:00
Miguel Freitas
432535bd6d
fix listusernamespartial: search string must be shorter than username being compared (or equal). not longer.
2013-10-30 17:31:30 -02:00
Miguel Freitas
8d793b371d
return "" in dumppubkey for nonexistent user
2013-10-29 18:02:33 -02:00
Miguel Freitas
6ade53ce53
implement new rpc dumppubkey.
...
importprivkey now verifies if username exists in txdb
2013-10-29 17:54:23 -02:00
Miguel Freitas
549ba353dd
yet another ThreadMaintainDHTNodes heuristic improvement
2013-10-29 10:48:06 -02:00
Miguel Freitas
3c90b0a94c
rt also updates status
2013-10-28 23:51:11 -02:00
Miguel Freitas
dbc640faaa
implement exact match on username search
2013-10-28 23:30:18 -02:00
Miguel Freitas
d16d50313a
insert directmsgs into vector ordered by time
2013-10-28 23:15:19 -02:00
Miguel Freitas
2cd0b0a881
rescandirectmsgs: rescan all streams of users we follow for new and old directmessages
2013-10-28 22:59:43 -02:00
Miguel Freitas
d9c64c2076
another try at ThreadMaintainDHTNodes to fix the problem of adding useless dht nodes and forcing announcements all the time.
2013-10-28 19:45:01 -02:00
Miguel Freitas
5dd9116627
less debug noise
2013-10-28 19:28:15 -02:00
Miguel Freitas
c7141bcb2e
prevent bencoding uninitialized entries (which causes assertion fail)
2013-10-28 19:17:50 -02:00
Miguel Freitas
d93da9efd5
2 months to expire posts from dht
2013-10-27 22:54:47 -02:00
Miguel Freitas
5c0cb31f26
disable -fstack-protector on android. is it causing false-positives or is really
...
a stack overflow going on? if so why linux compilation doesn't show the same?
not sure, but it seems to work fine, no crashs without this flag.
2013-10-27 20:12:46 -02:00
Miguel Freitas
06c93bcf38
update port in help text
2013-10-27 16:12:06 -02:00
Miguel Freitas
f119226b8f
crtend fixes SIGILL
2013-10-26 19:09:13 -02:00
Miguel Freitas
699d7a0802
Merge branch 'master' of /home/miguel/softs/twister
2013-10-26 17:59:26 -02:00
Miguel Freitas
a7f7b45976
remove test code
2013-10-26 16:16:07 -02:00
Miguel Freitas
1d78f7ec27
improve dht resource expiration policy (still not enabled)
2013-10-26 16:00:16 -02:00
Miguel Freitas
3e64454b7d
Save lastk field to post so torrent-less navigation through posts is possible. => DONE
2013-10-26 13:42:50 -02:00
Miguel Freitas
2c6318caae
less noisy in debug
2013-10-26 13:09:20 -02:00
Miguel Freitas
66fb23c4b8
try to fix automatically another block db inconsistency problem
2013-10-26 13:08:37 -02:00
Miguel Freitas
d14dca10e1
disable libtorrent read cache cause i've messed up something
2013-10-25 23:44:08 -02:00
Miguel Freitas
39e8ed8fb7
increase number of rpc workers
2013-10-24 23:32:20 -02:00
Miguel Freitas
543898da85
Merge branch 'master' of ssh://pitanga//home/miguel/softs/twister
2013-10-22 21:12:15 -02:00
Miguel Freitas
55b3f62872
fix previous commit: don't clear spammsg if it is not consumed.
2013-10-22 19:55:23 -02:00
Miguel Freitas
552b7b542d
persist some global config. now we implement a spam policy max 1 every 8 hours (not cumulative).
2013-10-22 19:51:18 -02:00
Miguel Freitas
21faab36b7
inform the user that database will be rebuilt. without UI, the old message was confusing.
2013-10-22 19:47:50 -02:00
Miguel Freitas
6cb5364605
disable printf of dm's
2013-10-22 18:31:54 -02:00
Miguel Freitas
6fc4979a1f
no setlocale in android
2013-10-20 18:23:57 -02:00
Miguel Freitas
f69227c73a
android path "/sdcard/twister" (not quite standard but works)
2013-10-20 16:03:19 -02:00
Miguel Freitas
d9c98f3a73
add some mime types to the lame web server
2013-10-20 14:41:55 -02:00
Miguel Freitas
5f3731bab3
fixing android build
2013-10-19 16:09:57 -03:00
Miguel Freitas
15d7fd07b0
android compiling
2013-10-19 10:31:43 -03:00
Miguel Freitas
7e1726ba8c
implement expiring dht items (but it is not enabled yet)
2013-10-18 12:08:54 -03:00
Miguel Freitas
9783b971fb
almost compiling on android. linker error.
2013-10-16 08:09:35 -03:00
Miguel Freitas
b7aac66551
android fixes
2013-10-15 23:21:08 -03:00
Miguel Freitas
bdb70b0d14
small compilation fix
2013-10-15 22:16:56 -03:00
Miguel Freitas
d17224516f
shorter rpc name: getlocaldirectmessages => getdirectmsgs
2013-10-14 18:55:56 -03:00
Miguel Freitas
f75fc11274
getlocaldirectmessages: get decrypted direct messages sent/received by user
2013-10-14 11:41:40 -03:00
Miguel Freitas
42e7254af1
remove encryptDecryptTest(). i know it works.
2013-10-13 18:30:29 -03:00
Miguel Freitas
19f5c3cc0e
-1 is not used anymore for max_id since it breaks "geting up to post 0"
2013-10-13 18:05:56 -03:00
Miguel Freitas
38424e0afb
fix importing privkey to wallet (username was not saved to disk)
2013-10-13 17:59:08 -03:00
Miguel Freitas
274ffeb1f6
increase percentage of getaddr (ADDRMAN_GETADDR_MAX_PCT) until we grow older and bigger
2013-10-13 16:57:35 -03:00
Miguel Freitas
db74a61476
more addrman debug in getinfo
2013-10-13 14:13:46 -03:00
Miguel Freitas
ff563ccee1
print addrman size
2013-10-12 18:07:34 -03:00
Miguel Freitas
019da72568
rework initialization order a little, try to start torrents after dht comes up
2013-10-12 17:31:49 -03:00
Miguel Freitas
eab70b0466
force dht_announce on every torrent after adding dht nodes
2013-10-12 16:45:06 -03:00
Miguel Freitas
f1c58b9d2a
trying (once more) to improve ThreadMaintainDHTNodes (dht nodes from registration network nodes)
2013-10-12 16:24:30 -03:00
Miguel Freitas
56194d1eaf
dns seed
2013-10-12 14:49:30 -03:00
Miguel Freitas
e5b21d6810
fix dm store duplicate checking. i did it completely wrong before.
2013-10-10 23:25:44 -03:00
Miguel Freitas
34024136ae
tweaks. increase m_desired_queue_size, maybe 2 is too low due to rounding
...
number of pieces to the nearest multiple of 8. not sure.
2013-10-10 23:19:30 -03:00
Miguel Freitas
b803734915
prevent duplicates when adding dm to the list of decrypted messages (in memory) - untested
2013-10-10 19:44:44 -03:00
Miguel Freitas
22bf956f8a
printf typo
2013-10-10 14:03:41 -03:00
Miguel Freitas
9d1b5915f9
better error checking and variables names in user_data save/load
2013-10-10 14:02:37 -03:00
Miguel Freitas
02f3de841b
do lazy_entry type checking in loadUserData
2013-10-08 22:45:46 -03:00
Miguel Freitas
4c33706c40
persist user_data (following and DMs)
2013-10-08 22:37:29 -03:00
Miguel Freitas
99be67bb55
make instructions
2013-10-08 18:39:07 -03:00
Miguel Freitas
d5f3af166f
wallet must be updated with metadata of key being replaced. otherwise we get two keys with the same username next reload.
2013-10-08 17:22:37 -03:00
Miguel Freitas
d780dc76b9
getrawtransaction using username instead of hash
2013-10-08 16:18:06 -03:00