Commit Graph

1512 Commits

Author SHA1 Message Date
Peter Šurda c3fef7bc4e
Syntax fix 2017-01-15 12:41:19 +01:00
Peter Šurda 9bf17b34d1
Remove obsolete imports and code
- landscape.io pointed out obsolete imports
- there is also an obsolete variable and lock in throttle.py
- add Exception type to BMConfigParser().save
2017-01-15 11:40:31 +01:00
Peter Šurda 8cb0953401
Moved writeKeysFile into configparser
- shared.writeKeysFile -> BMConfigParser().save
- makes it easier to get rid of circular imports
2017-01-15 10:50:02 +01:00
Peter Šurda 5ca8a52662
Typos, extra imports and similar
- pointed out by landscape.io
- also updated dev/ssltest.py to work the same way as the main program
2017-01-15 10:48:29 +01:00
Peter Šurda 689d697a40
Refactor bandwidth limit and speed calculator
- also fixes potential deadlocks
2017-01-14 23:21:00 +01:00
Peter Šurda ad75552b5c
Move shutdown from shared.py to state.py 2017-01-14 23:20:15 +01:00
Peter Šurda bcc7692e14
Add safeGetInt to BMConfigParser 2017-01-14 23:18:06 +01:00
Peter Šurda 02a7c59de8
OpenSSL 1.1.0 compatibility fixes
- part 2, continued from previous commit
2017-01-14 17:50:49 +01:00
Peter Šurda 59b5ac3a61
OpenSSL 1.1.0 compatibility fixes
- function check missed 1.1.0 release
- TLS didn't work with anonymous ciphers
2017-01-14 17:47:57 +01:00
Peter Šurda fa2f87743e
SSL handshake fix
- SSL handshake would often fail, because verack packet was being sent
  at the same time as the do_handshake was executed in a different
  thread. This makes it so that do_handshake waits until verack is done
  sending.
- also minor modifications in SSLContext initialisation
2017-01-14 13:22:46 +01:00
Peter Šurda cc4c07025b
Sending thread fix 2017-01-14 12:35:08 +01:00
Peter Šurda 8d278182a7
Indentation 2017-01-13 15:53:47 +01:00
Peter Šurda 93bdc3c800
Remove extra print 2017-01-13 12:32:26 +01:00
Peter Šurda d0b1cbfe1f
Add current git HEAD info to support request 2017-01-13 12:29:14 +01:00
Peter Šurda 5ae676f2ad
Minor support fix 2017-01-13 12:05:39 +01:00
Peter Šurda 6778d6046f
Add OpenSSL 1.1.0 compatibility
- thanks to Wolfgang Frisch <wfr@roembden.net>
2017-01-13 12:02:34 +01:00
Peter Šurda 59cf33c9a1
Remove obsolete import 2017-01-13 12:01:38 +01:00
Peter Šurda 65701e5997
neededPubkeys fix
- was still using shared.neededPubkeys
2017-01-13 09:30:23 +01:00
Peter Šurda ff8deebf60
Keep track of network protocol status 2017-01-12 19:18:56 +01:00
Peter Šurda 810e50a040
Fix minor issues
- landscape.io complained
- obsolete imports
- ciphers -> self.ciphers
2017-01-12 07:26:04 +01:00
Peter Šurda 2cf2188bc3
Object sending fix
- forgot to move broadcastToSendDataQueues in class_singleWorker.py
2017-01-12 07:22:34 +01:00
Peter Šurda bd520a340f
Trustedpeer fix and more refactoring
- fixed trustedPeer (thanks to anonymous bug reporter)
- moved trustedPeer and Peer into state.py
2017-01-12 06:58:35 +01:00
Peter Šurda e7470a4757
Remove leftover from debugging 2017-01-12 06:57:17 +01:00
Peter Šurda 5ceb920bd6
TLS tuning
- allow TLS > 1.0 with python >= 2.7.9
- tune ssl_context with python >= 2.7.9
2017-01-11 20:47:27 +01:00
Peter Šurda c738d93056
Assorted fixes
- landscape.io was complaining, this fixes most easily fixable errors
2017-01-11 18:13:00 +01:00
Peter Šurda cdcdf11d59
Missing import fix 2017-01-11 17:46:33 +01:00
Peter Šurda fa0a3135e7
Fixes pointed out by landscape.io
- missing/wrong/obsolete imports
- logger formatting
2017-01-11 17:26:25 +01:00
Peter Šurda ac348e4e6b
Fixes and refactoring
- fixes errors introduced in the earlier refactoring
- more variables moved to state.py
- path finding functions moved to paths.py
- remembers IPv6 network unreachable (in the future can be used to skip
  IPv6 for a while)
