lakshyacis
1181db66e0
l10n quality fixes
2019-10-31 14:52:43 +05:30
lakshyacis
afce500085
knownnodes quality fixes
2019-10-31 14:52:43 +05:30
lakshyacis
ee5be28179
helper_threading quality fixes
2019-10-29 11:45:51 +05:30
1a7ef791e5
message_data_reader is obsolete
2019-10-28 09:14:48 +02:00
George McCandless
f871cd450c
Add test for 'onionservicesonly' mode.
...
Credit to Dmitri Bogomolov in commit 557a8cc6d2bec881b8a3c531d3f725460ed515f5.
2019-10-24 19:35:32 +00:00
George McCandless
b42f536d23
Add a checkbox to the network settings tab that allows restricting outbound connections to onion services (i.e., hosts that end with '.onion').
2019-10-21 00:03:41 +00:00
f0b4e4ded4
Replaced logging.getLogger() in other possible places
2019-10-18 09:35:31 +03:00
a48b51721d
Test new logging approach, both debug.logger and resetLogging
2019-10-18 09:35:31 +03:00
bbdbca253b
Added warnings about changing port settings in api and network.tcp
2019-10-18 09:35:31 +03:00
d2a896697d
Used logger.isEnabledFor() to prevent unneeded calculations
2019-10-18 09:35:31 +03:00
7a89109fc9
New logging approach in order to reduce imports from submodules
...
and use logging without risk of circular import. Only subpackage
that imports from debug is bitmessageqt - because it also uses
debug.resetLogging().
Instead of from debug import logger is now recommended to use:
import logging
logger = logging.getLogger('default')
All subclasses of StoppableThread now have a logger attribute.
All threading related stuff except for set_thread_name()
was moved from helper_threading to network.threads.
Fixed two my mistakes from previous edit of debug in a1a8d3a:
- logger.handlers is not dict but iterable
- sys.excepthook should be set unconditionally
2019-10-18 09:35:24 +03:00
c63ed02153
Minimal changes to document Singleton and class definitions it wraps
2019-10-18 01:06:03 +03:00
86f0860cb2
Slightly rewritten docstrings in singleinstance
2019-10-18 01:06:03 +03:00
9e72e3b2af
Rewritten epytext strings in qidenticon and removed __all__
2019-10-18 01:06:02 +03:00
53cc08edec
Renamed invalid python module http-old
2019-10-18 01:06:02 +03:00
4d15c8e590
Fix fallback package docstring
2019-10-18 01:06:02 +03:00
b5df242141
Fixed badly formatted docstrings and some wrong text
2019-10-18 01:06:02 +03:00
c99997dbb9
Fix mistakes in Exception() instantiation
2019-10-17 23:46:41 +03:00
9a438c1a1a
flake8: paths
2019-10-01 12:42:03 +03:00
lakshyacis
e5b92e29a2
vote pylint fixes
2019-09-30 18:42:50 +05:30
lakshyacis
9aa7dd9d78
message pylint fixes
2019-09-30 18:42:36 +05:30
lakshyacis
40e15579fd
messagetypes init flake and pylint fixes
2019-09-27 19:55:06 +05:30
lakshyacis
fba2d6d837
storage pylint fixes
2019-09-27 17:01:08 +05:30
lakshyacis
e924e9208f
storage flake8 fixes
2019-09-27 17:01:07 +05:30
lakshyacis
da5d085a39
sqlite pylint fixes
2019-09-27 17:01:07 +05:30
lakshyacis
54ebbcb7db
sqlite flake8 fixes
2019-09-27 17:01:07 +05:30
lakshyacis
ac341482d4
filesystem pylint fixes
2019-09-27 17:01:06 +05:30
lakshyacis
6f910f67c0
filesystem flake8 fixes
2019-09-27 17:01:06 +05:30
lakshyacis
433cb9818b
sound_playfile pylint fixes
2019-09-27 16:12:35 +05:30
lakshyacis
a86e43c108
sound_gstreamer pylint fixes
2019-09-27 16:12:35 +05:30
lakshyacis
a86c5188c4
sound_canberra pylint fixes
2019-09-27 16:12:35 +05:30
lakshyacis
df1994d6f3
proxyconfig_stem pylint fixes
2019-09-27 16:12:25 +05:30
lakshyacis
e50f99419f
plugin pylint fixes
2019-09-27 16:04:29 +05:30
lakshyacis
7aa9b94c11
notification_notify2 pylint fixes
2019-09-27 16:04:29 +05:30
lakshyacis
4c1568a3eb
menu_qrcode pylint fixes
2019-09-27 16:04:29 +05:30
lakshyacis
36775ae88b
indicator_libmessaging pylint fixes
2019-09-27 16:04:28 +05:30
lakshyacis
a6f951d37f
openssl pylint fixes
2019-09-27 13:11:58 +05:30
lakshyacis
4448e6ee7b
hash pylint fixes
2019-09-27 13:11:58 +05:30
lakshyacis
e0d81bb7e8
cipher pylint fixes
2019-09-27 13:11:40 +05:30
lakshyacis
fa65b17fc9
__init__ pylint fixes
2019-09-27 13:10:24 +05:30
lakshyacis
944c30f9b4
test_config pylint fixes
2019-09-26 19:51:02 +05:30
lakshyacis
7839f83f20
test_api pylint fixes
2019-09-26 19:50:53 +05:30
lakshyacis
8ed1d48799
core pylint fixes
2019-09-26 19:50:45 +05:30
88f2c51595
quzwelsuziwqgpt2.onion:8444 is also a bootstrap server
2019-09-25 18:55:02 +03:00
a7cfe5ba32
Try to test with tor
2019-09-25 18:55:01 +03:00
6a0c3ae075
Remove obsolete helper_bootstrap and bundled SocksiPy
2019-09-25 18:55:01 +03:00
bcb29facaa
A test for bootstrapping, have problem with test_tcpconnection ):
2019-09-25 18:55:01 +03:00
bdb09c2d00
Ignore self node in connectionchooser.chooseConnection()
2019-09-25 18:55:01 +03:00
7215003c6f
No DNS resolving in knownnodes
2019-09-25 18:55:01 +03:00
4825c5a136
Universal bootstrap procedure for any connection type
2019-09-25 18:55:01 +03:00
0a06567071
Connect to bootstrap nodes by name
2019-09-25 18:55:01 +03:00
42a89ad367
Delete from addressbook by pressing DEL
2019-09-24 14:59:12 +03:00
7d0e23e31a
Delete from addressbook only by address ( Fixes : #1484 )
2019-09-24 14:59:12 +03:00
lakshyacis
4c7f9487e2
init file fixes for pylint
2019-09-23 15:12:40 +05:30
24ae91ad0a
Set dontconnect temporary, completely avoiding saving
2019-09-20 14:31:52 +03:00
df66277e2d
state.resetNetworkProtocolAvailability() is obsolete
2019-09-20 14:31:51 +03:00
18392017c6
Do not propose user to restart Bitmessage
...
if network settings have changed, drop network connections instead
2019-09-20 14:31:51 +03:00
8a3074f3ff
ui-file based Settings dialog
2019-09-20 14:31:45 +03:00
lakshyacis
a961a4a2fb
proxy pylint fixes
2019-09-16 19:13:56 +05:30
lakshyacis
1e446b768c
node pylint fixes
2019-09-16 19:13:56 +05:30
lakshyacis
915bfb757d
networkthread pylint fixes
2019-09-16 19:13:55 +05:30
lakshyacis
e74affe636
udp pylint fixes
2019-09-16 19:13:55 +05:30
lakshyacis
498232dbea
tls pylint fixes
2019-09-16 19:13:54 +05:30
lakshyacis
dccb1dbb3c
tls flake8 fixes
2019-09-16 19:13:54 +05:30
lakshyacis
fcffb42629
stats pylint fixes
2019-09-16 19:13:54 +05:30
lakshyacis
7d0bd1cf7a
stats flake8 fixes
2019-09-16 19:13:53 +05:30
lakshyacis
8182e159df
socks5 flake8 fixes
2019-09-16 19:13:53 +05:30
lakshyacis
79d1b1b9e2
socks4a pylint fixes
2019-09-16 19:13:53 +05:30
lakshyacis
253cec15c4
proxy flake8 fixes
2019-09-10 16:08:18 +05:30
lakshyacis
fa6ef4f933
objectracker pylint fixes
2019-09-10 16:07:02 +05:30
lakshyacis
db1593f428
https flake8 fixes
2019-09-10 15:34:20 +05:30
lakshyacis
77651eebe3
objecttracker flake8 fixes
2019-09-10 15:34:20 +05:30
lakshyacis
ef77a9816e
invthread pylint fixes
2019-09-10 15:34:20 +05:30
lakshyacis
97cbe43294
invthread flake8 fixes
2019-09-10 15:34:20 +05:30
lakshyacis
28e954902d
httpd flake8 fixes
2019-09-10 15:34:20 +05:30
lakshyacis
2c71612a4b
http pylint fixes
2019-09-10 15:34:19 +05:30
lakshyacis
7eced454d1
http flake8 fixes
2019-09-03 19:56:59 +05:30
lakshyacis
68e09a5e30
http-old pylint fixes
2019-09-03 18:41:24 +05:30
lakshyacis
5fcb7fc05e
http-old flake8 fixes
2019-09-03 14:34:17 +05:30
lakshyacis
d8ea0afe40
downloadthread.py Pylint fixes
2019-09-02 19:15:15 +05:30
lakshyacis
8589f01d3d
downloadthread.py flake8 fixes
2019-09-02 19:02:50 +05:30
lakshyacis
b927d51eb3
dandelion.py pylint fixes
2019-09-02 13:53:06 +05:30
lakshyacis
f1b6b16940
connectionpool.py pylint fixes
2019-09-02 13:52:56 +05:30
lakshyacis
5521c16478
bmproto pylint fixes
2019-08-30 16:12:39 +05:30
lakshyacis
469d289a97
Announcethread Pylint Fixes
2019-08-30 15:23:20 +05:30
lakshyacis
548fcf0d0a
announcethread Flake8 Fixes
2019-08-29 19:24:13 +05:30
lakshyacis
b48197ff0d
build_osx file flake8 Fixes
2019-08-29 16:32:14 +05:30
lakshyacis
cc869d0426
bitmessagemain flake8 Fixes
2019-08-29 16:13:27 +05:30
395fbcd0f0
Add intermediary tests
...
- primitive serialisation (BN_bn2bin and ctypes) used in intermediary tests
2019-08-28 13:21:44 +02:00
b934c4e01e
Minor refactoring to separate objects
2019-08-27 23:13:58 +02:00
076aeaa19f
Import path changes as requested
2019-08-27 23:13:55 +02:00
2e0f7755c6
Blind signature support in pyelliptic
...
- add blind signature functionality to pyelliptic as described in #1409
- add tests for blind signatures
- PEP8 fixes for pyelliptic
- some minor refactoring is necessary for further integration, this is just a
minimal implementation to pass a test
2019-08-27 23:13:45 +02:00
f180b1a5b0
Moved randomtrackingdict to network, it's used only there
2019-08-18 17:34:58 +03:00
709e194347
Fix #1504 (regression introduced in 0c1e516
)
2019-08-16 12:32:16 +03:00
e8bd427b9f
flake8 for bitmessageqt.safehtmlparser (with docstrings from #1368 )
2019-08-13 10:57:52 +03:00
97366ede73
Do not save hidden service parameters if onionhostname is set
2019-08-08 11:46:57 +03:00
53d77ce911
Dumb tor configurator using stem
2019-08-08 11:46:57 +03:00
ec11632297
Introduce pluggable proxy configurators
2019-08-08 11:46:50 +03:00
2bd75b87bd
Use config = BMConfigParser() in bitmessagemain.Main
2019-08-06 18:59:13 +03:00
d8d76ed42d
No random.seed() in protocol.assembleVersionMessage()
2019-08-06 18:11:38 +03:00
ad2a2b3fb4
Inherit helper_threading.StoppableThread from threading.Thread
...
and do random.seed() in its __init__
2019-08-06 18:07:19 +03:00
a7a634be1b
Add self peers with rating 1
2019-08-02 17:56:40 +03:00
92c0196887
Add self peer into knownnodes if detected external IP with UPnP
2019-08-01 13:21:05 +03:00
668a73abf6
Fixed my mistake in knownnodes, in ef54bca
2019-08-01 12:58:43 +03:00
ea5c447ea4
protocol: replace missing state.extPort by 'extport' setting
...
Fixes #1497
2019-08-01 12:40:50 +03:00
c5ce2e36d5
shared.extPort is obsolete
2019-08-01 12:40:50 +03:00
9992626438
Fix API command 'shutdown'
2019-08-01 12:04:13 +03:00
ae76d369f2
A test for API command 'shutdown'
2019-08-01 12:04:12 +03:00
27e74a15d7
flake8: network.connectionchooser
2019-07-29 15:54:19 +03:00
67d14f9e73
Docstrings in network.bmproto from #1362
2019-07-26 12:08:56 +03:00
bbab0010e6
Moved a test script from network.tcp to tests.core
2019-07-26 12:08:42 +03:00
391b5ded87
Docstrings in network from #1368
2019-07-26 12:08:32 +03:00
2998599442
Docstrings in network from #1401
2019-07-26 12:08:18 +03:00
19ab56a979
network.connectionpool: get any setting with .safeGet..
2019-07-26 12:08:18 +03:00
996e71ae6f
flake8 in network package
2019-07-26 12:07:57 +03:00
0eb4f46923
Formatting based on review
2019-07-11 15:32:00 +02:00
465a276c02
Dandelion fixes
...
- expiration wasn't handled correctly
- objects with no child stems never expired. While this is better for
anonymity, it can cause objects getting stuck
- upon expiration the nodes weren't marked as not having the object, causing it
to not be advertised
- I haven't tested it but at least I don't think can make things worse
2019-07-11 11:03:48 +02:00
e07cd1462e
Added address menu plugins to each popup menu except for Blacklist,
...
closes #819
2019-07-08 16:56:41 +03:00
e6f3e52014
qrcode plugin: added address label and adjusted formatting
2019-07-05 12:36:03 +03:00
8b065d2e57
Fix unwanted AttributeError in messagetypes
2019-07-05 12:13:55 +03:00
c9bc97f4b2
Set status icon color to yellow if last inbound connection is lost
2019-06-29 22:37:35 +03:00
ff020c5192
fix windows header files api issue
2019-06-28 20:35:40 +05:30
f7e1601185
flake8 imports in blacklist
2019-06-21 16:47:47 +03:00
fbf5bcc74c
Blacklist object has no .statusBar() method - use UISignalQueue.put()
2019-06-21 16:47:42 +03:00
38e5d93272
Resend onionpeer object if it expired while the node ran
2019-06-14 12:38:48 +03:00
a5300e8584
Took into account pylint undefined-loop-variable warnings
2019-06-08 11:22:03 +03:00
0c1e516921
Implemented folder and widget args in propagateUnreadCount(), removed the rest
2019-06-08 11:22:03 +03:00
ffdd91b021
Fixed propagateUnreadCount() result when having unread messages in trash
2019-06-08 11:22:02 +03:00
29f9cd9545
Handle bad trustedpeer setting
2019-06-07 13:54:47 +03:00
f868c1ad11
Fixing my bug in 453e045
2019-06-06 09:21:59 +03:00
d0d0b2ec84
Insert exactly 16 bytes of encoded remote host name into version message
2019-05-24 11:21:23 +03:00
df16f5047c
Cleanup the translation project
2019-05-23 10:21:33 +03:00
3e800c72a0
Fix ternary operator use to translate "Copy subject to clipboard"
2019-05-23 10:21:28 +03:00
828f4d207f
Subject appeared to be str
2019-05-22 11:58:45 +03:00
4a097e99b3
Fixes for @omkar1117
2019-05-10 12:24:47 +03:00
581c8ee087
Style fixes and pylint hint in inventory
2019-05-10 12:24:47 +03:00
01d4fbe60b
Resolved pylint warnings
2019-05-10 12:24:46 +03:00
453e045ae5
Minimal implementation of onionpeer object
2019-05-10 12:24:41 +03:00
e3344ade59
Escape HTML in MessageList_SubjectWidget ( fixes #1234 )
2019-04-26 11:05:02 +03:00
38f36d7860
Added package fallback and suppressed pylint relative-import warning
2019-04-24 14:11:21 +03:00
0d7b3a3823
Suppressed pylint warnings in test_crypto
2019-04-22 12:53:59 +03:00
e163137893
Added pycrypto fallback for RIPEMD160 hash function
2019-04-22 12:53:59 +03:00
7b9824afc9
Separate method for stopping the bitmessage process and new test case
...
for settings in the generated config, which particularly checks that
extralowdifficulty settings are not applied to daemon.
2019-04-22 12:19:09 +03:00
4b72a433c6
New config setting - extralowdifficulty
to use for testing:
...
replaces shared.useVeryEasyProofOfWorkForTesting and automatically
applies to test-mode.
2019-04-22 11:32:29 +03:00
23ca9c8c6b
PyOpenCL compatibility fix
...
It looks like PyOpenCL obsoleted the enqueue_read_buffer method, and
enqueue_copy should be used instead. Even though enqueue_copy already exists
with the earliest version of PyOpenCL I looked at, I wrote it in a
backwards-compatible way so that it doesn't break in case I missed something.
Tested on OSX in frozen mode, but it should be platform-independent.
2019-04-21 13:45:07 +02:00
d2e4d068d4
Added the same "Send message to this address" item to subscription
...
context menu and ordered the menus in the same way.
2019-03-28 17:32:24 +02:00
34ceb98d34
Reused AccountMixin.accountString() in other methods of MyForm
...
and simplified manipulations with addressbook selection.
2019-03-28 17:32:24 +02:00
9a58af4de5
New method foldertree.AccountMixin.accountString():
...
composes the 'label <address>' string which is used in
MyForm.on_action_Send() instead of bare address.
2019-03-28 17:32:18 +02:00
5a9a2dd54c
Resolve pylint warnings
2019-03-25 18:48:03 +02:00
71e4c29419
"Send message to this chan" item in chan context menu ( closes #1445 )
2019-03-25 18:48:03 +02:00
sandakersmann
37489cf7fe
Changed http to https in about.io
2019-03-23 18:59:05 +01:00
sandakersmann
fcc7a4e579
Update about.ui to 2019
2019-03-23 18:55:47 +01:00
Marius Kjærstad
e0efb7fd2f
Merge branch 'v0.6' into v0.6
2019-03-23 15:14:56 +01:00
acea683139
Test SIGTERM signal handling
2019-03-11 18:14:25 +02:00
c38d250389
Resolved pylint warnings and removed allThreadTraceback() entirely
2019-03-11 16:08:41 +02:00
f2d3b69bf8
Removed another copy of unused convertIntToString() from addresses
2019-03-11 16:08:41 +02:00
3ec798bcfb
helper_generic is obsolete
2019-03-11 16:08:41 +02:00
87bf2ac1f5
Handled pylint warnings ( closes #1436 )
2019-03-11 14:32:32 +02:00
d1c601e7ae
Added an option to reply on own messages i.e. send update
2019-03-05 19:13:21 +02:00
7e1ee815b9
Rerender more widgets when deleting address by API
2019-03-05 18:47:37 +02:00
e25fb857cb
Slightly reduced TCPConnection.sendAddr() and changed
...
in order to send only nodes with non-negative rating
2019-02-07 18:52:08 +02:00
sandakersmann
6d31578976
Revert 2019 back to 2017 in about.ui
2019-02-05 15:44:35 +01:00
sandakersmann
8924d4be5c
Changed copyright year to 2019
2019-02-05 15:16:30 +01:00
5e0d168db6
Do not show context menu on 'sent' folder
...
because the 'sent' table have no column 'read'
2019-02-05 11:19:21 +02:00
ffbc09758c
Moved sslProtocolVersion and sslProtocolCiphers to network.tls
2019-02-04 22:23:28 +02:00
b52cb9360f
Moved unused timeOffsetWrongCount from shared to BMProto
2019-02-04 22:23:28 +02:00
394c676ba2
Moved successfullyDecryptMessageTimings to class_objectProcessor
2019-02-04 22:23:28 +02:00
c2a3b5faed
Removed unused varibles defined in shared:
...
alreadyAttemptedConnections*, needToWriteKnownNodesToDisk
2019-02-04 22:22:16 +02:00
3adadd398f
Removed from shared the functions duplicating protocol:
...
decryptAndCheckPubkeyPayload, isBitSetWithinBitfield
2019-02-04 22:19:39 +02:00
5b5ec2b63d
shared.connectedHostsList is obsolete
2019-01-04 16:17:01 +02:00
585b56cd2b
Fix logic
...
- thanks @g1itch !
2019-01-03 08:13:15 +01:00
4ad6401449
Logic error in download reset
...
- fix requesting the same object over and over again, now it continues to
iterate through the other objects and only resets the queue after a timeout
after the last received object
2019-01-02 22:25:25 +01:00
c3939875d3
Fix repeated downloads
...
- a bug in RandomTrackingDict caused requesting to download the same objects
over and over
- the bug is that the lastObject wasn't properly initalised, this caused the
write buffer to fill with "getdata" requests until the first object was
received
- this PR should address both the excessive bandwidth as well as excessive CPU
usage during downloading
2019-01-02 08:50:17 +01:00
Justin Ramos
2f422d46c5
use /usr/local/opt/openssl symlink, ignore a.out
2018-12-31 22:47:00 -08:00
1cdbb90f22
Get rid of map
2018-12-20 20:34:09 +01:00
3a4eed0f8b
getdata performance optimisation
...
- reduce number of calls to time.time()
- no need to shuffle, that's done by the upload thread
- get rid of unused import
2018-12-20 20:34:06 +01:00
ca567acab3
Put uploads into a separate thread
...
- instead of being processed in the ReceiveQueue thread, uploads are now done
in a dedicated thread. Only the parsing is done in ReceiveQueue thread.
- the UploadThread is modelled based on the DownloadThred, but simpler.
- it checks for intersection attack, eliminates duplicates and restricts the
write buffer size to 2MB (may still grow slightly higher if too many big
objects are requested, but the absolute limit appears to be about 4.5MB in the
worst case scenario).
- the restriction of the write buffer may cause some upload throttling (to
about 2MB per second per connection), but can be optimised later
- fixes #1414
2018-12-20 20:34:01 +01:00
PyBitmessage Translations
2457643426
Auto-updated language ja from transifex
2018-12-19 11:33:23 +01:00
e1d5604674
Fix #1408 (duplicate connections to some hosts), got from chan
2018-12-18 19:36:46 +02:00
PyBitmessage Translations
4e7cd784ad
Auto-updated language zh_cn from transifex
2018-12-17 16:09:07 +01:00
PyBitmessage Translations
328302f936
Auto-updated language eo from transifex
2018-12-16 19:35:30 +01:00
PyBitmessage Translations
ee2b957296
Auto-updated language pl from transifex
2018-12-16 18:02:39 +01:00
38318150bd
Moved missingObjects dict from state to network.objectracker
2018-12-16 17:44:26 +02:00
GONQ
b2af007280
PGP-signed spelling fix for the connection warning dialog.
2018-12-10 03:37:29 -06:00
coffeedogs
6d98a4ef44
Changes based on style and lint checks. (final_code_quality_17)
2018-11-26 14:58:16 +00:00
PyBitmessage Translations
881e523877
Auto-updated language zh_cn from transifex
2018-11-14 08:46:18 +01:00
coffeedogs
0a30eb0225
Changes based on style and lint checks. (final_code_quality_7)
2018-11-12 14:21:56 +00:00
ea38e91839
Fixing namecoin button again (broken in c7d3784
):
...
* separate method MyForm.resetNamecoinConnection() - sets MyForm.namecoin
to fresh instance of namecoin.namecoinConnection, tests it and shows or
hides "Fetch Namecoin ID" button;
* that method is called when MyForm initializes and when settingsDialog
instance is accepted;
* namecoin.namecoinConnection.query() checks found address and always
prepends it with display name, if query result doesn't contain "name"
field it will be the query string.
2018-11-07 15:54:14 +02:00
8ad064dcac
Fix: Shift handling when deleting from Sent
...
Due to the way Qt.KeyboardModifiers works, treating it as an integer results in
unexpected behaviour. As a result, When deleting from Sent, it always deleted
rather than moved an item to trash, when selecting "Move to Trash" from the
context menu. This fixes it.
2018-11-05 01:33:34 +01:00
0e63392ee3
Fix #1385 : not check for pyqt if daemon = true set in config
2018-11-04 15:16:56 +02:00
58bc170bda
Fix #1383 - formatting artifact in 7ed459b
2018-11-01 16:53:53 +02:00
ae2cebb2a6
Minimal test for clientStatus consistency
2018-11-01 16:52:33 +02:00
9ef928b4a9
Removed extra call of shared.thisapp.cleanup() in bitmessageqt
2018-11-01 11:32:14 +02:00
ff04bf072e
Allow re-call of MyForm.quit() if user selected to wait at first
2018-11-01 11:32:14 +02:00
4383b49be8
flake8 for bitmessageqt.MyForm.quit()
2018-11-01 11:32:14 +02:00
coffeedogs
10128b7560
Changes based on style and lint checks. (final_code_quality_2)
2018-10-31 17:06:26 +00:00
coffeedogs
78ddb2f2f2
Changes based on style and lint checks. (final_code_quality_12)
2018-10-31 16:20:42 +00:00
coffeedogs
0bceeca524
Changes based on style and lint checks. (final_code_quality_5)
2018-10-31 14:04:35 +00:00
coffeedogs
c875769b15
Changes based on style and lint checks. (final_code_quality_3)
2018-10-31 12:58:46 +00:00
coffeedogs
a72da271d5
Changes based on style and lint checks. (final_code_quality_1)
2018-10-31 12:37:10 +00:00
1c914d8cd8
flake8 and style correction for network.udp
2018-10-27 17:55:38 +03:00
625e83f4b4
Corrected style a bit
2018-10-27 17:55:02 +03:00
49985a435f
Special class BMStringParser for sending ACK ( resolves #1374 )
2018-10-27 17:55:02 +03:00
7c7d6781a2
Removed old code from protocol, shared, state
...
and class_objectProcessor modules (#1374 ), temporarily commented
shared.checkAndShareObjectWithPeers() call
2018-10-27 17:55:01 +03:00
1c2bef46c1
e417b62
allows to remove sleep from cleaner test
2018-10-22 17:18:25 +03:00
5572e6b3a1
Suppress pylint warning about 'relative import'
2018-10-22 17:18:24 +03:00
daf556ca50
Added tests for knownnodes:
...
- import of pickled knownnodes;
- default knownnodes if nothing imported;
- knownnodes starvation (#1335 ), demanded changes in networkthread.
2018-10-22 17:18:24 +03:00
2bbda63b9c
Added address length check
2018-10-22 17:18:24 +03:00
c8a781c7c5
Marked use of random, subprocess and xmlrpclib in tests
...
for skipping by bandit
2018-10-22 17:18:24 +03:00
cfdb6beb54
Moved tests from helper_msgcoding into TestCore.test_msgcoding()
2018-10-22 17:18:24 +03:00
ea8991c05b
Test case for config, not runs pybitmessage yet
2018-10-22 17:18:24 +03:00
d8b4682ee9
Style fixes and docstrings for tests
2018-10-22 17:18:23 +03:00
a3300ba8f1
A test case for core (which will be ran in main thread)
2018-10-22 17:18:23 +03:00
51df0507e2
Fixed signal files creation
2018-10-22 17:18:23 +03:00
589900f7c3
Added a test for chan creation/joining
2018-10-22 17:18:23 +03:00
c49c131929
New test case class hierarchy:
...
- TestProcessProto has common setUpClass and tearDownClass methods
- TestProcess is for testing the PyBitmessage process (using psutil)
2018-10-22 17:18:23 +03:00
c28d463261
Added doctstrings for all tests and a test for sendBroadcast API command
2018-10-22 17:18:23 +03:00
981dddade4
Added test for createRandomAddress API command
2018-10-22 17:18:23 +03:00
10346c84aa
Basic API tests and simple apinotify handler
2018-10-22 17:18:22 +03:00
5b1d2e56a1
Changes into test mode:
...
run in background, stop after 30 sec since last API response
2018-10-22 17:18:22 +03:00
coffeedogs
7ed459b644
Changes based on style and lint checks. (final_code_quality_6)
2018-10-18 19:46:01 +01:00
d8be7cd19a
Right check in module tr - right import order
2018-10-16 14:48:58 +03:00
533df80ce9
Resolving pylint warnings
2018-10-12 11:58:02 +03:00
bd5bdda009
Moved class singleAPI to api module and import api
below config check
2018-10-12 11:58:02 +03:00
ef54bcaf82
The changes in #1325 are buggy. Implementing it properly.
2018-10-12 11:28:13 +03:00
b2c8b77938
Closes #1360 : validate knownnodes received from the network
2018-10-12 11:16:57 +03:00
6969ec0ec9
Removed commented config check and added module docstring
2018-10-10 14:14:08 +03:00
e417b6257f
Fixes #1335 :
...
- moved knownnodes cleanup to knownnodes module,
- added a check for last node in stream initiating DNS based bootstrap.
2018-10-10 14:14:02 +03:00
4c184d8ffe
Fix import of pickled knownnodes.dat
2018-10-05 12:25:14 +03:00
95e300d7ca
Fix pylint Too many arguments Issue
2018-09-04 18:54:59 +05:30
a5833be1b7
Fix pylint Instance of 'str' has no 'ids' member issue
2018-09-04 18:35:22 +05:30
abd3e02d72
Fix pylint global variable undefined at the module level issue
2018-09-04 18:21:27 +05:30
f4d25ab0ed
Fix pylint global variable warning issue
2018-09-04 18:14:28 +05:30
f004021c6d
Fix pylint issues based on no-self
2018-09-01 17:15:39 +05:30
30fc79ed45
Fix pylint issues
2018-08-31 18:26:22 +05:30
686967c36d
Fix flake8 issues
2018-08-31 18:26:22 +05:30
f98acd3ae0
Implementing swipe left to right delete feature for inbox, sent message to be archieved in Kivy
2018-08-31 18:26:22 +05:30
d8a5b9356f
Implement sent item message loading feature for current account logged with dynamic dispatching of accounts
2018-08-31 18:26:22 +05:30
c163001ee8
Loadmessage list feature with current account get and ngletters images icon
2018-08-31 18:26:22 +05:30
b1f7489b09
Implemement Ui for Inbox Load feature with create new address based on random number
2018-08-31 18:26:22 +05:30
Alexx Saver
50ee7fa740
Fix subprocess.check_call
2018-08-20 06:50:46 +04:00
b0446ab4ab
Improve pickle knownnodes error handling
...
- Fixes #1333 (untested)
2018-08-05 09:07:31 +02:00
PyBitmessage Translations
62024ca7e9
Auto-updated language fr from transifex
2018-08-02 13:14:57 +02:00
358e621710
Round peer rating to 2 decimal places before saving knownnodes
2018-08-02 12:26:41 +03:00
342e2a209c
Use DNS seed only if knownnodes are empty
2018-07-30 17:39:12 +03:00
3ce4694591
Lower log_level for IOError while reading namecoin.conf
2018-07-30 11:48:16 +03:00
a1a8d3a05d
Fixed undesirable log_level replacement in depends
2018-07-30 11:48:11 +03:00
5115425a61
Debian forgotten in e92a85e
2018-07-29 15:56:19 +03:00
PyBitmessage Translations
5a5f94eb3d
Auto-updated language zh_cn from transifex
2018-07-29 14:38:23 +02:00
PyBitmessage Translations
5934648da2
Auto-updated language eo from transifex
2018-07-29 14:34:52 +02:00
PyBitmessage Translations
6552662d83
Auto-updated language pl from transifex
2018-07-29 14:31:51 +02:00
PyBitmessage Translations
b99511ce2b
Auto-updated language ja from transifex
2018-07-29 14:26:41 +02:00
27d64df26e
Suggested Review changes in import statement sequence
2018-07-25 15:55:47 +05:30
8d5ff9abba
Added changes for create new message feature for send button and cancel button
2018-07-24 18:12:53 +05:30
b0809c3c23
Added images for create message icon and new idenetity
2018-07-24 15:45:18 +05:30
178194dd4c
Implement Ui for adding New Identity feature with navigation Enhancement
2018-07-24 15:41:00 +05:30
1adcf7f3f4
Changes made for Exit application button feature with trash enhancement
2018-07-24 15:40:47 +05:30
bb8d4c5a1f
Added Navigation Drawer UI with create feature
2018-07-24 15:40:35 +05:30
e1d2ead701
Fix exception 'KeyError: None' in checkdeps introduced in e92a85e
,
...
Fixes #1316
2018-07-22 13:37:12 +03:00
996a48f298
Confirmation for network switch
2018-07-22 12:10:13 +03:00
PyBitmessage Translations
8537fbb2cc
Auto-updated language fr from transifex
2018-07-09 14:27:58 +02:00
13d41c7647
added imports for wrapper main file kivy running
2018-07-09 17:36:28 +05:30
956f689eeb
Fixes some issue of kivy running
2018-07-09 17:22:24 +05:30
a859dd78e7
moving a kivy module to a separate folder having Ui too
2018-07-09 17:22:08 +05:30
c22fd4e8a7
Changes made on UI for Desktop and Mobile Clients with suggested review changes
2018-07-09 17:22:08 +05:30
7aac991c4f
Changes made on UI for Desktop and Mobile Clients
2018-07-09 17:22:08 +05:30
4770790597
Added kivy for making it run on Desktop and Mobile Clients
2018-07-09 17:22:08 +05:30
6b2f82a7cd
Added suggested review changes for PR 1297
2018-07-09 17:22:08 +05:30
d7efd746f2
fix Missing module docstring issue with other pep8
2018-07-09 17:22:08 +05:30
b4a0d8ad37
fix codacy coding standards issue
2018-07-09 17:22:08 +05:30
c1868456df
Added kivy basic architecture for support mobile client PyBitmessage
2018-07-09 17:22:08 +05:30
529559d06a
Reduced BMConfigParser in the sake of readability
2018-07-04 17:59:58 +03:00
ba5caf3fda
Sorted out configuration loading/updating a bit:
...
- used BMConfigParser.safeGet.. methods instead of try .. except
- moved all config checks from class_sqlThread into helper_startup
- commented out initialization of settings which are then rewritten
by updateConfig()
2018-07-04 17:59:58 +03:00
2504c80da6
Fix an issue from #1153 for setup without plugins package
2018-07-01 12:18:12 +03:00
c7d3784b80
No need to import namecoin early because it's really used only in Qt UI
2018-06-30 16:11:11 +03:00
795b855c65
Returned logger setting to debug though slightly deduplicated
2018-06-30 01:28:22 +03:00
PyBitmessage Translations
da3e72186d
Auto-updated language ru from transifex
2018-06-29 17:15:30 +02:00
coffeedogs
4139c69212
Merge branch 'v0.6' into issue_1288
2018-06-28 13:07:53 +01:00
coffeedogs
d0c2759c41
Fix issue #1288
2018-06-28 12:42:05 +01:00
46f5ead960
Import email related stuff only if configured
2018-06-27 12:27:46 +03:00
96773c5d6d
Import numpy after pyopencl
2018-06-27 12:27:41 +03:00
e92a85e1c5
Rewritten detectOSRelease() to pull values from dict
2018-06-27 01:27:37 +03:00
4eb3a00625
Minimum supported python is 2.7.4. Changed the check and log msg.
2018-06-27 01:27:37 +03:00
953ea4e950
Slightly rewritten bitmessagemain to use depends properly
2018-06-27 01:27:37 +03:00
9f8955ccdd
Reused depends in checkdeps script and formatted it also,
...
made checkdeps executable instead of depends
2018-06-27 01:27:37 +03:00
701521c55a
flake8: depends
2018-06-27 01:22:37 +03:00
PyBitmessage Translations
b27cc071a2
Auto-updated language pl from transifex
2018-06-26 22:46:22 +02:00
PyBitmessage Translations
ab95ae1263
Auto-updated language eo from transifex
2018-06-26 21:23:11 +02:00
57ddf8f2fd
flake8: state
2018-06-26 16:28:31 +03:00
354bf45d54
Merge branch 'v0.6' into readthedocs
2018-06-26 15:25:27 +02:00
65b7079895
Merge branch 'v0.6' into codeQ-2805
2018-06-26 15:15:58 +02:00
da8e7a246e
Returning bitmessageqt package back to normal
...
reverting all changes to __init__
2018-06-26 13:34:29 +03:00
a01d5a378c
Merge branch 'v0.6' into readthedocs
2018-06-26 08:50:21 +02:00
coffeedogs
86a7311a78
Merge branch 'v0.6' into issue_1277
2018-06-19 11:50:13 +01:00
coffeedogs
e5e9f70c2a
Fixed: Code style and lint issues
2018-06-15 12:54:41 +01:00
coffeedogs
d9f0a8708b
Fixed: Chan-provided diff to revert changes from boolean operators to any()/all(). Closes #1277 .
2018-06-15 12:25:10 +01:00
coffeedogs
02f40f5036
Fixed: ERROR - Too many items in inv message! Closes 1274
2018-06-14 11:57:04 +01:00
coffeedogs
3b75d900f6
Added: Sphinx docs, testing readthedocs integration
...
* Added: Sphinx configuration including readthedocs config
* Added: Sphinx fabric task to auto-document the project
* Fixed: Some issues in the code causing autodoc to fail when parsing
* Added: Manual docs - structure, proof of concepts and RsT examples
* Fixed: RsT formatting in docstrings
* Fixed: Some adjacent minor style and lint issues
2018-06-13 10:07:45 +01:00
coffeedogs
6f5c261fb4
Merge branch 'v0.6' into codeQ-2805
2018-06-12 00:24:48 +01:00
649fda5b81
Merge PR 1261 into v0.6
2018-06-12 00:10:34 +02:00
c7917efbd9
Merge PR 1250 into v0.6
2018-06-11 23:50:25 +02:00
7878f83552
Merge PR 1235 into v0.6
2018-06-11 23:24:10 +02:00
coffeedogs
759b760977
Fixed: Style and lint violations for three more of the worst violating files
2018-05-28 14:35:30 +01:00
f97ada87
5221f6a883
adding docstring and integer typecast
2018-05-25 06:13:01 +00:00
coffeedogs
e1c2e8ec46
Fixed: Responded to PR comments
2018-05-24 16:59:40 +01:00
coffeedogs
ab1dd319e3
Fixed: Code style and lint fixes
2018-05-24 10:53:11 +01:00
f97ada87
609a4a92e2
enable delayed POW checks
...
enable delayed POW checks via optional "receive time" argument
2018-05-23 03:38:05 +00:00
659d45bb15
Create default knownnodes if cannot read from file
2018-05-21 18:49:39 +03:00
b499e1bd22
Start without knownnodes if JSON got corrupted
2018-05-21 18:49:39 +03:00
5e72fdba17
Simplified addKnownNode() and added docstrings
2018-05-21 18:49:38 +03:00
67feb8fee9
Serialize knownnodes to json by default
...
Fixes #1232
2018-05-21 18:49:38 +03:00
f87ce4ad50
Moved reading knownnodes.dat into knownnodes module
2018-05-21 18:49:38 +03:00
ca42b4be63
flake8 for knownnodes
2018-05-21 18:49:38 +03:00
74ddda8775
helper_generic: imports in alphabetical order, import multiprocessing
2018-05-21 13:37:28 +03:00
4cf73675c2
flake8: bitmessagemain, class_singleCleaner, helper_generic, shutdown
...
and singleinstance
2018-05-21 13:37:23 +03:00
cb0996c6c8
flake8: api, debug
2018-05-21 12:20:57 +03:00
4610e1a0d7
Merge PR 1254 into v0.6
2018-05-21 11:03:21 +02:00
a43efc5b20
Merge PR 1253 into v0.6
2018-05-21 10:20:27 +02:00
78aa263964
Merge PR 1252 into v0.6
2018-05-21 09:07:56 +02:00
7313a4687e
Merge PR 1249 into v0.6
2018-05-21 08:56:36 +02:00
40dc7d330d
flake8: class_objectProcessor
2018-05-18 13:55:55 +03:00
31f107f048
flake8: bmconfigparser
2018-05-18 13:55:00 +03:00
coffeedogs
9263026bc8
Fixed: Addressed issues raised in PR
2018-05-17 10:51:21 +01:00
coffeedogs
ce955ba844
Fixed: Style and lint issues in src/qidenticon.py
2018-05-16 12:31:06 +01:00
coffeedogs
6c268ba22f
Fixed: Type error, reported from the bitmessage chan
2018-05-16 12:01:51 +01:00
coffeedogs
da87ae24ee
Fixed: Style and lint violations in src/bitmessageqt/__init__.py
2018-05-15 16:20:53 +01:00
coffeedogs
e0d31d77c9
Fixed: Style and lint violations in src/bitmessagecli.py
2018-05-15 16:15:44 +01:00
7445665963
Merge branch '1228' into v0.6
2018-05-10 08:44:46 +02:00
fdemortain
cafdff7f42
Update bitmessagecli.py
2018-05-09 14:09:42 +02:00
157590e0ee
Merge branch '1231' into v0.6
2018-05-09 14:08:11 +02:00
5d96a77a87
Merge branch '1233' into v0.6
2018-05-08 13:58:45 +02:00
coffeedogs
8979a1bef5
Fixed: Addressed PR comments
2018-05-08 12:53:58 +01:00
coffeedogs
ed4a092c51
Removed: # nosec directives until further security review.
2018-05-08 12:13:49 +01:00
coffeedogs
fe3a86d361
Fixed: Addressed PR comments
2018-05-07 11:50:51 +01:00
f97ada87
71d6fad242
pep8 fix
...
line length fixed by cleaning up an error message
2018-05-06 11:06:44 +00:00
f97ada87
bcaad3e0fb
fix issue 1236
...
fixes regression introduced in PR #1062 affecting default and minimum lengths of ackdata objects
2018-05-05 12:38:05 +00:00
coffeedogs
c99c3fc782
Fixed: Codacy issues in src/class_*.py
2018-05-03 19:05:39 +01:00
NourEddine K. Yassine
0cd6e687c9
Fixed Typo that prevented bitmessagecurses from running!
2018-05-02 18:24:11 +02:00
coffeedogs
dd1ee618a5
Fixed: Simple Codacy errors and warnings in src/helper_*
...
* Some local pickle operations and non-cryptographic random operations
were marked as safe to the bandit linter
* A bandit config file was added and assert warnings are now ignored globally
* Tightened up exception handling and code style
2018-05-02 15:52:47 +01:00
fdemortain
ac297e8d33
Typos
...
l 563 : # Generate Address -> # Delete Address
l 1381 : determinstic -> deterministic
2018-05-02 09:37:57 +02:00
f97ada87
54651c7598
fix logic bug in enableGUI implementation
2018-04-13 20:16:00 +10:00
bb433fc495
Merge branch '1216' into v0.6
2018-04-11 13:36:41 +02:00
4507464c56
Merge branch '1214' into v0.6
2018-04-11 13:19:53 +02:00
2de5fbe01a
Merge branch '1210' into v0.6
2018-04-10 13:47:25 +02:00
Mahendra Garg
d81fb4b63e
Made changes while import prctl
2018-04-10 14:19:34 +05:30
Mahendra Garg
a836d0a9af
Merge branch 'helper_threading_formating' of https://github.com/MahendraNG/PyBitmessage into helper_threading_formating
2018-04-10 13:25:37 +05:30
Mahendra Garg
6bce912a81
Fix undefined streamNumber bug
2018-04-10 12:44:32 +05:30
c76074df8c
Merge branch '1211' into v0.6
2018-04-10 08:16:56 +02:00
32ab6aaae5
Merge branch '1208' into v0.6
2018-04-10 08:12:25 +02:00
f97ada87
cb59b8abbd
component control switches
2018-04-09 15:03:02 +10:00
Mahendra
4840b2db5c
add docstring for sqlQuery and sqlBulkExecute methrod in helper_sql and removed query method of sqlBulkExecute class
2018-04-07 19:20:29 +05:30
Mahendra
5efb491349
add docstring for set_thread methrod in helper_msgcoding
2018-04-07 18:42:21 +05:30
Mahendra
f71f895a11
helper_inbox formating
2018-04-07 16:11:24 +05:30
Mahendra
e6e4c66010
helper_threading formating
2018-04-07 15:14:43 +05:30
Mahendra
a3dff6200e
helper_search formating
2018-04-07 14:10:50 +05:30
Mahendra
a012d4a707
helper_startup formating
2018-04-07 13:35:31 +05:30
Mahendra
498557a6d6
Removed unused variable queryreturn from helper_sql
2018-04-07 13:18:58 +05:30
Mahendra
21922251e2
helper_sql formating
2018-04-07 12:59:09 +05:30
62e80e9ca7
Merge branch '1206' into v0.6
2018-04-06 22:51:10 +02:00
Mahendra
5a2bac7e8c
Remove codacy error for docstring and reimport logger in helper_generic file
2018-04-06 19:09:56 +05:30
Mahendra
7052c734bd
Add log for thread error on helper_generic file
...
- Remove if condition for RegExParser
2018-04-06 19:00:32 +05:30
Mahendra
c0036d8c18
Add docstring in helper_generic.py
2018-04-06 18:33:30 +05:30
Mahendra
ed26782114
Add docstring in helper_ackPayload
2018-04-06 18:12:57 +05:30
Mahendra
442fe81e3a
helper_generic.py formating
2018-04-06 17:50:55 +05:30
Mahendra
a70b063004
helper_ackPayload formating
2018-04-06 16:21:29 +05:30
43a471a79b
Used state.testmode to indicate when operating in test mode
2018-04-05 13:48:13 +03:00
54c37150e0
Shutdown fixes
...
- tell sql thread to finish only after the other threads finished
- prevents other threads stalling on sql replies
2018-04-05 12:36:02 +02:00
12117ada99
Add docstring
2018-04-03 19:24:10 +02:00
ca7becb921
Download fixes
...
- in corner cases, download request could have contained an incorrect
request length. I haven't actually checked if this can be triggered
though
- wait for downloading until anti intersection delay expires. Doesn't
necessarily mean that it will always avoid peer's anti intersection
delay, but it's close enough
- tracks last time an object was received. If it was too long time ago,
reset the download request queue. This avoid situations like when a
request gets ignored during the anti intersection delay, but it will
keep thinking there are still pending requests as long as not all
missing objects have been requested. This caused staggered download
(request 1000 items, wait 1 minute, request 1000 more, wait another
minute, ...)
- with these fixes, you should end up downloading as fast as your
network and CPU allow
- best tested with trustedpeer
2018-04-03 19:24:07 +02:00
6eb2155497
Another unicode -> str bug ( #1194 )
2018-04-03 15:11:46 +03:00
5e0e1c09b3
Merge branch '1197' into upstream-v0.6
2018-04-02 17:39:28 +02:00
0c9cb4824d
Memory leak (kind of) fix
...
- objectsKnownToThem is supposed to track if it's necessary to send inv
commands to a peer
- it is supposed to enter garbage collection after 1 hour
(ObjectTracker.trackingExpires)
- due to peer not announcing all objects, or announcing them before we
announce, this contains excessive number of entries after connection
is fully established.
- profiling revealed that this creates unnecessary memory to be kept
allocated
- this patch will prevent tracking of entries sent during bigInv,
reducing the memory "leak"
- it is possible, in theory, that this does have some negative effect,
like increased bandwidth or neglecting to announce some invs. It
probably doesn't though as my review of objectsKnownToThem occurrences
didn't reveal any such case, and since the dict didn't track fully
accurately anyway (so it would have already been broken if it was a
problem), I consider it an acceptable risk at the moment. If it indeed
causes problems, they can be solved separately
- I tested this on one of the bootstrap servers with little memory, and
it increased the number of connections than can be handled by a factor
of about 3.5
2018-04-01 11:39:02 +02:00
58c3dfb3d4
Testing mode for bitmessagemain
2018-03-29 15:55:28 +03:00
2268413cd0
Do not try to connect namecoin if dontconnect set in config ( #1146 )
2018-03-26 16:47:22 +03:00
73ebad4a4e
Merge branch '1179' into upstream-v0.6
2018-03-24 09:43:11 +01:00
6430ea7fe6
Merge branch '1171' into upstream-v0.6
2018-03-24 09:40:35 +01:00
cec8519e43
Added "apiinterface" and "apiport" to BMConfigDefaults
2018-03-22 17:50:26 +02:00
55d6239e3d
Merge branch '952' into upstream-v0.6
2018-03-22 16:16:24 +01:00
d974065f8e
Handle exceptions from python without ipv6 support
2018-03-22 17:13:34 +02:00
d7ac440a04
Merge branch '1172' into upstream-v0.6
2018-03-22 16:12:53 +01:00
9ccd3a0989
Prevent settingsDialog from setting dontconnect = false
...
if "Work offline" was checked in the ConnectDialog
2018-03-22 17:10:29 +02:00
6cefaf87e9
Module foldertree: changed subclassing order to reuse common code
2018-03-22 14:55:30 +02:00
90eca36b5d
Module foldertree: simplified a bit and did flake8
2018-03-22 14:55:25 +02:00
6562502416
Even more unused variables
2018-03-22 13:48:07 +02:00
e43bd36618
More unused variables
2018-03-22 13:23:36 +02:00
d91c3a6b0c
Removed unnecessary comment and percent formatting in logger.error
2018-03-22 12:13:47 +02:00
d447db907c
Address operations: simplified the code a bit
2018-03-22 12:13:47 +02:00
006b98389b
Address operations: flake8
2018-03-22 12:13:47 +02:00
cbb228db8b
Merge branch '1180' into upstream-v0.6
2018-03-22 11:08:51 +01:00
Mahendra
8d48164734
fix indentation error in dependency file
2018-03-22 15:27:37 +05:30
5721ca53fd
Merge branch '1174' into upstream-v0.6
2018-03-22 08:31:25 +01:00
Mahendra
1a36361ef9
replace all random.xxx with helper random function
2018-03-21 19:26:27 +05:30
d7cd294eb4
Merge branch '1173' into upstream-v0.6
2018-03-21 14:14:08 +01:00
Mahendra
6076e1832a
implement more helper random changes with replace random.xxx
2018-03-21 18:19:08 +05:30
f3960c1638
Merge branch '1170' into upstream-v0.6
2018-03-21 13:08:10 +01:00
Mahendra
1ad321b08a
replace random.xxx with calls to the helper_random function
2018-03-21 17:22:23 +05:30
08888117af
Merge branch '1169' into upstream-v0.6
2018-03-21 11:57:15 +01:00
Mahendra
48b8af975a
added random(sample, shuffle, randrange) methods in helper_random
2018-03-21 16:13:43 +05:30
Mahendra
ee7b591c6c
added docstring for requirement dependency
2018-03-21 15:47:55 +05:30
72299483c4
Do not duplicate avatar in address column of Address book
2018-03-14 16:34:03 +02:00
1e037024c3
Merge branch '1156' into upstream-v0.6
2018-03-14 13:59:40 +01:00
9bd60c4a0f
Merge branch '1153' into upstream-v0.6
2018-03-14 13:59:21 +01:00
50b74c2223
No lib symlinks in openwrt
2018-03-14 12:56:23 +02:00
0ef0e6b020
Added docstrings. Removed unused method Image.save().
2018-03-14 08:57:51 +02:00
0ddc56e83a
Added schema 'bitmessage:', it's unreadable otherwise for some reason
2018-03-14 08:57:20 +02:00
PyBitmessage Translations
f9c66956c5
Auto-updated language ja from transifex
2018-03-13 16:15:59 +01:00
3850a920c9
Do not add gui.menu plugins with prefix 'address' to "All accounts" item
2018-03-13 13:46:47 +02:00
08a2115412
Properly renamed qrcode plugin module and made menu available
...
for all address entries except for addressbook and blacklist
2018-03-13 13:46:47 +02:00
77e779638c
Removed unnecessary code in qrcode plugin
2018-03-13 13:46:47 +02:00
4b995e7996
Fix circular import
...
- previous commit broke
2018-03-13 11:42:43 +01:00
af2bb95601
Remove unused imports
2018-03-13 07:41:59 +01:00
1e4400a207
Remove obsolete code
...
- PendingDownload and PendingUpload in inventory.py are obsolete
- the replacement functions only provide lengths and are in
network/stats.py
2018-03-13 07:32:23 +01:00
7938eab454
Remove obsolete files
2018-03-11 20:38:58 +01:00
0da0c10995
Socks5 parsing fix
...
- Fixes #1134
- Came over BM, thank you kind stranger
2018-02-26 20:04:57 +01:00
140265621f
UPnP parser fix
...
- Fixes #1131
- Came over BM, thank you kind stranger
2018-02-26 20:03:35 +01:00
1184b23223
Separate protocol processing exceptions
...
- exceptions thrown by the state methods are separated from missing
connections or states. This allows more accurate error reporting
2018-02-19 21:27:38 +01:00
fde194f9b0
More messagetypes hardening
...
- only load modules at program start
2018-02-19 16:57:47 +01:00
757740369b
Add proxy authentication
...
- proxy module was missing initialisation of authentication
2018-02-18 20:53:16 +01:00
ff9634141e
Merge branch '1127' into v0.6
2018-02-18 20:35:16 +01:00
d25a821b1d
Merge branch '1128' into v0.6
2018-02-18 20:34:59 +01:00
c8ea8662a5
Merge branch '1141' into v0.6
2018-02-18 20:34:03 +01:00
99f51fd94c
Merge branch '1137' into v0.6
2018-02-18 20:33:28 +01:00
07149c73c8
Get rid of evals
...
- eval is evil. Get rid of the remaining evals. They were not assessed
as dangerous but it's matter of policy now.
2018-02-18 20:14:21 +01:00
616920e21a
Minor UI fixes
...
- typo in UTF conversion
- update status message correct matching (does not show all messages as
changed status, for example)
- add newly sent messages to global sent folder if selected
2018-02-18 19:39:26 +01:00
PyBitmessage Translations
dbedd4a193
Auto-updated language fr from transifex
2018-02-18 11:23:13 +01:00
a3436fef9c
Quick fix for refactoring artifact in blacklist module ( #1138 )
2018-02-17 14:36:09 +02:00
PyBitmessage Translations
d09900def7
Auto-updated language zh_cn from transifex
2018-02-16 14:33:10 +01:00
634a49cd6d
Bump version
2018-02-14 00:23:47 +01:00
c050ef0814
Messagetype attack mitigation
...
- temporarily restrict messagetypes
- use a new "Contact support" address
2018-02-13 23:33:12 +01:00
PyBitmessage Translations
5b5f254be0
Auto-updated language pl from transifex
2018-02-13 18:54:07 +01:00
PyBitmessage Translations
e2374cac0a
Auto-updated language eo from transifex
2018-02-13 18:41:10 +01:00
4cd36ececc
Bump version
2018-02-13 17:16:20 +01:00
3a8016d31f
Fix message encoding bug
...
- prevent loading invalid message types
2018-02-13 16:39:35 +01:00
96ea36cfd2
UPnP client port randomize
2018-02-13 16:11:53 +01:00
f9a648d720
Message decoding exception handler fix
...
- was unfinished and caused the object processor thread to crash
2018-02-13 13:24:37 +01:00
3ad94cb4aa
Translate namecoin failure message
2018-02-13 11:55:38 +02:00
8b932ade2d
No "getinfo" in modern namecoind - try "getnetworkinfo"
2018-02-13 11:55:37 +02:00
PyBitmessage Translations
4ba5702cc2
Auto-updated language ru from transifex
2018-02-12 22:31:54 +01:00
PyBitmessage Translations
e5428ee064
Auto-updated language de from transifex
2018-02-12 21:50:45 +01:00
PyBitmessage Translations
022ee09177
Auto-updated language sk from transifex
2018-02-12 21:33:30 +01:00
6bcbad63b9
Marked folder names for translation
2018-02-12 21:10:10 +02:00
eb97face61
Show traceback in protocol parser error handler
2018-02-12 17:07:54 +01:00
2bc2b6bc5b
Typo
2018-02-12 14:49:43 +01:00
eefc967737
Pluralisation
2018-02-12 14:10:51 +01:00
a69daa13b9
Pluralisation
2018-02-12 13:48:59 +01:00
cf8ed36240
Windows Qt refactoring fix
2018-02-09 11:11:48 +01:00
066b419e16
Bugfixes
...
- typo in dandelion
- stealth ackdata fix for broadcasts and mailing lists
2018-02-09 00:49:08 +01:00
bbb5e5d99b
Fixed trailing '>' in message view which appeared after HTLM rendering
2018-02-08 12:58:38 +02:00
f870bcc6f7
More lightweight URI regexp
...
- the old one can take a lot of resources and be misused for a DoS
- this still nees to be tested if it is flexible enough
- also fix link click popup
2018-02-08 06:52:33 +01:00
08bb85a952
Dandelion staticmethod fix
2018-02-07 17:22:26 +01:00
c6834093ee
QT sqlite conversion fix
...
- QByteArray will be stored as str in the db
2018-02-06 23:55:41 +01:00
66bed6c7d6
Merge branch '1116' into v0.6
2018-02-06 22:31:52 +01:00
3d1fa473fb
Dandelion updates
...
- expiration now uses poisson distribution just like in the bitcoin
version
2018-02-06 22:28:56 +01:00
d083c53e1b
New button "Clear" on tab "Send" to clear all fields ( #919 )
2018-02-06 21:07:01 +02:00
6269e45a47
Merge branch '1117' into v0.6
2018-02-06 18:21:33 +01:00
3b3e4de9d7
Zero Inventory().numberOfInventoryLookupsPerformed before update started
...
because "Inventory lookups per second" is calculated by /2 (for 2 sec)
2018-02-06 17:33:19 +02:00
4a3f8f4806
Change unread status of message in "All Accounts"
...
when it changed in "Chans" and vice versa (#1044 , #884 )
2018-02-06 15:48:56 +02:00
85cce42de0
Update "Network Status" information only when the tab selected
2018-02-05 14:39:32 +02:00
03f08b3cfd
Typo
2018-02-04 21:16:30 +01:00
a646ec4902
Allow separate proxy for onions
...
- new options in network section: onionsocksproxytype,
onionsockshostname and onionsocksport. These allow to separate
connectivity types for onion and non-onion addresses, e.g. connect to
clear nodes over clearnet and onions over tor
- also remove some obsolete imports
2018-02-04 21:03:54 +01:00
fd1a6c1fa1
Dandelion update
...
- dandelion fixes
- try to wait as long as possible before expiration if there are no
outbound connections
- expire in invThread rather than singleCleaner thread
- deduplication of code in inv and dinv command methods
- turn on by default, seems to work correctly now
- turn off dandelion if outbound connections are disabled
- start tracking downloads earlier, and faster download loop
- remove some obsolete lines
- minor PEP8 updates
2018-02-03 11:46:39 +01:00
PyBitmessage Translations
9db0f5bcb3
Auto-updated language sk from transifex
2018-02-02 19:22:18 +01:00
PyBitmessage Translations
d03d4a374e
Auto-updated language de from transifex
2018-02-02 18:29:41 +01:00
d09f2aac96
Merge branch '1105' into v0.6
2018-02-02 18:18:06 +01:00
3f75052d7b
Merge branch '1108' into v0.6
2018-02-02 18:17:53 +01:00
374e0805f0
Merge branch '1109' into v0.6
2018-02-02 18:17:33 +01:00
ec30472dd8
AboutDialog formatting fix (hope)
2018-02-02 18:31:53 +02:00
b0271e51ff
Set fixed size for simple dialogs
2018-02-02 18:31:07 +02:00
96b8cff0d1
Inventory checking performance optimisation
...
- caching of whether an object exists in inventory was somehow removed
since storage refactoring (or it never worked). Now existence checking
is cached in the sqlite storage backend
2018-02-02 14:33:29 +01:00
053f434e04
Download fixes
...
- don't make empty requests
- don't make requests if all objects are pending already
2018-02-02 12:44:43 +01:00
57c8c7c07c
Download thread exception handling
2018-02-01 23:18:08 +01:00
8498143783
Download fixes
...
- check if already have object before requesting
2018-02-01 22:58:04 +01:00
dcce7ed4c5
Typo
2018-02-01 22:33:28 +01:00
451174b566
Download tracking fix
...
- don't reset tracking too early
- handle inserts when tracking objects
2018-02-01 22:31:45 +01:00
8a5ec29540
Store object hash as binary in sqlite (inventory)
2018-02-01 21:24:50 +01:00
PyBitmessage Translations
283696a053
Auto-updated language pl from transifex
2018-02-01 20:19:08 +01:00
PyBitmessage Translations
2f150dcdd7
Auto-updated language eo from transifex
2018-02-01 19:17:51 +01:00
167d946435
RandomTrackingDict now tracks properly
...
- it didn't put the correct keys at the end
2018-02-01 14:43:14 +01:00
290b87a49f
Download fixes
...
- don't expire too quickly
- ignore connections that haven't been fully established yet
2018-02-01 12:48:14 +01:00
c5dc7fc903
Typo
2018-02-01 12:26:54 +01:00
8d05742436
Typo
2018-02-01 12:20:41 +01:00
68b58ce0c5
Download optimisation
...
- new data structure to handle download tracking, uses less CPU
2018-02-01 12:19:39 +01:00
d223bfc6f2
Fix kqueue poller
...
- separate read and write filters
- make filters peristent for reduced syscall count
2018-01-31 22:25:23 +01:00
222e666a60
Network thread shutdown iterator fix
...
Thanks to @g1itch for pointing this out.
2018-01-31 21:09:36 +01:00
25a9e5ea45
Fixed errors I introduced in commit 4115540
after rebase
2018-01-31 20:12:04 +02:00
PyBitmessage Translations
0c4ea7d20f
Auto-updated language ru from transifex
2018-01-31 17:34:38 +01:00
f4861be976
Add Ukrainian translation file
2018-01-31 12:33:43 +02:00
175f8b14a5
Update SOURCES and FORMS in bitmessage.pro
2018-01-31 12:31:23 +02:00
9807d3e4b4
Don't complain about being disconnected if in offline mode
2018-01-30 17:42:10 +01:00
ced3f78fb4
Merge branch '1092' into v0.6
2018-01-30 17:32:25 +01:00
PyBitmessage Translations
80ca82ad8b
Auto-updated language ru from transifex
2018-01-30 16:33:27 +01:00
c92c2aebc2
Blank title of RegenerateAddressesDialog also
2018-01-30 17:27:01 +02:00
afcd83a434
This is probably the right way to handle modal dialogs
2018-01-30 17:27:01 +02:00
41155406d6
Simplified showing statusbar messages:
...
- Use MyForm.statusbar set in __init__ instead of MyForm.statusBar()
- MyForm.updateStatusBar() to show the message in MyForm methods
- queues.UISignalQueue.put(('updateStatusBar', msg)) in dialogs
2018-01-30 17:27:01 +02:00
ece5ad9113
Separated dialogs which deal with addresses into address_dialogs module
2018-01-30 17:27:00 +02:00
c699f6d872
Got rid of wildcard imports in bitmessageqt.__init__
2018-01-30 17:27:00 +02:00
641db73614
Removed unused _encoding and _transalate
2018-01-30 17:27:00 +02:00
25876ded2b
Removed unused import of inventory.Inventory
2018-01-30 17:27:00 +02:00
cd88d063a1
Imported NewChanDialog into dialogs module
2018-01-30 17:26:59 +02:00
35a11c271a
Moved NewAddressDialog into dialogs module
2018-01-30 17:26:59 +02:00
8109fa7ece
Moved EmailGatewayDialog (with both usage) into dialogs module
2018-01-30 17:26:59 +02:00
fe76d230eb
Moved RegenerateAddressesDialog into dialogs module
2018-01-30 17:26:58 +02:00
b899086d91
Followed the recommendation #527 about tab indexes
2018-01-30 17:26:58 +02:00
20288d4ab4
Try to replace copyright year from last commit date
2018-01-30 17:26:58 +02:00
b9cd571d9b
Hide redundant QGroupBox title
2018-01-30 17:26:58 +02:00
f3808212b5
Added link to github into labelVersion in AboutDialog
2018-01-30 17:26:57 +02:00
62a930c374
Moved SpecialAddressBehaviorDialog into dialogs module
2018-01-30 17:26:57 +02:00
c965a1d2aa
Moved helpDialog and connectDialog also into dialogs module
2018-01-30 17:26:51 +02:00
e2e7e16ab7
Moved aboutDialog and iconGlossaryDialog also into dialogs module
2018-01-30 17:26:42 +02:00
d9d9f9d787
Returned AddAddressDialog and NewSubscriptionDialog into dialogs module
...
where it's been initialized by loading the ui-files.
2018-01-30 16:59:51 +02:00
81c80aa98f
Use AddAddressDialog for "Add sender to your Addres Book" context menu
2018-01-30 16:59:51 +02:00
9e79386595
Set state to "close" and call handle_close()
for all connections
2018-01-30 14:04:03 +02:00
25ef9fec51
Added menu entry "File -> Go offline/Go online" switching dontconnect
...
config variable and "Work offline" option to connectDialog.
2018-01-30 14:04:03 +02:00
cc63c1270b
Fix message content display after deleting/undeleting
2018-01-28 16:13:07 +01:00
aabce6bab2
Fix selection after delete/undelete
2018-01-28 12:48:25 +01:00
08ac8a077b
Merge branch '1062' into v0.6
2018-01-28 10:41:09 +01:00
ff92cc30c8
Fix previous commit (UI deleting optimisation)
2018-01-28 09:16:37 +01:00
0f61ed9f19
Optimise UI deleting and undeleting multiple messages
...
- use sqlExecuteChunked and disable UI updates while removing entries
2018-01-28 08:12:46 +01:00
bc7227f513
Merge branch '1090' into v0.6
2018-01-27 16:38:13 +01:00
6fca1631af
Made use of helper_sql.sqlExecuteChunked() also in on_action_InboxMarkUnread
2018-01-25 23:22:15 +02:00
80fdb08f03
Made use of helper_sql.sqlExecuteChunked() in the on_action_MarkAllRead
2018-01-25 23:04:38 +02:00
0097ea6476
The condition which is always False causes critical error #1081
2018-01-25 14:29:25 +02:00
d3a83eced6
Merge branch '1065' into v0.6
2018-01-25 13:16:55 +01:00
61ddc1208e
No more shared.daemon variable
2018-01-25 12:58:29 +02:00
8709051005
Fix non-ascii logging
...
Tested with UTF-8, KOI8-R and ISO-8859-2 encodings.
2018-01-25 08:11:42 +01:00
66b3c6d881
Merge branch '1060' into v0.6
2018-01-25 03:09:47 +01:00
d6df4470e1
No connection CPU hog fix
...
- the previous fix was incomplete, it shouldn't consume excessive
resources now when there are no connections
2018-01-23 15:59:58 +01:00
01c8f3b66d
Fix asyncore CPU usage on no connection
...
- if there are no connections, asyncore would hog CPU
- thanks to an anonymous contributor
2018-01-22 22:37:29 +01:00
ba91d21261
CPU hogging fix
...
- handle _command functions that don't return anything
- fix udp command function
2018-01-22 22:18:01 +01:00
460107abaa
Handled AttributeError when tr imported from plugin
2018-01-17 13:58:37 +02:00
0c4d4de82f
Changed the daemon check approach in other places, where it makes sense
2018-01-17 13:58:37 +02:00
1b921a718c
Check daemon status in singleinstance instead of config
2018-01-17 13:58:37 +02:00
c9851b9f41
Connection lookups invalid data handling
...
- shouldn't throw an exception if argument is a string rather than Peer
2018-01-02 22:23:03 +01:00
f74f82e54f
Start downloading earlier
2018-01-02 22:20:33 +01:00
4086253730
Bandwidth limit optimisation
...
- should be slightly more accurate and use slightly fewer resources
2018-01-02 15:24:47 +01:00
8788f2d349
Server full and duplicate handling
...
- will try to report "Server full" over protocol for 10 extra
connections over limit, instead of simply dropping them
- if connected to the same host inbound and outbound, handle as server
full (prevents duplicate connections)
2018-01-02 14:29:21 +01:00
9b58f35b80
App name in version
2018-01-02 13:56:03 +01:00
6b54a4ab0e
Daemonize fix
...
- forgot to revert a line in previous commit
2018-01-01 13:10:19 +01:00
d9a4263083
Daemonising fixes
...
- change forking exit order as systemd expects (wait until child is
ready, then exit parent, then grandparent)
- fix signal handler if prctl not installed
- revert recent PID file changes
2018-01-01 13:08:12 +01:00
baba0ae206
Remove obsolete code
2018-01-01 13:04:58 +01:00
36cc5b9cf5
Download optimisations
...
- don't make empty download requests
- use smaller chunks when they can be spread across multiple
connections
2018-01-01 12:51:35 +01:00
1864762a0a
Apply bandwidth limits without restart
...
- also minor style fixes
2018-01-01 12:49:08 +01:00
bcc5a210a4
Fix PID file if not daemonized
2017-12-29 09:13:41 +01:00
e9b1aa48a9
Protocol error handler fixes
...
- was broken if there was no error message in "raise"
- added default texts for network exceptions
2017-12-29 08:49:08 +01:00
02490e3286
Don't break if over 50k messages
...
- typo if there were over 50k messages in inventory caused PyBM to stall
2017-12-29 08:41:15 +01:00
sigoa
394d564bdc
minor mod of ver.
...
not a biggie
2017-12-26 15:01:12 +01:00
sigoa
a0e5ee4cce
utf chan name support, various fixes
...
no unused variables etc. any longer
2017-12-26 14:17:37 +01:00
3cb9547389
Only write PID after last fork
...
- should fix systemd integration
2017-12-21 14:26:51 +01:00
5605672f75
Fix tag search when inventory contains blobs
...
- recent changes caused the "tag" (and "payload") columns in the
inventory table in messages.dat to be stored as blobs. Searches by tag
(e.g. pubkey lookups) stopped working. This fixes it.
2017-12-02 02:48:10 +01:00
a3398d6a17
Don't crash download thread if no connections
2017-12-02 00:50:58 +01:00
41ead2bfb5
Distribute downloads more evenly
...
- also increases expireation of missing objects from 10 minutes to an
hour
2017-12-02 00:48:08 +01:00
3b86dfc639
Log missing indicator plugin
2017-12-02 00:45:01 +01:00
4ee9d05446
Randomise key order during decryption
...
- may help against timing/radio attacks
2017-11-30 20:08:14 +01:00
6c224447a6
Minor fixes that came over BM
...
- typo in quit confirmation dialog
- nicer traceback in unhandled exceptions
2017-11-30 19:44:03 +01:00
48c0a2ae2e
Arithmetic fix for preceding commit
2017-11-30 19:42:49 +01:00
6ce3ce6b22
Chunking helper for sql statements with too many variables
...
- preparation for #1081
2017-11-30 19:39:31 +01:00
PyBitmessage Translations
52162046bd
Auto-updated language ru from transifex
2017-11-29 10:38:58 +01:00
44dd08a228
Remove obsolete code in cleaner thread
2017-11-22 21:13:35 +01:00
6ca3460090
Put garbage collection into the cleaner thread
...
- this maybe addresses #1079
2017-11-22 14:49:18 +01:00
e558b1fb72
Error handling
...
- proxy connections didn't init fullyEstablished
2017-11-19 13:48:43 +01:00
fdfbb77ed2
Close filehandles on connection reaping
...
- I thought this is done automatically through garbage collection, but I
think as the channel is still assigned in the asyncore map, it needs
to be done manually. Basically filehandle limit exceeded and it
crashed
2017-11-19 00:05:55 +01:00
5e042b76e7
Typo
...
- missing brackets
2017-11-18 10:05:41 +01:00
3aa6f386db
Dandelion fixes
...
- dandelion would always think there is a cycle and trigger fluff
- cycle fluff trigger didn't correctly re-download and re-announce the
object. Now it remembers between (d)inv and object commands that it's
in a fluff trigger phase.
2017-11-18 09:47:17 +01:00
4690dd6f00
Copy object contents from buffers on instantiation
...
- this may fix some memory issues
2017-11-17 23:53:46 +01:00
3c3d69e5de
Reap closed connection fix
2017-11-17 19:50:39 +01:00
1e02d2b48a
Download optimisation
...
- pending download tracking now per-connection instead of globally
2017-11-17 19:49:51 +01:00
5a787f41d2
Socket closing changes
...
- explicit close only through asyncore error handler
- implicit close through garbage collector
- avoid duplicate closing
2017-11-17 13:37:51 +01:00
2da1115d17
Typo
...
Typo in 89567cecfa
2017-11-14 23:46:07 +01:00
1792289e00
close handling fix
...
- don't close a connection twice
2017-11-14 23:43:05 +01:00
d2f79d3172
sqlite storage fix
...
- typo on cleaning
2017-11-14 23:20:15 +01:00
89567cecfa
Notifier plugin fix
...
- NotifyOSD doesn't like too many notification objects in a queue, so
just create one on init and update its contents if there is a new
notification
2017-11-14 23:19:16 +01:00
PyBitmessage Translations
d6e94cf77f
Auto-updated language zh_cn from transifex
2017-11-02 12:42:50 +01:00
PyBitmessage Translations
8b7b91b23d
Auto-updated language de from transifex
2017-10-31 09:40:18 +01:00
e17d33cd75
Respect user selected sort order on "Network Status" tab
2017-10-24 14:02:15 +03:00
4b40d4bce1
Download thread error handling
2017-10-22 15:28:30 +02:00
75a6f605c1
Download optimisation
...
- more accurate tracking
- randomise download order
- longer cycle
2017-10-22 11:32:37 +02:00
b025624f2a
missingObjects fix
...
- didn't notice valid objects arriving (only invalid)
2017-10-20 23:21:25 +02:00
6655e99aa3
Pending download stats optimisations
...
- tracks separately a global list for a faster sum. Needs slightly
more memory
2017-10-20 23:11:33 +02:00
a746ba9da7
Stop downloading objects with insufficient PoW
...
- object with insufficient PoW weren't correctly detected and it
tried to download them over and over again
2017-10-20 13:21:39 +02:00
2d34e73648
Dandelion updates
...
- fixes and feedback from @gfanti and @amiller
- addresses #1049
- minor refactoring
- two global child stems with fixed mapping between parent and
child stem
- allow child stems which don't support dandelion
- only allow outbound connections to be stems
- adjust stems if opening/closing outbound connections (should
allow partial dandelion functionality when not enough outbound
connections are available instead of breaking)
2017-10-20 01:21:49 +02:00
15857e6551
Asyncore updates
...
- reduce buffer size to 128kB (was 2MB)
- IP address handling use str instead of buffer (the latter, even
though it should be faster, breaks the code on Windows)
- read up to full buffer after fully established (otherwise
downloads become too slow due to the loop time). This reverts
a change made in d28a7bfb86
2017-10-20 01:07:30 +02:00
8fcdf51e57
One more unicode related exception - when editing a contact label
2017-10-19 18:43:41 +03:00
9be36f2d78
Use unicode instead of str for MessagingMenu
2017-10-19 18:29:42 +03:00
PyBitmessage Translations
364642404a
Auto-updated language ja from transifex
2017-10-19 12:26:51 +02:00
ab458531e8
Changes in SOCKS and onion handling in connectionchooser
...
- onion addresses have a priority of 1 when SOCKS is on
- don't connect to private/loopback addresses when SOCKS is on
2017-10-19 09:16:29 +02:00
7b470d4b66
handle shutdown in receivequeuethread
...
- sometimes during shutdown, the receivequeuethread would get
stuck
2017-10-19 09:11:34 +02:00
391d40d78b
Socket closing changes
...
- closing reason moved to a variable
- actual closing now done in asyncore thread instead of
receivedata thread
2017-10-19 09:08:05 +02:00
01d46c30e4
Remove obsolete imports
2017-10-19 09:03:36 +02:00
d28a7bfb86
Asyncore performance optimisation
...
- don't transfer unnecessary amount of bytes from network buffers
- slice buffer more efficiently if it results in an empty buffer
2017-10-19 09:02:33 +02:00
7ec3fc7a5a
Prevent negative DownloadChunk in asyncore
2017-10-19 09:00:54 +02:00
f785558ca5
Don't close UDP socket on bad packet magic
2017-10-19 09:00:02 +02:00
a090eea9b0
Minor multiqueue updates
...
- add task_done to addrthread and invthread
- implement totalSize for multiqueue
- order in invThread changed
2017-10-19 08:56:48 +02:00
d44c6c6464
Forget known nodes with bad rating
2017-10-19 08:52:44 +02:00
453bcdbb1d
Typo in newchandialog
2017-10-19 08:39:30 +02:00
a013814c6b
Network tab updates
...
- handle add/remove entry instead of recreating the whole connection
list
- update processed object counts after each object
2017-10-19 08:39:09 +02:00
1ba1f02686
Remove superfluous validator signal connect in newchandialog
...
- apparently it connects automatically and just creates an error message
2017-10-19 08:31:05 +02:00
7e0932815d
UDP socket closing fix
...
- invalid data or an incomplete read on UDP socket caused
it to close
2017-10-19 01:46:32 +02:00
9cffd50de8
Fixed statusbar message on error in namecoin name search
2017-10-17 11:37:50 +03:00
59d1309a9e
Fixed typo when closing tempfile in bitmessageqt.__init__
2017-10-17 11:25:33 +03:00
8e76169388
Check IP before adding to knownnodes in helper_bootstrap
2017-10-17 01:33:30 +03:00
9dae77dd2b
Quiet Mode (i.e. turn off notification) in tray menu
2017-10-16 19:30:12 +03:00
4c9006a632
Asyncore performance optimisation
...
- use bytearray instead of strings for buffers
2017-10-16 08:07:32 +02:00
PyBitmessage Translations
1eb0dd6f01
Auto-updated language fr from transifex
2017-10-15 13:45:31 +02:00
a49b3b5f84
Asyncore UDP fix
...
- when there was an error writing to a udp socket, it wasn't
handled correctly
2017-10-06 18:26:06 +02:00
333170b172
Dandelion fixes
...
- more exception handling
- only use outbound connections for stems
(thanks to @amillter for info)
- don't create stems if config disabled
- addresses #1049
2017-10-06 16:33:44 +02:00
1abdc14807
Fix statusbar chan creation message:
...
non-ASCII characters displayed incorrectly
2017-10-03 18:01:54 +03:00
6548999a49
Dandelion fix
...
- thanks to g1itch for reporting
- addresses #1049
2017-10-02 08:02:29 +02:00
b1442ecb0a
Dandelion fixes and updates
...
- also, randomise the item order in an inv/dinv command
2017-09-30 13:42:04 +02:00
f97ada87
be0e724b23
implement stealth ack objects
2017-09-30 19:45:40 +10:00
f97ada87
08748fa9ae
move config read inside main function
2017-09-27 00:36:43 +10:00
f97ada87
dbd12ab8b4
fix truncation of received ackdata in objectProcessor
2017-09-25 20:14:03 +10:00
PyBitmessage Translations
1798c90622
Auto-updated language ja from transifex
2017-09-25 11:10:16 +02:00
9923d288e0
Dandelion fixes
...
- in route selector, some connections may not have the services
attribute (yet)
- Addresses #1049
2017-09-25 09:17:15 +02:00
d574b167d8
Dandelion updates & fixes
...
- Addresses #1049
- Add dandelion routes for locally generated objects
- Minor bugfixes
- Send dinv commands on stem objects (instead of always sending inv
command)
2017-09-25 08:49:21 +02:00
6ce86b1d0a
Dandelion++ implementation
...
- untested, some functionality may be missing, don't turn on
- also, it randomises upload of requested objects
- affects #1049
2017-09-25 01:17:04 +02:00
PyBitmessage Translations
8495836428
Auto-updated language ru from transifex
2017-09-24 11:49:32 +02:00
f97ada87
c89d86a779
use getopt parser for command-line arguments
2017-09-24 07:42:37 +10:00
aaa5e9d309
Windows daemon mode workaround
2017-09-23 18:25:41 +02:00
f97ada87
cfa84cf81a
change default log output from stdout to stderr
2017-09-24 01:50:49 +10:00
PyBitmessage Translations
a8ab574c3e
Auto-updated language pl from transifex
2017-09-21 21:06:53 +02:00
PyBitmessage Translations
680cc2cafc
Auto-updated language de from transifex
2017-09-21 19:16:40 +02:00
PyBitmessage Translations
df21f53271
Auto-updated language eo from transifex
2017-09-21 19:08:10 +02:00
1881bcea68
Don't connect on first start until approved
2017-09-21 18:18:42 +02:00
0150a35dd4
Change main thread name to PyBitmessage
2017-09-21 17:51:34 +02:00
4f75dcb9be
Merge pull request '1047' into v0.6
...
- notifications moved into plugins
- improvements in setup.py
- remove obsolete imports
2017-09-21 13:30:53 +02:00
2504bc6670
Fixed fetch of connected hosts number in bitmessageqt.support
2017-09-21 13:59:43 +03:00
53c3eeb8f7
Sound plugins using pycanberra and gst-python
2017-09-20 10:21:27 +03:00
1f47a4060e
Added "Set notification sound..." context menu on addressbook entry.
2017-09-20 10:21:27 +03:00
b77eb0c7e5
Namespace 'bitmessage' for plugins entry points
2017-09-20 10:21:27 +03:00
c8a47b988f
Moved "Ubuntu" MessagingMenu code into indicator_libmessaging plugin
2017-09-20 10:21:27 +03:00
cd81718871
Moved sound category constants to the separate module sound
...
for importing from the sound theme plugins.
2017-09-20 10:21:27 +03:00
289a6c5bfa
Added support for sound notification plugins which use
...
the desktop sound theme, with pycanberra for example. Plugin name should
start with 'theme' in that case, whereas the name of plugins playing the
sound file starts with 'file'.
2017-09-20 10:21:27 +03:00
84a903f116
Redirected output of the player programs to /dev/null
2017-09-20 10:21:27 +03:00
91eb75b140
gst-play-1.0 is another player program which bundled with gstreamer 1.0
2017-09-20 10:21:27 +03:00
be716bf228
Improved and documented plugin module
2017-09-20 10:21:27 +03:00
ef8f40ccc4
Moved notifications to plugins (including sound)
2017-09-20 10:21:27 +03:00
PyBitmessage Translations
022e0ce593
Auto-updated language ja from transifex
2017-08-26 04:35:44 +02:00
PyBitmessage Translations
a8e5ea18a6
Auto-updated language eo from transifex
2017-08-24 21:30:54 +02:00
7e35ea6bdf
Email gateway autoregistration fixes
...
- don't treat "@" in label as an email address
- ask for confirmation before autoregistering. It confused some
newbies into thinking that bitmessage requires payment
2017-08-24 14:16:37 +02:00
660997b8f4
Code Quality
2017-08-22 13:49:27 +02:00
18119339f8
Add shutdown to CLI
2017-08-22 13:23:03 +02:00
b7f808cde1
Add shutdown command to API
...
- calling "shutdown" now cleanly shuts down PyBitmessage, however the
call may not return so you need to add an error handler to the call.
With python for example, wrap the "shutdown()" in
"try:/except socket.error"
2017-08-21 10:39:03 +02:00
b886f935d4
Daemon Windows fix
...
- closing the filehandle isn't the correct approach, it causes more
bugs. Use os.devnull instead
2017-08-20 12:05:53 +02:00
314af0925f
Daemonize fix for Windows
...
- /dev/null isn't available on Windows so just close the console
sockets directly
2017-08-20 11:55:54 +02:00
2da4d00730
Support message C PoW fix
2017-08-15 18:14:36 +02:00
8b3d7ea278
C PoW init fix
2017-08-15 14:09:19 +02:00
623553393b
PID file truncate fix
...
- on unix it truncated the file if a second instance was being
launched
2017-08-15 12:25:38 +02:00
a48dff3bee
PoW init reordering
...
- inited by the worker thread on its own init, instead of when the
imports are being evaluated
- also got rid of windows-style newlines in OpenCL PoW
2017-08-15 12:24:43 +02:00
58b47bc6de
Forking fixes
2017-08-15 12:22:24 +02:00
PyBitmessage Translations
3c50615998
Auto-updated language zh_cn from transifex
2017-08-13 16:54:52 +02:00
PyBitmessage Translations
4d0a40fd2a
Auto-updated language sk from transifex
2017-08-11 09:46:06 +02:00
PyBitmessage Translations
85e4e5438c
Auto-updated language de from transifex
2017-08-11 09:38:00 +02:00
e7231f3aea
Fix multiple TCP bind address handling
2017-08-09 23:30:22 +02:00
6c695c8ac7
Remove non-asyncore network code (partial)
2017-08-09 17:36:52 +02:00
0b07b1c89a
Peer discovery updates
...
- allow loopback addresses, now you can bind different loopback IP
addresses on a single system and they will auto-cross-connect
- always listen for discovery on 0.0.0.0
- [network] - bind now also applies for the TCP socket as well as UDP
socket
- closing socket iterator fix
2017-08-09 17:34:47 +02:00
e071efac1a
Typo
2017-08-09 17:29:48 +02:00
cc955cd69d
Try new ports of binding fails
...
- API and BM protocol will try random ports for binding if those
configured are occupied
2017-08-09 17:29:23 +02:00
0324958e92
Peer discovery fixes
...
- incoming packets weren't correctly processed
2017-08-06 23:05:54 +02:00
d9e4f2ceb8
Typo in previous commit
2017-08-06 21:38:23 +02:00
f338c00f8e
Change peer discovery tracking from queue to a dict
...
- with a queue, a situation could occur when new entries are appended
but nothing is polling the queue
2017-08-06 21:29:54 +02:00
4564d37f5b
Typo in previous commits
2017-08-06 21:26:25 +02:00
38872159fb
Typo in previous commit
2017-08-06 20:40:35 +02:00
5895dc2f1f
Asyncore Windows error handling
...
- windows behaves somewhat differently when using select
2017-08-06 20:39:14 +02:00
578c5dd495
Fix windows PID file
2017-08-06 18:29:08 +02:00
5108d08ac9
Windows asyncore error handler fix
...
- WSAEWOULDBLOCK is now checked on connect and accept
2017-08-06 18:18:21 +02:00
8f14fb05a1
UDP socket setsockopt fix
2017-08-05 10:14:15 +02:00
7a4551e1e7
Fix signal handler in daemon mode
...
- signal handler requires the main thread to run
2017-07-30 09:36:20 +02:00
3e6de7a9ad
Flush PID file on unix as well
2017-07-28 19:21:56 +02:00
e7382b7714
Write PID into the lock file
2017-07-28 09:39:49 +02:00
501f07dd34
Setsid is not available on Windows
...
- wrap an error handler around it
2017-07-28 09:19:53 +02:00
20cbac9752
Fix daemonize for Windows
...
Fixes #1034
2017-07-28 08:54:34 +02:00
a29f7534ee
Add EINTR handler for select and poll pollers
2017-07-21 09:06:02 +02:00
2530c62050
epoll throws IOError rather than select.error
2017-07-21 07:49:34 +02:00
aa059d6f2f
Handle TLS errors in receivequeuethread
...
- well at least EBADF, it seems to happen sometimes
2017-07-21 07:47:18 +02:00
4f19c37fdc
Parser fix for multi-level arrays
2017-07-11 10:29:29 +02:00
dcc181bf75
Asyncore processing thread synchronisation
...
- threre was a synchronisation problem where one thread could process
more data than another thread was expecting, leading to the thread
crashing
2017-07-10 23:18:58 +02:00
f6d5d93bf2
Multiple receive queues fix
...
- forgot to commit busy handler
2017-07-10 20:52:11 +02:00
db2d78c9b6
Make protocol decoder less recursive
...
- apparently, recursion has bad performance in Python, so the decoder is
now flat, except when parsing "version" command
2017-07-10 07:15:27 +02:00
853c8561ec
Per connection node id part 2
...
- forgot to include this in the previous commit
2017-07-10 07:12:52 +02:00
3941b39136
Randomise node id
...
- in order to detect if it's connected to to itself, PyBitmessage now
uses a per-connection id rather than a global one
2017-07-10 07:10:05 +02:00
bdf61489ae
Allow multiple ReceiveQueue threads
...
- defaults to 3
2017-07-10 07:08:10 +02:00
f088e0ae21
Change thread names
...
- not needed to have "Thread" in the name of a thread
2017-07-10 07:05:50 +02:00
4fce01e34a
Less data transferred in invThread and addrThread
2017-07-08 18:02:47 +02:00
2df9598774
Asyncore update: Fix incoming connections
...
- dereferencing wasn't done correctly for incoming connections
2017-07-08 07:33:29 +02:00
2d7d9c2f92
Asyncore update
...
- request downloads in bigger chunks
- don't put whole objects into the receiveDataQueue
2017-07-08 06:54:25 +02:00
0f3a69adf4
Asyncore update: remove references to deleted files
2017-07-08 06:53:20 +02:00
5ae1b6d865
Asyncore update: remove obsolete files
2017-07-08 06:52:17 +02:00
PyBitmessage Translations
1aa45d6eac
Auto-updated language eo from transifex
2017-07-07 16:32:25 +02:00
PyBitmessage Translations
6eb9e93575
Auto-updated language ja from transifex
2017-07-07 16:31:14 +02:00
PyBitmessage Translations
4f969088cf
Auto-updated language pl from transifex
2017-07-07 07:56:19 +02:00
a98b8690d3
Asyncore fixes
...
- fix broken loops
- optimise I/O tests
2017-07-07 07:55:29 +02:00
de22e547c5
Remove buggy log message if prctl is missing
...
- it's not that important that you need to be informed of it, and
importing logging may cause cyclic dependencies/other problems
2017-07-06 20:06:43 +02:00
ba4162d7fe
Asyncore update
...
- get rid of per-connection writeQueue/receiveQueue, and instead use
strings and locking
- minor code cleanup
- all state handlers now should set expectBytes
- almost all data processing happens in ReceiveDataThread, and
AsyncoreThread is almost only I/O (plus TLS). AsyncoreThread simply
puts the connection object into the queue when it has some data for
processing
- allow poll, epoll and kqueue handlers. kqueue is untested and
unoptimised, poll and epoll seem to work ok (linux)
- stack depth threshold handler in decode_payload_content, this is
recursive and I think was causing occasional RuntimeErrors. Fixes #964
- longer asyncore loops, as now data is handled in ReceiveDataThread
- randomise node order when deciding what to download. Should prevent
retries being stuck to the same node
- socks cleanup (socks5 works ok, socks4a untested but should work too)
2017-07-06 19:45:36 +02:00
a2b8867c1a
Tooltips for network status columns
2017-07-06 19:36:04 +02:00
4536e44b8c
Thread names propagate to system
...
- the thread names should now show up in the monitoring tools of
operating systems (tested on linux)
2017-07-06 19:35:40 +02:00
PyBitmessage Translations
00a4558971
Auto-updated language eo from transifex
2017-07-06 04:53:29 +02:00
PyBitmessage Translations
83e60d231a
Auto-updated language pl from transifex
2017-07-06 04:52:26 +02:00
PyBitmessage Translations
1dbf98d7f7
Auto-updated language ja from transifex
2017-07-06 00:06:05 +02:00
PyBitmessage Translations
27f9fb0237
Auto-updated language ru from transifex
2017-07-05 17:09:30 +02:00
fe0664640e
Migrate antiIntersectionDelay to asyncore
...
- implemented by ignoring getdata during the delay rather than sleeping
as it was in the threaded model
- it can happen that a valid getdata request is received during the
delay. A node should be implemented in a way that retries to download,
that may not be the case with older PyBitmessage versions or other
implementations
2017-07-05 09:27:52 +02:00
fc19e4119a
Download thread updates
...
- now tracks downloads globally too, so it doesn't request the same
object from multiple peers at the same time
- retries at the earliest every minute
- stops trying to download an object after an hour
- minor fixes in retrying downloading invalid objects
2017-07-05 09:25:49 +02:00
846fced0a2
Remove obsolete inactive code
2017-07-05 09:19:56 +02:00
d086781ce8
AddrQueue fix
...
- forgot to commit import
2017-07-05 09:19:18 +02:00
a0bbd21efc
Add ratings to peers
...
- outbound peers now have a rating
- it's also shown in the network status tab
- currently it's between -1 to +1, changes by 0.1 steps and uses a
hyperbolic function 0.05/(1.0 - rating) to convert rating to
probability with which we should connect to that node when randomly
chosen
- it increases when we successfully establish a full outbound connection
to a node, and decreases when we fail to do that
- onion nodes have priority when using SOCKS
2017-07-05 09:17:01 +02:00
9d09f9f3ce
Reduce severity of socks connectivity errors
...
- Fixes #1024
- Fixes #1019
2017-07-05 09:07:00 +02:00
773d91bbe2
Unknown object log entry less severe
...
- unnecessarily classified as critical
- fixes #1023
2017-07-05 09:01:40 +02:00
e00a02206b
AddrThread
...
- this thread is for spreading new/updated addresses in active
connections, analogous to the InvThread
- it doesn't do anything yet, this is just a dummy queue at the moment
2017-07-05 08:57:44 +02:00
27f5de0f9c
Unified random number provider
...
- not used yet, just an inactive helper function
- I received feedback that OpenSSL.rand isn't more secure than
os.urandom. I read several debates/analyses about it and concur
2017-07-05 08:52:16 +02:00
PyBitmessage Translations
70c5929e92
Auto-updated language ru from transifex
2017-07-04 17:51:58 +02:00
cc3cf77759
New class multiqueue
...
- to be used for invthread and addthread
- updated invthread for multiqueue
2017-06-27 13:25:12 +02:00
f5a143d0b8
Config validator
...
- config options can have validators
- limit maxoutboundconnections to max 8
2017-06-27 13:19:12 +02:00
20e01860cf
Network status peer list shouldn't be editable
2017-06-27 13:16:41 +02:00
PyBitmessage Translations
8a3577aed7
Auto-updated language eo from transifex
2017-06-25 19:26:14 +02:00
PyBitmessage Translations
30b65aaefc
Auto-updated language pl from transifex
2017-06-25 19:25:47 +02:00
PyBitmessage Translations
ccfe58c2c0
Auto-updated language ja from transifex
2017-06-25 16:49:31 +02:00
aa203b23ee
Fix typo introduced by code quality patch
2017-06-24 23:09:08 +02:00
189578cba3
Asyncore proxy fixes
...
- SOCKS5 now seems to work, SOCKS4a untested
2017-06-24 12:23:56 +02:00
916b85c862
Connection pool cleanup
...
- minor code quality improvement
2017-06-24 12:23:16 +02:00
0dc0b22974
Expired / Stream mismatch / duplicate object error handling
...
- cleanup of the code
2017-06-24 12:22:41 +02:00
0a79490e2c
Known nodes maximum configurable part 2
2017-06-24 12:21:42 +02:00
d57b0c55ee
Object validator trigger moved
...
- from bmproto to bmobject
2017-06-24 12:21:06 +02:00
dc5a91f326
Remove stack depth warnings
...
- I was never able to trigger them
2017-06-24 12:19:19 +02:00
e9edf70d3a
TLS updates
...
- save TLS version
- minor TLS error handling updates
2017-06-24 12:18:15 +02:00
b9d60f8b41
Max known nodes configurable
2017-06-24 12:17:01 +02:00
26eb54a82e
Network status updates
...
- now lists each node with its info instead of a per-stream summary
2017-06-24 12:16:12 +02:00
bfbdd7e140
Chan address validator button feedback
...
- During validation, the button not only turns gray but also changes
label
2017-06-24 12:14:23 +02:00
2685fe29b1
Code quality improvements
2017-06-24 12:13:35 +02:00
243025a1aa
Leave __delitem__ unimplemented in filesystem storage
...
- rename the cleaning method
2017-06-21 12:17:40 +02:00
618f3865c1
Main thread end
...
- instead of sleeping, it just ends
2017-06-21 12:16:56 +02:00
0cc8589b27
Asyncore updates
...
- should prevent the same object being re-requested indefinitely
- locking for object tracking
- move SSL-specific error handling to TLSDispatcher
- observe maximum connection limit when accepting a new connection
- stack depth test (for debugging purposes)
- separate download thread
- connection pool init moved to main thread
2017-06-21 12:16:33 +02:00
76fed78211
Made it possible to use installed umsgpack
2017-06-12 13:54:44 +03:00
a3a55e53c4
UDP Socket dict address fix
...
- fixes #1008
2017-06-11 14:11:39 +02:00
cba749088a
Asyncore updates
...
- mainly work on proxy support, but it's still not fully working
- minor bugfixes
2017-06-10 10:13:49 +02:00
7deb7c3d4f
Typo
2017-06-10 10:11:50 +02:00
8d41d5fcf6
default known nodes update
2017-06-10 10:11:21 +02:00
7f06cb7c27
Inventory flush fix in GUI
...
- Fixes #1011
2017-06-10 10:10:59 +02:00
7e8ee51322
Fallback umsgpack import fix
2017-06-10 10:09:44 +02:00
f366447e94
Fix identicon imports
2017-06-10 10:09:14 +02:00
d34fdbb3f4
Fix network status in api
2017-06-10 10:08:40 +02:00
ae97f7abd8
Typo
2017-06-10 10:07:47 +02:00
009a215224
Fix api connected hosts lists
2017-06-09 10:07:51 +02:00
7bde4e9445
Missing module name in bmproto
2017-06-04 10:25:16 +02:00
e8d9a7f183
Asyncore connect handling
...
- minor improvements in handling of connect events so that it's not
processed twice
2017-06-03 16:30:05 +02:00
a9c0000c17
Treat some invalid objects as received
...
- update to 6044df5adf
- objects that are expired or in wrong stream are not re-requested
anymore, even if they aren't stored in the inventory
- the previous option "acceptmismatch" now only affects whether such
objects are stored in the inventory
2017-06-03 16:29:21 +02:00
Scott
f78f1a718b
Change api.py
2017-06-02 18:53:13 -06:00
6044df5adf
Optional storing of expired and off-stream objects
...
- a new config file option, network/acceptmismatch, allows the inventory
to store objects that expired or are from a stream we're not
interested in. Having this on will prevent re-requesting objects that
other nodes incorrectly advertise. It defaults to false
2017-06-02 15:43:35 +02:00
d75d920a68
Asyncore updates
...
- clean object tracking dictionaries in the cleaner thread
- clean up close / handle_close
- add locking to tracking dictionaries
2017-06-02 07:09:35 +02:00
4c17a18006
Don't send invs to unestablished connections
2017-05-31 23:34:06 +02:00
18988ae2e6
Asyncore updates
...
- performance optimisation, reduce number of loops when waiting
for protocol headers / commands
2017-05-31 10:17:36 +02:00
2555f692eb
Network status update part 2
...
- only update processed items every 2 seconds
2017-05-31 10:16:30 +02:00
e522f015a8
Network status updates
...
- only update processed numbers once every 2 seconds
- moved inventory lookups to the main inventory so now all
storage modules work with it
2017-05-31 10:15:47 +02:00
d9e3349eeb
Fix own IP detection
...
- minor bug in the previous commit
2017-05-31 00:22:07 +02:00
f23c169eec
Don't connect to myself
...
- track local IP+port of incoming connections and don't connect
to them in the future
2017-05-31 00:04:21 +02:00
fa9811f426
Asyncore update
...
- duplicate checking implemented
- connection pool vs. socket closing cleanup
2017-05-30 23:53:43 +02:00
abaa2c72e5
typo
2017-05-29 15:04:22 +02:00
11d02b1e41
typo
2017-05-29 14:59:42 +02:00
3a543efd83
Typo
2017-05-29 14:54:13 +02:00
7f381c0c25
Asyncore update
...
- incoming object handling fix
2017-05-29 14:52:31 +02:00
1ccfd41c3f
Asyncore updates
...
- fix connected to myself check
2017-05-29 14:41:02 +02:00
0aa5dbd958
Asyncore update
...
- shutdown fix
2017-05-29 14:35:08 +02:00
bdaa939e2c
ENOTSOCK fix
2017-05-29 13:39:26 +02:00
97c44b97f4
Asyncore update
...
- handle WSAENOTSOCK
2017-05-29 13:14:25 +02:00
a5c1b0c529
Asyncore fixes
...
- better handling of WSA* checks on non-windows systems
- handle EBADF on Windows/select
- better timeouts / loop lengths in main asyncore loop and
spawning new connections
- remove InvThread prints
2017-05-29 12:56:59 +02:00
74f1a74a8c
Make SO_REUSEPORT optional
...
- apparently not available on Windows
2017-05-29 11:30:56 +02:00
e7525d47be
Disable memory usage logging
...
- it looks like it's Unix specific and doesn't work on windows
2017-05-29 11:26:56 +02:00
02a07e5119
Asyncore update
...
- default to true (original attempt didn't work correctly)
2017-05-29 03:16:14 +02:00
73c41bff9d
typo
...
-BMConfigParser. instead of BMConfigParser().
2017-05-29 02:30:18 +02:00
65bb6648e7
Asyncore updates
...
- fix crash in inv thread
- more prints changed into logger
- minor fixes
2017-05-29 00:47:41 +02:00
c85d52b8e8
Asyncore updates
...
- asyncore is now on by default
- inv announcements implemented
- bandwidth limit implemented / fixed
- stats on download / upload speed now work
- make prints into logger
- limit knownNodes to 20k as it was before
- green light fixed
- other minor fixes
2017-05-29 00:24:07 +02:00
5d4e1e2007
asyncore fixes
...
- bm headers and commands are only read up to expected length.
On a very fast connection (e.g. local VM), reading verack
also read a part of the TLS handshake
- some debugging info moved from print to logger.debug
- tls handshake cleanup
2017-05-27 22:30:30 +02:00
21f6d38ec2
Asyncore fixes
...
- TCP fixes
2017-05-27 21:52:56 +02:00
99e714c432
UDP socket bugfixes
2017-05-27 20:43:27 +02:00
fa9ad537a5
Add task_done to asyncore-related queues
2017-05-27 19:39:19 +02:00
f8b4b427fc
Asyncore update
...
- bugfixes
- UDP socket for local peer discovery
- new function assembleAddr to unify creating address command
- open port checker functionality (inactive)
- sendBigInv is done in a thread separate from the network IO
thread
2017-05-27 19:09:21 +02:00
36b5e2c04f
Inventory storage abstraction
...
- can have multiple storage types for inventory
- sqlite is the old one, filesystem is a new available
2017-05-27 19:03:27 +02:00
1d87c63504
Traceback on Ctrl-C
...
- Ctrl-C will print a traceback of all threads instead of
complaining
2017-05-27 19:02:05 +02:00
7b9b7504ad
Don't clean right on startup
2017-05-27 19:01:14 +02:00
d699a28e49
Add variables to errno and socket
...
- to make sure they work cross platform without having to do
complicated tests
2017-05-27 19:00:19 +02:00
b37a05fd0a
Allow encoding 3 in broadcast API
2017-05-27 07:48:29 +02:00
e309a1edb3
Asyncore update
...
- separate queue for processing blocking stuff on reception
- rewrote write buffer as a queue
- some addr handling
- number of half open connections correct
2017-05-25 23:04:33 +02:00
51e52401fe
Windows plaform check pythonic
...
- moved to .startswith instead of 'in'
- thanks @Lvl4sword
2017-05-25 15:00:10 +02:00
9683c879bc
Asyncore update
...
- Network status UI works but current speed isn't implemented yet
- Track per connection and global transferred bytes
- Add locking to write queue so that other threads can put stuff
there
- send ping on timeout (instead of closing the connection)
- implement open port checker (untested, never triggered yet)
- error handling on IO
2017-05-25 14:59:18 +02:00
edcba9982b
Asyncore getdata processing performance improvement
...
- no need to query DB for existence of each entry
2017-05-24 21:35:50 +02:00
fa56ab3e6f
Asyncore update
...
- better error handling
- bug fixes
- remove some debug output
2017-05-24 21:15:36 +02:00
bafdd6a93a
Allow making outbound connections in asyncore
2017-05-24 16:54:33 +02:00
d635e515b9
Big Asyncore update
...
- most of the stuff is done so it partially works
- disabled pollers other than select (debugging necessary)
- can switch in the settings, section network, option asyncore (defaults
to False)
2017-05-24 16:51:49 +02:00
d498f1c0ae
Configparser update
...
- add default values for maxdownload/uploadrate, asyncore
- rework error handler slightly
2017-05-24 16:49:16 +02:00
198470f734
Revert parser/renderer max message size
...
- it's now dealt with during decoding
2017-05-15 12:25:30 +02:00
183f509f09
Decompression limit
...
- there is now a configurable decompression limit, default at
1MB. Oversize messages are trated as if they never arrived,
just a log entry
2017-05-15 12:23:16 +02:00
9f4a1fa0a4
Config file defaults and address unification
...
- bmconfigpaser.py now allows to put default values for a specific
option in the file
- addresses as sections are now detected by "BM-" rather than
just ignoring bitmessagesettings. There can now be other sections
with a cleaner config file
2017-05-15 12:18:07 +02:00
660997f8e7
Quick hack for excessively long messages
...
- only process the first MB of a message for GUI purposes
(parsing/rendering)
2017-05-14 15:40:35 +02:00
fd2603247d
Fix onionbindip for some systems with IPv6
...
- in some cases when IPv6 stack is available and onionbindip is an IPv4
address, socket.bind doesn't change the bound address, ending up
listening on everything
2017-05-10 20:01:23 +02:00
d9d3515905
Node class, WIP
...
- for new network subsystem
2017-05-07 20:16:49 +02:00
23b9555929
Add TLS version debug info
2017-05-07 20:15:57 +02:00
1c55bf7d4b
Add umsgpack as fallback
...
- if a "big" msgpack module isn't available, use bundled umsgpack
2017-05-07 20:15:16 +02:00
bf76c7f6ec
Allow extended encoding in API
2017-04-30 10:39:48 +02:00
96d58f3c11
Asyncore update (WIP)
2017-04-16 18:27:15 +02:00
e6f0b34f9b
Fixed some inconvenience on first run mainly in Ubuntu.
...
- immediately return from initCL() if numpy or pyopencl is unevailable
(no ImportError because of resetPoW() call)
- use glob to find C extension even if it named like
`bitmsghash.x86_64-linux-gnu.so`
If user chooses to show the Settings dialog:
- activate the "Network Settings" tab
- remove option 'dontconnect' if settings have been saved
2017-04-05 14:25:02 +03:00
51aeb284ca
Async network IO updates
...
- WIP
2017-04-04 10:46:01 +02:00
fe93473fc5
getpubkey length handling
...
- don't try to process getpubkey that is too long
2017-04-04 10:44:53 +02:00