Commit Graph

38 Commits

Author SHA1 Message Date
341651973a
Reduced imports:
- exported from network package all objects used outside;
  - made all threads available in threads module.

Wrote some module docstrings.
2019-11-11 12:03:03 +02: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
ad2a2b3fb4
Inherit helper_threading.StoppableThread from threading.Thread
and do random.seed() in its __init__
2019-08-06 18:07:19 +03:00
92c0196887
Add self peer into knownnodes if detected external IP with UPnP 2019-08-01 13:21:05 +03:00
c5ce2e36d5
shared.extPort is obsolete 2019-08-01 12:40:50 +03:00
coffeedogs
0bceeca524
Changes based on style and lint checks. (final_code_quality_5) 2018-10-31 14:04:35 +00:00
140265621f
UPnP parser fix
- Fixes #1131
- Came over BM, thank you kind stranger
2018-02-26 20:03:35 +01:00
96ea36cfd2
UPnP client port randomize 2018-02-13 16:11:53 +01: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
42246f83ef
Reset connection list on UPnP
- reset the already attempted connection list after UPnP port mapping is
  established. This allows to resubmit externally reachable port
2017-02-28 01:15:49 +01:00
e15d9e3e03
Save UPnP externa port after creating mapping 2017-02-27 15:55:59 +01:00
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
2017-02-22 09:34:54 +01:00
59f3a2fbe7
Reduce cyclic dependencies
- rearranged code to reduce cyclic dependencies
- doCleanShutdown is separated in shutdown.py
- shared queues are separated in queues.py
- some default values were moved to defaults.py
- knownnodes partially moved to knownnodes.py
2017-02-08 13:41:56 +01:00
ad75552b5c
Move shutdown from shared.py to state.py 2017-01-14 23:20:15 +01:00
c738d93056
Assorted fixes
- landscape.io was complaining, this fixes most easily fixable errors
2017-01-11 18:13:00 +01:00
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
6add48e036
UPnP fix
- it looks like some UPnP server implementations consider NewRemoteHost
  to be a mandatory tag
2016-06-22 22:54:06 +02:00
0689525d61
UPnP fixes
- detects WANPPPConnection vs WANIPConnection
2016-06-21 10:11:15 +02:00
75eef9ef2f
Fix merge conflicts
Missed this difference in the last commit
2016-05-02 17:33:18 +02:00
aabf600c38
Fix incorrectly resolved merge conflicts
Two file merge conflicts, __init__.py and upnp.py, were not resolved
correctly by the automatic resolving (probably because the affected code
was written by other people and I merged them into mailchuck fork). This
changes it to the same code that is in the mailchuck fork)
2016-05-02 17:10:45 +02:00
mailchuck
9edde110a2 Translation update
Some function calls were not being identified as text that should be
translated.
2016-05-02 15:00:26 +02:00
1b50f3898a UPnP fixes:
- external port iterator fix
- error handler fix
2016-05-02 15:00:24 +02:00
mailchuck
a1b44aab44 UPnP fixes
- UPnP handles errors better
- it tries to bind external interface (previously sometimes it searched
on 127.0.0.1 resulting in no routers being detected)
2016-05-02 15:00:24 +02:00
mailchuck
4033b945ee UPnP status bar update fix 2016-05-02 15:00:23 +02:00
mailchuck
1b36da9327 Save UPnP port
Fixes #129
2016-05-02 15:00:23 +02:00
mailchuck
f77afe8fae Exception handling 2016-05-02 15:00:21 +02:00
mailchuck
36ddbd365e Typo 2016-05-02 15:00:21 +02:00
mailchuck
410c23e8c0 Typo 2016-05-02 15:00:21 +02:00
mailchuck
e82e33fa51 UPnP notifications
UPnP will notify you through window status bar.
2016-05-02 15:00:21 +02:00
mailchuck
bbdfb1ea54 UPnP cleaner shutdown 2016-05-02 15:00:21 +02:00
mailchuck
b00c4f24ec Threads close better
- UPnP and outgoingSynSender threads close slightly better.
- extPort initialisation was missing
2016-05-02 15:00:21 +02:00
mailchuck
48b9e50397 UPnP GUI
Settings GUI now contains a checkbox for UPnP and auto starts/stops the
thread when changed.
Default UPnP socket timeout decreased for faster thread
starting/stopping
2016-05-02 15:00:21 +02:00
mailchuck
50be5a2b4c UPnP fixes 2016-05-02 15:00:21 +02:00
mailchuck
c03c563a74 Make UPnP into a thread
- UPnP is now a separate thread that will continue to setup UPnP
- shutdown waits for threads that shutdown correctly (Addresses
Bitmessage#549)
2016-05-02 15:00:21 +02:00
mailchuck
cc848cdb65 Typo fix 2016-05-02 15:00:21 +02:00
mailchuck
5432c6e0c8 UPnP logging improvlement 2016-05-02 15:00:21 +02:00
0270dc3d4d Cleanup UPnP 2016-05-02 15:00:21 +02:00
lightrabbit
f0f9f679e6 Add UPnP support. 2016-05-02 15:00:17 +02:00