2017-01-11 17:00:00 +01:00
Peter Šurda 5d2bebae28
Add IPv4 multicast range to ignored addresses 2017-01-11 14:46:10 +01:00
Peter Šurda 8bcfe80ad0
Refactoring of config parser and shared.py
- got rid of shared config parser and made it into a singleton
- refactored safeConfigGetBoolean as a method of the config singleton
- refactored safeConfigGet as a method of the config singleton
- moved softwareVersion from shared.py into version.py
- moved some global variables from shared.py into state.py
- moved some protocol-specific functions from shared.py into protocol.py
2017-01-11 14:27:19 +01:00
Peter Šurda 085e335969
Proxy update (for the new network subsystem) 2017-01-10 21:22:22 +01:00
Peter Šurda 75090abaaf
Advanced dispatcher class
- generic class the new asyncore-based network subsystem that handles
  buffered data transfer
2017-01-10 21:20:49 +01:00
Peter Šurda b4703ec6ce
Make objectHashHolder into a list
- was a dict
2017-01-10 21:19:57 +01:00
Peter Šurda 9c214b4a24
Inventory refactoring #2
- forgot to add api.py
2017-01-10 21:17:25 +01:00
Peter Šurda e84b19613e
Inventory refactoring
- minor refactoring, made it into singleton instead of a shared global
  variable. This makes it a little bit cleaner and moves the class into
a separate file
- removed duplicate inventory locking
- renamed singleton.py to singleinstance.py (this is the code that
  ensures only one instance of PyBitmessage runs at the same time)
2017-01-10 21:15:35 +01:00
Peter Šurda 4f543e14c1
TLS handshake fix
- TLS handshake in python is apparently always asynchronous, so it needs
  proper handling of SSLWantReadError and SSLWantWriteError
- also adds a timeout and a proper shutdown if handshake fails
2017-01-07 23:42:07 +01:00
PyBitmessage Translations 541979a159
Auto-updated language fr from transifex 2017-01-05 19:24:45 +01:00
PyBitmessage Translations 9a26ce5be1
Auto-updated language ja from transifex 2016-12-16 10:18:29 +01:00
PyBitmessage Translations e92161650b
Auto-updated language pl from transifex 2016-12-15 19:57:09 +01:00
PyBitmessage Translations a87bfb8a82
Auto-updated language eo from transifex 2016-12-15 19:53:55 +01:00
PyBitmessage Translations 77d7dcbd2d
Auto-updated language sk from transifex 2016-12-15 16:33:21 +01:00
PyBitmessage Translations 3b896e69e7
Auto-updated language de from transifex 2016-12-15 16:26:50 +01:00
Peter Šurda fefb959338
Notify if C PoW missing
- Linux users often don't know that the C PoW is available and complain
  it's slow. This will try to build it, and adds availability
  notification in the status bar
- also, the updateStatusBar signal now allows emphasised notifications,
  which will remain visible for a longer period of time and also
  reappear if a status change happened in the meantime
2016-12-15 16:11:29 +01:00
PyBitmessage Translations 9d9052dda2
Auto-updated language zh_cn from transifex 2016-12-13 17:52:23 +01:00
PyBitmessage Translations 49832231ca
Auto-updated language de from transifex 2016-12-13 17:39:49 +01:00
Peter Šurda 025950c05e
Fix locale init
- date/time wasn't localised correctly on startup
2016-12-13 11:54:01 +01:00
PyBitmessage Translations dd777d6e43
Auto-updated language de from transifex 2016-12-12 00:44:09 +01:00
PyBitmessage Translations d8b8e0e9dd
Auto-updated language fr from transifex 2016-12-10 20:12:30 +01:00
Peter Šurda 114563ed2f
Default logger output UTF-8
- fixes errors when using locales other than EN
2016-12-06 16:15:37 +01:00
Peter Šurda 0dde976dec
Fix timeformat in configparser
- allow both raw (new) and non-raw (old) style timeformat for backwards
  compatibility
