b0446f412a
Prevent leaking of tor relay IP
...
- when running a hidden service, the IP of the tor relay was a part of
the verack message. In setups where it's not 127.0.0.1 it may leak
info about network topology
- thanks for an anonymous bug report
2016-06-10 13:21:31 +02:00
f242d409fd
Tor hidden service fixes
...
- will send the correct combination of hostname and port
- if proxyhostname is a hostname and an IP address, it will now allow
multiple parallel connections for hidden service
2016-06-10 10:44:42 +02:00
b194e4ca20
Bump version to 0.6.0
2016-05-02 21:51:46 +02:00
mailchuck
3dbb4d5ce9
GUI shutdown improvements
...
- it shows that it needs to wait for PoW to finish
- it waits a bit for new objects to be distributed
- it displays a better progress indicator in the status bar
Previously, people who don't understand how PyBitmessage works sometimes
shut it down immediately after they wrote a message. This would have
caused the message to be stuck in the queue locally and not sent. Now,
it will indicate that the PoW still needs to work, and it will wait a
bit longer so that the message can spread. It's not a completely correct
approach, because it does not know whether the message was really
retrieved after the "inv" notification was sent.
2016-05-02 15:00:25 +02:00
mirrorwish
a7ec4c0555
Some preparations for python 3
2016-05-02 15:00:25 +02:00
d25a1302ce
Version bump
2016-05-02 15:00:25 +02:00
mirrorwish
554627dd92
Refactor Inventory
2016-05-02 15:00:25 +02:00
143abe3c34
Preliminary Tor hidden service support
2016-05-02 15:00:24 +02:00
mailchuck
24a2deed8f
Cleanup lockfile on exit
...
singleton.py design was broken.
Fixed Bitmessage#775
2016-05-02 15:00:23 +02:00
mailchuck
3bde549e5c
Version bump for 0.5.7
2016-05-02 15:00:23 +02:00
mailchuck
32b0d24be2
singleWorker shutdown fix
...
if singleWorker crashed, the thread couldn't be joined. This both makes
it so that it doesn't crash, as well as reorders the shutdown sequence
so that it is less likely to be triggered.
Fixes Bitmessage#549
2016-05-02 15:00:23 +02:00
e4f31d25fc
Flood mitigation optimisation
...
Flood mitigation was done both in the ObjectProcessorQueue as well as
receiveData threads. This patch removes the mitigation in receiveData
threads and cleans up the one in the ObjectProcessorQueue
2016-05-02 15:00:23 +02:00
mailchuck
6f74ffc265
Mac OSX portable mode path
...
Fixes #150
2016-05-02 15:00:23 +02:00
mailchuck
d6ec2a2b8d
Version bump
2016-05-02 15:00:22 +02:00
mailchuck
a727847e55
Addresses can be configured not to send acks
...
Manually by specifying "dontsendack" = true in the address section
2016-05-02 15:00:22 +02:00
mailchuck
17d045da10
Sensible default maximum difficulty
...
Fixes #144
2016-05-02 15:00:22 +02:00
mailchuck
8136b022bc
Typos
...
Still regarding portable mode path fixes
2016-05-02 15:00:22 +02:00
mailchuck
5a45d7dd8f
Portable mode fixes
...
Fixes Bitmessage#379, Bitmessage#341
2016-05-02 15:00:22 +02:00
mailchuck
1625306be3
Version bump
2016-05-02 15:00:22 +02:00
mailchuck
d54b22bb89
Initialise inventorySets earlier
...
In corner cases, they may be referenced before they are populated.
Probably fixes Bitmessage#530
2016-05-02 15:00:22 +02:00
mailchuck
52fe7105a9
Allow bootstrap from a Tor hidden service
...
I run a modified node as a Tor hidden service for bootstrapping node
addresses, and PyBitmessage can now connect to it.
2016-05-02 15:00:22 +02:00
mailchuck
d69c2e097f
Cleaner shutdown
...
Addresses Bitmessage#549
2016-05-02 15:00:21 +02:00
mailchuck
6dbe20a25c
Version bump
2016-05-02 15:00:21 +02:00
mailchuck
7b4264a109
Typo
2016-05-02 15:00:21 +02:00
mailchuck
18f7ef06e2
SSL fixes
...
Handle old Python compatibility better.
2016-05-02 15:00:21 +02:00
mailchuck
74519069f0
outgoingSynSender thread reaping disabled
...
It was causing delays on shutdown, worse on linux/osx
2016-05-02 15:00:21 +02:00
mailchuck
b00c4f24ec
Threads close better
...
- UPnP and outgoingSynSender threads close slightly better.
- extPort initialisation was missing
2016-05-02 15:00:21 +02:00
mailchuck
c03c563a74
Make UPnP into a thread
...
- UPnP is now a separate thread that will continue to setup UPnP
- shutdown waits for threads that shutdown correctly (Addresses
Bitmessage#549)
2016-05-02 15:00:21 +02:00
mailchuck
46d647460f
Version bump
...
We have 0.5.3 now
2016-05-02 15:00:21 +02:00
mailchuck
2fd85bfa69
SSL workaround
...
Python < 2.7.9 does not support anonymous SSL server through
ssl.wrap_socket, so we have to disable it. Works fine as client.
Try to prefer secp256k1 curve (again, requires python >= 2.7.9)
2016-05-02 15:00:21 +02:00
mailchuck
c7fb9e6a43
SSL fixes
...
- uses constants for service flags
- requires SSL to use TLSv1 version (protection against POODLE-style
attacks)
- retry if sock.recv incomplete
2016-05-02 15:00:21 +02:00
mailchuck
53b0d2749b
Opportunistic encryption with TLS (1 of 2)
...
Fixes Bitmessage#264
Fixes Bitmessage#648
2016-05-02 15:00:20 +02:00
mailchuck
25cc1dc287
Unified code for finding source code location
...
It is already used in 3 places so I put it into a function
2016-05-02 15:00:20 +02:00
mailchuck
03f709b70d
Bump version
...
get ready for 0.5.2
2016-05-02 15:00:20 +02:00
mailchuck
f5f46dae45
Version bump
2016-05-02 15:00:20 +02:00
mailchuck
7625b4f101
Version bump
...
Just for development
2016-05-02 15:00:19 +02:00
mailchuck
c83255d4d4
Bump up version
2016-05-02 15:00:19 +02:00
lightrabbit
f0f9f679e6
Add UPnP support.
2016-05-02 15:00:17 +02:00
Jonathan Warren
cc712cb8ff
finished work on specifyTTL
2015-03-09 02:35:32 -04:00
Jonathan Warren
bd9286ef41
msg objects now contain an objectVersion
2015-01-28 14:14:28 -05:00
Jonathan Warren
5b87bc26ec
Fix #758
2015-01-21 12:38:25 -05:00
Jonathan Warren
8b95ad1659
updated settings.ui file for Czech translation
2014-12-25 23:24:09 -05:00
Jonathan Warren
9b6bc26144
fix bug in #715
2014-12-25 21:06:10 -05:00
Jonathan Warren
50c392c197
resolve merge conflict
2014-12-25 20:37:04 -05:00
Jonathan Warren
e898b40203
Removed obsolete Protocol v2 code
2014-12-25 04:06:57 -05:00
Jonathan Warren
e096c37f7e
save debug.log in correct directory
2014-10-13 01:59:16 -04:00
Yuri
5beaeff2e2
TImestamped the keys.dat backup file.
2014-09-16 10:04:56 -07:00
Yuri
d3c91eea3b
Added backup copy creation during keys.dat write to prevent an accidental file loss due to the disk failure.
2014-09-14 23:53:21 -07:00
Yuri
34824c044e
Moved all keys.dat writing code into writeKeysFile in shared.py
2014-09-14 23:34:33 -07:00
Jonathan Warren
0865e863ec
Added ability to limit network transfer rate
2014-09-10 16:47:51 -04:00
Jonathan Warren
c84cdecba4
Normalize the noncetrialsperbyte and payloadlengthextrabytes for each of the user's existing addresses
2014-09-02 19:25:03 -04:00
Jonathan Warren
c306062282
Bitmessage Protocol Version Three
2014-08-27 03:14:32 -04:00
Jonathan Warren
ea6f34ade6
removed use of memoryview so that we can support python 2.7.3
2014-08-06 15:54:59 -04:00
Jonathan Warren
807f2fee8a
increment version number to 0.4.3
2014-08-04 18:35:26 -04:00
Jonathan Warren
9e16e81283
resolve merge conflict and show transfer rate
2014-08-01 17:25:47 -04:00
Yuri
f107b0fbd9
Addition of bytes received/sent counts on the network information tab.
2014-07-07 13:30:23 -07:00
bmng-dev
947f7655ab
Refactor generation of packet headers
...
Added global variable Header - a compiled Struct to pack/unpack headers so as to avoid repeatedly compiling the same format string
Add a new method CreatePacket to simply and efficiently construct a packet that is ready to be sent
Modify assembleVersionMessage to use CreatePacket
2014-05-22 12:30:51 +00:00
Jonathan Warren
38d7db24ad
Merge pull request #639 from bpeel/wip/trusted-peer
...
Add a 'trustedpeer' option to keys.dat
2014-04-30 17:42:28 -04:00
Neil Roberts
7da6ea958f
Add support for IPv6
...
It will now listen on an IPv6 socket if possible or fall back to IPv4
if that doesn't work. It will no longer filter out all IPv6 addresses
and instead it will only filter out those that point to the local
network.
It looks like the DNS bootstrapping should just automatically work
because getaddrinfo already returns IPv6 addresses from the AAAA
record.
In order to convert from the ASCII representation of IPv6 addresses
and back we need inet_ntop and inet_pton. Python 2 doesn't currently
provide these for Windows so instead this patch provides a hot patch
to the socket module which wraps WSAStringToAddress and
WSAAddressToString using ctypes.
2014-03-12 01:48:48 +00:00
Neil Roberts
03263156de
Add a 'trustedpeer' option to keys.dat
...
If this option is specified in keys.dat then Bitmessage will connect
to the host specified there instead of connecting to the hosts in the
list of known nodes. It will also stop listening for incoming
connections and the timing attack mitigation will be disabled.
The expected use case is for example where a user is running a daemon
on a dedicated machine in their local network and they occasionally
want to check for messages using a second instance of the client on
their laptop. In that case it would be much faster to catch up with
the messages by directly downloading from the dedicated machine over
the LAN. There is no need to connect to multiple peers or to do the
timing attack mitigation because the daemon is trusted.
The host is specified as hostname:port. Eg, ‘192.168.1.8:8444’.
2014-02-06 13:16:07 +00:00
Jonathan Warren
7983a14754
Increment version number to 0.4.2
2014-01-20 23:04:41 -05:00
Jonathan Warren
85a409636a
Fix #611 ; also swap print statements out for loggers
2014-01-16 20:10:04 -05:00
Jonathan Warren
534e98e816
Merge pull request #578 from b4tman/master
...
fix AppdataFolder encoding on windows
2013-12-24 21:53:41 -08:00
Jonathan Warren
99738e88aa
Merge pull request #574 from yurivict/compatibility_FreeBSD
...
FreeBSD compatibility
2013-12-15 21:58:45 -08:00
Jonathan Warren
80932bbab0
fix pubkey signature bug leftover from objectProcessorThread-related-changes
2013-12-06 01:52:19 -05:00
Jonathan Warren
df7116bd72
on close, save objectProcessorQueue to disk
2013-12-02 01:35:34 -05:00
Jonathan Warren
44618ffcc2
added option to show recent broadcasts when subscribing
2013-11-30 23:15:18 -05:00
Dmitry Belyaev
f1ce821910
fix AppdataFolder encoding on windows
2013-11-30 00:42:15 +04:00
Yuri
7b65da70dc
FreeBSD compatibility.
2013-11-28 16:20:16 -08:00
Jonathan Warren
45a0046e7d
completed work on objectProcessorThread
2013-11-20 01:29:37 -05:00
Jonathan Warren
2a1b6dd86d
some initial objectProcessorThread work
2013-11-13 22:44:42 -05:00
Jonathan Warren
bd2803bebc
various changes to 'messages expire' pull request
2013-11-04 02:05:07 -05:00
Peter
f6cdc0844b
Merge remote-tracking branch 'upstream/master'
2013-10-20 16:41:53 +04:00
Jonathan Warren
7a30db75f1
Use SQL-stored message when using 'Display as HTML' feature
2013-10-16 01:08:22 -04:00
Peter
5fb08efe00
merged
2013-10-03 19:39:27 +04:00
ikarakatsanis
511185055d
feature_v2
2013-10-02 04:16:42 +04:00
ikarakatsanis
d487b522cf
feature_v1
2013-10-02 04:14:53 +04:00
Jonathan Warren
9e34caebef
increment version number to 0.4.1
2013-09-29 23:05:06 -04:00
Jonathan Warren
498928405b
Chan fix: initial work completed
2013-09-29 19:24:27 -04:00
Jonathan Warren
4fea165d50
Increment version number to v0.4.0
2013-09-22 23:29:30 -04:00
Jonathan Warren
02ea2a50d3
more v4 address work. Should be done.
2013-09-18 00:04:01 -04:00
Jonathan Warren
79f6169803
further v4 address work
2013-09-14 21:06:26 -04:00
Jonathan Warren
56168e82b5
most initial work on v4 pubkeys completed
2013-09-13 00:27:34 -04:00
Jonathan Warren
90e60d8145
delay addr messages random number of seconds
2013-09-09 19:26:32 -04:00
Jonathan Warren
831edf0d24
completed inv refactorization
2013-09-06 21:47:54 -04:00
Jonathan Warren
a9b15f83ba
initial testing inv refactorization
2013-09-06 18:55:12 -04:00
Jonathan Warren
c06bbc14f8
Give user feedback when disk is full
2013-09-04 20:14:25 -04:00
Jonathan Warren
5fab298559
Refactor of the way PyBitmessage looks for interesting new objects in huge inv messages from peers
2013-09-03 22:45:45 -04:00
Jonathan Warren
6159d5e622
Show inventory lookup rate on Network Status tab
2013-09-03 18:08:29 -04:00
Grant T. Olson
8d8e43b1fc
Added SqlBulkExecute class so we can update inventory without a million commits
2013-08-31 10:40:11 -04:00
Grant T. Olson
b83781cefb
Merge remote-tracking branch 'upstream/master' into sql_refactor
2013-08-30 17:59:35 -04:00
Jonathan Warren
95cf453de4
resolve merge conflict
2013-08-30 13:26:55 -04:00
Grant T. Olson
5eba4e6442
Merge branch 'master' into Fast_PoW_unless_frozen
2013-08-29 11:42:10 -04:00
Grant T. Olson
8a6d1d9cd5
Fix regression where I couldn't add a subscription
2013-08-29 10:02:42 -04:00
Grant T. Olson
7499de4e13
have shared.py use helper_sql and move the sql queues and locks to helper_sql
2013-08-29 08:03:45 -04:00
Jonathan Warren
1bb86794a8
undid support for receiving v4 addresses until more chanages are implemented
2013-08-26 15:23:12 -04:00
Grant T. Olson
732d7c999a
Allow specification of alternate settings dir via BITMESSAGE_HOME
2013-08-26 08:44:15 -04:00
Jonathan Warren
0132db33dc
show number of each message type processed in the API command clientStatus
2013-08-24 19:40:48 -04:00
Grant T. Olson
a20213f1e8
Use fast PoW unless we're explicitly a frozen (binary) version of the code
2013-08-23 13:24:38 -04:00
Adam Fontenot
ef312c6e2c
Updated several missed references to version 3 addresses
2013-08-15 04:26:14 -05:00