Commit Graph

2425 Commits

Author SHA1 Message Date
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