Commit Graph

263 Commits

Author SHA1 Message Date
b165a6b4ef
Do addKnownNode recursively for multiple streams 2020-07-21 16:21:43 +03:00
f9dc8eaacf
Define len() for network.BMConnectionPool 2020-07-21 16:21:43 +03:00
1035d2aec4
Format network.tcp for flake8 2020-07-21 16:21:42 +03:00
54e44eac95
Add or update knownnode for connected Peer for both inbound
and outbound connections when fully established, update lastseen
before closing connection.
2020-07-21 16:21:42 +03:00
d9ddbe8d24
Do not update addrQueue if not added node to own knownnodes
and more checks in knownnodes.addKnownNode moved from bmproto.
2020-07-21 16:21:42 +03:00
739ff7b439
Add knownnodes only by knownnodes.addKnownNode(),
now it can update lastseen.
2020-07-21 16:21:36 +03:00
lakshya
3f773c78f7
setting, openssl and bmproto quality fixes 2020-05-28 13:43:03 +05:30
d15e614bb1
Fix streams decoding in BMProto.bm_command_version() 2020-05-22 12:58:04 +03:00
d09782e53d
Obsolete bitmessagemain.connectToStream(), use BMConnectionPool method 2020-05-05 17:30:31 +03:00
185ad66ea5
Moved most of variables from shared elsewhere (mostly to state) 2020-05-05 17:27:38 +03:00
11bec55be5
Don't put addresses into queue
- attempt to fix #1598
- seems to work
- addresses won't be uploaded/announced anymore other than after connecting,
  Later I need to find out how to announce them without causing problems, but
  for the time disabling this seems an acceptable drawback
2020-02-05 20:41:36 +08:00
lakshyacis
6139efc377
Imported packages sequencing and formatting 2 2020-01-27 14:43:25 +05:30
lakshyacis
f0bc74e658
Network fixes 2020-01-10 16:51:17 +05:30
lakshyacis
81872c7f2f
network code quality fixes 2020-01-08 12:53:04 +05:30
03316496b7
Stop UDPSocket on socket.error 101 (Network is unreachable) 2019-12-24 12:41:01 +02:00
a69732f060
Addrthread finish
- addrthread is supposed to spread addresses as they appear. This was never
  finished during migration to asyncore
- conservative to prevent flood and loops
- randomises order
- move protocol constants into a separate file
- move addr packet creation into a separate file
- see #1575
2019-11-30 13:47:24 +01:00
2a165380bb
Restrict outbound connections on network groups
Logic borrowed from bitcoin, see CNetAddr::GetGroup() in src/netaddress.cpp
Simplified, so may not work fully identically but for our purposes it's good
enough. Won't connect to more than one host from a /16 subnet on IPv4 and a /32
subnet on IPv6.
2019-11-18 12:20:29 +01:00
d6c1845b71
Moved Peer from state to network.node
and trustedPeer to network.connectionpool.BMConnectionPool attribute
2019-11-11 17:13:12 +02:00
7a1f803c92
network.BMConnectionPool: added shortcuts connections()
and establishedConnections(), some formatting fixes
2019-11-11 12:03:04 +02:00
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
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
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
53cc08edec
Renamed invalid python module http-old 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
88f2c51595
quzwelsuziwqgpt2.onion:8444 is also a bootstrap server 2019-09-25 18:55:02 +03:00
bdb09c2d00
Ignore self node in connectionchooser.chooseConnection() 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
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