Commit Graph

37 Commits

Author SHA1 Message Date
735bd17982
Take into account pending objects in Inventory.cleanup() 2024-10-31 04:48:39 +02:00
a7716991f3
A rough implementation of the objects stored in sqlite db;
structure.Object was rewritten, to store the object data.
2024-10-31 04:46:20 +02:00
7053ac84f7
Try not to add core nodes to pool 2024-09-23 04:33:21 +03:00
05fcbdb45c
A rough implementation of proper bootstrapping:
added a Bootstrapper connection class, connect() and bootstrap() closures
in Manager.manage_connections(). The later is called while
shared.unchecked_node_pool is empty.
2024-09-23 04:28:33 +03:00
f9272cbac9
Define a base class for connection to subclass for special purposes 2024-06-25 19:55:27 +03:00
740654b563
Make tuples from sets before taking random samples 2024-05-07 19:15:36 +03:00
5a65978678
Fix a mistake in Connection._do_tls_handshake(): return on exception,
log ssl.SSLError reason and discard the node.
2024-05-07 19:15:36 +03:00
d06beded72
Resolve an SSL issue connecting to PyBitmessage 0.6.1 or using openssl 3.0,
log version
2024-05-07 19:15:00 +03:00
b806906af4
Add Error message class, handle fatal 2023-10-12 19:49:32 +03:00
fda6ecfe01
Unify and improve message.Version:
- from_message() decoding method as in other messages;
  - support multiple streams and move stream check to connection;
  - use shared.stream instead of hardcoded 1;
  - replace values from shared with the instance attributes in to_bytes(),
    put conventional 1 as services of a remote host.
2023-10-12 19:49:32 +03:00
e4887734a0
Send ping into inactive connection, not pong 2023-10-07 17:55:49 +03:00
58a80bb4a4
Remove unreachable except clause for ConnectionResetError
- handled in socket.error branch. TODO: follow PEP 3151
2023-08-20 01:19:11 +03:00
45a4a8fd31
Manifest disconnecting 2023-08-16 03:42:16 +03:00
67ecbf95d3
Suppress false positives on unsubscriptable-object in connection 2023-08-14 23:59:57 +03:00
e249e501cc
Fix formatting lint issues 2023-08-14 05:53:20 +03:00
6558245a32
Minimal implementation of anti-intersection delay to wait before getdata 2023-08-12 06:35:15 +03:00
761c95d561
Fix SSLError in incoming connection with python 3.10 2023-08-04 00:27:38 +03:00
e95f2b522a
Add basic docstrings 2023-07-30 03:45:59 +03:00
30a8a32c92
Lower the level of most log messages, but add exc_info for some
- log info on disconnect, debug on disconnected locally
  - don't log connections failed because of obvious resons
2022-09-10 19:30:39 +03:00
ba4bbd4129
Lint fixes:
- split the last long line in the connection module
  - resolved pylint useless-object-inheritance and unused-variable
2021-08-01 19:06:44 +03:00
3fa84d1f4b
Formatted the code with flake8 2021-03-09 18:35:03 +02:00
83c2e48fe5
Use dotted imports 2021-03-09 18:31:20 +02:00
TheKysek
6a78dd0490
Handle OSError exception during data sending 2017-08-21 11:21:45 +02:00
TheKysek
2085f01281
Code cleanup 2017-07-20 18:22:59 +02:00
TheKysek
593bae59cb
OpenSSL 1.1 support 2017-07-12 09:53:20 +02:00
TheKysek
708e2db22c
Do not advertise our IP address after incoming I2P connection 2017-07-12 09:12:18 +02:00
TheKysek
ca5a489d2c
Do not crash when receiving an object we no longer need 2017-07-12 08:31:08 +02:00
TheKysek
ef2b3bba0a
Do not re-request invalid objects 2017-07-11 13:04:51 +02:00
TheKysek
df665813ac
Object requesting tweaks
- re-request objects after 10 minutes

- better spread object requests between dfferent peers
2017-07-11 12:49:14 +02:00
TheKysek
974568164f
Destination sharing tweaks 2017-07-03 09:23:02 +02:00
TheKysek
57fffaafc0
Python 3.4 TLS fix 2017-07-01 16:50:08 +02:00
TheKysek
057b25a812
I2P improvements
- local destination publishing

- destination gathering
2017-07-01 15:05:06 +02:00
TheKysek
02af66b976
TLS updates 2017-06-25 10:29:46 +02:00
TheKysek
55e263a394
Object exchange tweaks 2017-06-19 08:54:41 +02:00
TheKysek
15620435ff
Send known addresses before objects 2017-06-16 09:32:59 +02:00
TheKysek
918a926c88
I2P tweaks 2017-06-11 07:55:53 +02:00
TheKysek
1a3e340537
Experimental I2P support 2017-06-09 20:41:33 +02:00