Commit Graph

294 Commits

Author SHA1 Message Date
72fc95b806
Fix filter in TCPConnection.sendAddr() preventing from sending IPv6 addresses 2022-08-30 17:22:53 +03:00
eb5f791cb6
Finalize invalid stream handling:
- prioritize the check for invalid stream
 - use BMObjectInvalidError exception, remove unused classes
2022-08-01 00:19:40 +03:00
69e540b504
Define stream number validity 2022-07-31 19:54:37 +08:00
bb7d8018c6
Fix handling of objects from unwanted streams 2022-07-31 19:27:05 +08:00
93c283a467
Place obvious bandit nosec comments 2022-05-02 18:00:55 +03:00
a5773999fe
Refactor BMConfigParser as a Module variable 2022-02-15 17:12:43 +05:30
4302126b6c
kivy porting to python3 phase1 2021-11-11 09:58:02 +05:30
ec52d2dae6
Added ignore comments for bare except warnings 2021-10-06 12:35:46 +05:30
a7d6037fc5
Minimal useragent validation 2021-09-05 17:47:37 +03:00
ef01b56291
Updated binary operator line break code quality changes 2021-08-20 13:33:59 +05:30
f9c49fbeb3
Import queue from six.moves in the top level module 2021-07-28 14:33:41 +03:00
64d2a831c4
Fix line break after binary operator in proxy 2021-04-29 17:44:01 +03:00
1ad86bcb5b
Init uploadChunk and downloadChunk in AdvancedDispatcher 2021-04-29 17:44:00 +03:00
8cf0a0bb46
Move initialization of connectedAt to AdvancedDispatcher 2021-04-29 17:44:00 +03:00
2c6f3c2fe1
Formatted lines for PEP8 in network.tls, removed stale comments 2021-04-29 17:44:00 +03:00
3f63278468
Done PEP8 formatting in network.bmproto (Fixes: #1703) 2021-04-29 17:44:00 +03:00
79efacffb1
Replaced lost UDPSocket.maxTimeOffset by constants.MAX_TIME_OFFSET
Closes: #1696
2021-03-01 19:55:47 +02:00
5f9d507717
announceInterval is for AnnounceThread, not UDPSocket 2021-02-22 19:56:24 +02:00
6168d63699
Replace formatting socket.error by exc_info in network.udp 2021-02-22 19:56:24 +02:00
d8cf148d4a
Replaced print operator by print function in network.asyncore_pollchoose
and unmaintained modules.
2021-02-18 17:15:56 +02:00
448e9e2f36
Prevent adding bootstrap servers to knownnodes when received in addr 2021-01-22 18:52:34 +02:00
3108115570
Shorten Bootstrapper methods:
handle_close() and set_connection_fully_established()
2021-01-22 18:52:34 +02:00
2b5f605857
Set close_reason for exceptions in network.tls 2021-01-22 18:52:33 +02:00
9540d5fabe
Fixing tor related tests:
- knownnodes.cleanupKnownNodes() should set knownNodesActual = False
   if there are no nodes in stream 1 (repeated bootstrapping)
 - set socksproxytype before _initiate_bootstrap()
 - wait 5 sec in _initiate_bootstrap() to be sure all connections are closed
 - plugins do not work on travis - use socksproxytype = SOCKS5,
   check tor presence by trying to bind on port 9050
 - successfull connection to 3 onion nodes in 6 minutes is not guaranteed -
   check that bitmessage doesn't try non-onion nodes
2021-01-22 18:52:33 +02:00
navjot
9c5d329c90
replace print with logger and remove unused file 2021-01-18 23:31:45 +05:30
navjot
46e2f04488
move randomtrackingdict.py out side the network dircetory 2020-12-29 13:12:22 +05:30
navjot
a2ab0a02dc
written test case randomtrackingdict dict module 2020-12-28 16:01:23 +05:30
navjot
9fe4ad0489
test case for testing old knownnodes pickle
-test case for testing old knownnodes pickle

-fixed CQ for tests.core module

-implemented shutil.copyfile feature and use small size knownnodes.dat file in test_pattern dir

-remove unnecessary code

-Fixed CQ of tests.core module
2020-12-21 22:50:38 +05:30
navjot
c18b544732
fixed socket error on sendato #1583 2020-10-23 17:54:59 +05:30
95fc981ae2
Finish timeOffsetWrongCount
- now notifies in status bar
- fixes #1433
2020-08-31 11:52:30 +02:00
d56191ebba
Move knownnodes module into network package 2020-07-21 16:21:43 +03:00
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