Commit Graph

2309 Commits (a0bbd21efcd95a7bff9984f52a7cf0e98d8ecea8)
 

Author SHA1 Message Date
Peter Šurda 59e1739136
Revert duplicate IP treatment for bootstrap
- bootstrap provider mode shouldn't accept multiple connections from a
  single IP after all, it creates problems
7 years ago
Peter Šurda d0b0d15dc3
Fix potential deadlock
- alreadyAttemptedConnectionsListLock probably deadlocked
- removed locking where unnecessary and rewrote the important part with
  proper locking
7 years ago
Peter Šurda af8957ed72
Typo in the second most recent commit 7 years ago
Peter Šurda d9d2deee25
Typo in last commit 7 years ago
Peter Šurda 339e375958
Bootstrap provider mode and minor knownNodes changes
- if knownNodes grows to 20000, instead of ignoring new nodes, forget
  the 1000 oldest ones
- drop connection after sendaddr if too many connections, even if it's
  an outbound one
- if maximum total connections are lower than maximum outbound
  connections, active bootstrap provider mode
- in this mode, check all addresses received before announcing them
- so basically it only annouces those addresses it successfully
  connected to
7 years ago
Peter Šurda 5d068ec84a
Unnecessary locking
- there was a sleep inside a lock
7 years ago
Peter Šurda 741ac5ca05
UPnP recommendation notification fixes
- notify also if no connections and no change
7 years ago
Peter Šurda ff786725ed
Typo
- UPnP / connectivity recommendation was active when on proxy rather
  than without
7 years ago
Peter Šurda e15d9e3e03
Save UPnP externa port after creating mapping 7 years ago
Peter Šurda cd0972c0f3
Recommend enabling UPnP on network problems
- it looks like there aren't enough listening nodes
- if connection is dropped, notify non-proxy users about the UPnP option
7 years ago
Peter Šurda 124b321b8c
Less verbose error handling
- if socket sending results in EHOSTUNREACH or ETIMEDOUT, don't show
  backtrace
7 years ago
Peter Šurda 8579d8b3b5
PyInstaller spec file updates
- file name based on architecture, version and date
- workaround for __init__ in src
- change to unix line endings
7 years ago
Peter Šurda 484d4abb3c
Frozen mode message type static
- I can't get the dynamic loading to work on OSX in frozen mode
- I think that if someone wants to build a frozen executable with custom
  messagetypes modules, he can edit the file
- so now it lists the existing types manually (for frozen mode only)
7 years ago
Peter Šurda 511b89ebbe
PoW Worker should wait for sql thread to init
- I think this was causing freezing queue on launch if not empty
- I can't reproduce the bug anymore
7 years ago
Peter Šurda d8301ff512
Less verbose connection error reporting
- don't print tracebacks on normal (timeout/reset) errors
7 years ago
Peter Šurda cff1af1b4f
Subscription wrong tab
- when subscribing from addressbook, it switched to blacklist tab
  instead of subscriptions
7 years ago
Peter Šurda 88658b074e
Socks proxy hostname resolving error handling
- if resolving fails, it wasn't handled
7 years ago
Peter Šurda 7ebe837eb0
Make some network parameters configurable
- maxtotalconnections = maximum number of total full connections
  (incoming + outgoing) the node will allow. Default 200 as it was.
- maxbootstrapconnections = number of additional (to total) connection
  that will act in bootstrap mode, closing after sending the list of
  addresses. Default 20 as it was.
- maxaddrperstreamsend = initial address list maximum size, per
  participating stream. Default 500. Child streams get half. The
  response is chunked into pieces of max. 1000 addresses as that's the
  protocol limit.
7 years ago
Peter Šurda 0fa0599cd4
IPv4 listen socket fix
- on OpenBSD, you can't have a socket that supports both IPv4 and IPv6.
  This allows handling for this error, and then it will try IPv4 only,
  just like for other similar errors.