2016-12-06 13:04:52 +01:00
Peter Šurda df18f7b042
Switch configparser to raw mode 2016-12-06 11:01:17 +01:00
Peter Šurda e647d70bbc
New config parser class
- workaround for % in labels
- can be extended in the future
2016-12-06 10:47:39 +01:00
PyBitmessage Translations 9f89191742
Auto-updated language ja from transifex 2016-12-05 12:09:41 +01:00
Peter Šurda 9509552663
New network backend (WIP, not integrated)
- current snapshot of the new network backend code
- not working yet, just base classes and no integration
2016-12-01 16:48:04 +01:00
Peter Šurda 7ca6576dfc
Connection indicator for hidden service
- the number of connections as well as connection indicator was broken
  when running as a hidden service. This is a workaround
2016-11-16 19:36:50 +01:00
Peter Šurda 5cea1e04d1
SSL disconnect fix
- sometimes SSL connections unnecessarily disconnected on non-fatal
  errors. This should fix that. This is however a short term solution
  because of migrating to asyncore which has its own error handling
2016-11-16 15:18:09 +01:00
PyBitmessage Translations 1d3757ddc8
Auto-updated language pl from transifex 2016-11-15 22:07:40 +01:00
PyBitmessage Translations 3bafd597af
Auto-updated language eo from transifex 2016-11-15 21:36:16 +01:00
Peter Šurda 3f3774ff1f
Translation source update
- add extended encoding translation sources
2016-11-15 17:11:36 +01:00
Peter Šurda 7cc0f8fab0
Add extended encoding message validation
- validates variables of the "message" type
2016-11-15 17:10:33 +01:00
Peter Šurda e76b10a6ed
Logging fix 2016-11-15 17:10:14 +01:00
Peter Šurda bae7351849
Formating and standalone fix
- when running as a standalone program, helper_msgcoding logger import
  was missing
2016-11-15 17:09:08 +01:00
Peter Šurda c6d45dd394
Encoding when sending to self
- when sending to self, it always used encoding 2 when saving into the
  inbox. Now uses the one that's currently selected
2016-11-15 17:07:53 +01:00
Peter Šurda fbc9886eda
OpenCL settings saving fix 2016-11-15 17:06:56 +01:00
Peter Šurda 612333a267
Enable support for extended encoding
- receiving extended encoding now works
- sending works from the GUI by pressing "Shift" while clicking on
  "Send"
- requires https://pypi.python.org/pypi/msgpack-python
2016-11-14 20:23:58 +01:00
Peter Šurda 966b4382d8
Add handler for unknown encoding 2016-11-14 20:22:10 +01:00
Peter Šurda 5a438ccddd
OpenCL initialisation fix 2016-11-14 20:21:46 +01:00
Peter Šurda b9748c55aa
Don't connect to self fix
- the hidden service don't connect to yourself fix was broken, this
  fixes the fix
2016-11-14 20:20:41 +01:00
Peter Šurda 54e3465575
HTML parser queue flush fix
- the queue wasn't correctly flushed
2016-11-14 20:19:26 +01:00
Peter Šurda d35062b49c
Half-open connection limit warning fix
- it only should complain if on Windows and can't determine the Windows
  version
2016-11-13 08:50:09 +01:00
Peter Šurda 2fc2c78299
Extended encoding update
- modified to support both encoding and decoding
- fixes
- added test for all encodings
2016-11-12 17:20:45 +01:00
Peter Šurda 4af788e963
Placeholder proxy text
- based on what tor you're probably using (9150 for OSX and Windows,
  9050 for others)
2016-11-12 15:41:58 +01:00
PyBitmessage Translations a6ac128e9e
Auto-updated language eo from transifex 2016-11-10 21:56:09 +01:00
PyBitmessage Translations 7033527c41
Auto-updated language pl from transifex 2016-11-10 21:55:24 +01:00
PyBitmessage Translations 0a948d382a
Auto-updated language de from transifex 2016-11-10 21:54:24 +01:00
PyBitmessage Translations 87f607688f
Auto-updated language sk from transifex 2016-11-10 21:52:21 +01:00
Peter Šurda e9a3ef465c
OpenCL vendor selector
- when you have multiple OpenCL drivers at the same time, e.g. intel and
  nvidia, they won't mix leading to crashes. This patch makes it
  possible to select which driver to use by listing the available
  vendors