7 years ago
Peter Šurda 191650f5a4
Typos
- previous commit contained typos
7 years ago
Peter Šurda b1b0c46555
Improve exception handling
- there were reports of errors in FreeBSD (I could only reproduce some)
  and Gentoo without IPv4 support (I don't have a VM for testing ready)
- adds an exception handler for double task_done in case sender thread
  has to close prematurely (I saw this triggered on FreeBSD 11)
- listening socket opening error handler was broken (triggered if you
  can't open a socket with both IPv4 and IPv6 support)
- error handler for socket.accept. Reported on FreeBSD 10.3
- fixes #854
7 years ago
Peter Šurda 74c85b4a9e
Retransmit timing changes
- makes it behave more like in the description
- partial for #847
7 years ago
Peter Šurda 7ef91bd607
Changed Makefile to use CXX instead of g++
- is more standardised
- closes #882
7 years ago
Justin Ramos b50198afb5
changes needed to get current code to run 7 years ago
Peter Šurda 317d4d57cc
Add setup.py (setuptools)
- thanks to Lvl4Sword for the initial file
7 years ago
PyBitmessage Translations 93c881172e
Auto-updated language ja from transifex 7 years ago
PyBitmessage Translations 30952f91cf
Auto-updated language ru from transifex 7 years ago
Peter Šurda a6dbb1e37e
Less timestamp penalty for inbound connections
- was over 2 days, but PyBM will only spread those with more recent than
  3 hours. So it's now set to 2 hours
7 years ago
Peter Šurda d7076626c2
TTL label is in red and warning when too low
- TTL to chans shouldn't be too low so the UI gives a feedback
- warning when sending wouldn either require a lot of refactoring or
  wouldn't have good usability
7 years ago
Peter Šurda e9899743ef
Typos, formatting, obsolete imports 7 years ago
PyBitmessage Translations 71ca2a761b
Auto-updated language pl from transifex 7 years ago
PyBitmessage Translations fa1fc2a031
Auto-updated language eo from transifex 7 years ago
Peter Šurda af1bed9034
MessageView Unicode HTML fix
- the HTML on/off click label should be unicode rather than str
7 years ago
Peter Šurda 57a3c35299
Context menu on messages to deleted accounts
- messages from deleted chans still stay in global inbox
- this crated problems with account detection
- created NoAccount class for such accounts
7 years ago
PyBitmessage Translations 72ed3e340f
Auto-updated language sk from transifex 7 years ago
PyBitmessage Translations bda5b02118
Auto-updated language de from transifex 7 years ago
PyBitmessage Translations 56384a353a
Auto-updated language ja from transifex 7 years ago
Peter Šurda 6062277d60
Rename configparser.py to bmconfigparser.py
- it was causing problems with py2app because the source of python's own
  CongigParser is also configparser.py
7 years ago
Peter Šurda 266d8eba1f
SafeHTMLParser unicode / subprocess
- don't do subprocess in SafeHTMLParser, it doesn't work in frozen mode
  and an attempt to fix it would take too much refactoring and I'm not
  even sure it would work
- instead, make it handle broken unicode correctly
- I think the previous reports of freezes were caused by trying to
  interpret data as unicode, causing a crash
- it does about 1MB/s on my machine, so a timeout is not a big problem
7 years ago
Justin Ramos fd95f8f519
allowing for max outbound connection configuration
Signed-off-by: Justin Ramos <justin.ramos@gmail.com>
7 years ago
Peter Šurda c8429365e3
Typo
- typo in last commit
7 years ago
Peter Šurda fef6126a74
Error handling improvement in sendDataThread
- don't uncecessarily report EPIPE as a big error, just close the
  connection
7 years ago
Peter Šurda ea9f10a8bb
Simplify and fix list of addresses to send
- it didn't always send the maximum possible amount
- it probably was slow
7 years ago
Peter Šurda 579ba49f38
Deamon mode without PyQt4
- daemon mode shouldn't require PyQt4
7 years ago
Peter Šurda 9c4366ffa6
Don't report direct network errors as proxy errors
- last commit reported network errors that happened when proxy was off
  as network errors
7 years ago
Peter Šurda ea448c4496
SOCKS error handler winsock compatibility
- now it can detect WSA errors as well, allowing more accurate error
  feedback
7 years ago
Peter Šurda 249a513630
Pyinstaller warning
- remove unnecessary includes
7 years ago
Peter Šurda 46a2c361de
Building and msgpack fixes
- Makefile typo
- pyinstaller rewritten and fixed including and initialisation of
  messagetypes
- msgpack decoding new message display fix
7 years ago
Peter Šurda 67c8966a21
Windows compatibility fixes
- spec file for pyinstaller detects architecture (32 or 64bit)
- spec file uses os.path.join
- spec file creates and adds the list of messagetypes
- added MinGW/MSyS support in Makefile
- separate Makefile.msvc for MCVC
- bitmsghash.cpp minor adjustments to build also on MSVC/MinGW
- if frozen mode, messagetypes loads the list of files from a text file
  generated during archive building rather than from a directory
7 years ago
Peter Šurda a95f4aa255
LibreSSL compatibility
- code distinguishes between OpenSSL 1.1.x and LibreSSL and works with
  both
7 years ago