2016-11-10 21:43:10 +01:00
Peter Šurda 756f85c9f0
Don't connect to yourself when hidden service 2016-11-08 08:49:43 +01:00
Peter Šurda a7f3afe5a6
Typo 2016-11-05 00:46:07 +01:00
Peter Šurda 8ce72d8d2d
Extended encoding updates
- more flexible and developer friendly. Still not active code
2016-11-03 22:41:36 +01:00
Peter Šurda 020a78b776
Exception prevention in hashCount
- I got a report that an exception can occur, and while I can't
reproduce it, this should avoid it
2016-11-01 14:44:39 +01:00
PyBitmessage Translations c94492f17e
Auto-updated language pl from transifex 2016-10-30 03:18:00 +01:00
PyBitmessage Translations 976b11a307
Auto-updated language sk from transifex 2016-10-30 03:15:25 +01:00
Peter Šurda ecbb985cb3
Newchandialog translation definition
- the ui file wasn't included in the source list
2016-10-28 22:31:50 +02:00
Peter Šurda 3d4869851e
Many changes on chan create/join dialog
- refactored to use the .ui file
- input logic change, address is always optional
- interactive input validation
- runs asynchronously to the main window
- address generator thread can now validate chans in addition to just
adding them
2016-10-28 22:07:16 +02:00
Peter Šurda 5c9bfe09a2
Parser queue flushing
- the parser queue wasn't flushed when there's an exception resulting in
  the wrong message being displayed selected
2016-10-27 23:09:31 +02:00
PyBitmessage Translations 22eb4d62bf
Auto-updated language de from transifex 2016-10-26 22:32:18 +02:00
PyBitmessage Translations 419affa3b3
Auto-updated language sk from transifex 2016-10-26 22:21:58 +02:00
PyBitmessage Translations 5299d025a8
Auto-updated language de from transifex 2016-10-26 05:05:51 +02:00
PyBitmessage Translations 04f0b6335d
Auto-updated language sk from transifex 2016-10-26 04:56:43 +02:00
Peter Šurda 781ea8a8a6
Typo 2016-10-26 02:19:26 +02:00
Peter Šurda 30d9de008f
Label change fix
- when changing an addressbook label using UTF-8, the correspnding
  messagelist label was garbled
2016-10-25 07:54:52 +02:00
Peter Šurda a3584bb141
"From" combobox empty fix
- if label of your address is empty, the "From" combo box showed an
  empty entry (just the identicon). Now it shows the address instead
- fixes #898
2016-10-25 02:51:09 +02:00
Peter Šurda b0d1ed8304
Make clear that address error message refer to the recipient
- a user report indicated there is confusion about address error
messages. He/she thought it refers to the sender address, however it
refers to the recipient address. This makes it more clear
2016-10-24 22:33:13 +02:00
Peter Šurda ad0d2c375a
Recipient address error message status bar unicode fix
- when reporting an error about recipient address in the status bar, it
didn't correctly handle unicode
2016-10-24 22:31:54 +02:00
Peter Šurda 2c972fbe41
"Fetch Namecoin ID" button font size fixed 2016-10-24 22:29:14 +02:00
Peter Šurda 671f321ead
HTML parser fix
- the UTF-8-ifying of tags had missing brackets
2016-10-23 18:35:20 +02:00
Peter Šurda 40090a9a12
Notify in UI if time offset wrong
- if your time is off by more than an hour, you won't be able to
  establish a connection to the network. This patch adds a UI
  notification so that the user can understand why he can't connect.
2016-10-23 10:12:49 +02:00
Peter Šurda c335ef7d10
HTML parser fix
- sometimes, a tag attribute name is UTF-8, sometimes it isn't. This
  change makes it handle both
2016-10-23 09:02:27 +02:00
Peter Šurda 32f1e0447a
Multiprocessing PoW fixes and improvements
- the multiprocessing PoW should now work correctly
- it also should be interruptible correctly and the GUI will ask about
  it during exit
2016-10-22 05:00:35 +02:00