Commit Graph

277 Commits

Author SHA1 Message Date
a2bf898bca
Merge branch 'sqlite' into testing
Some checks failed
Testing / default (push) Failing after 7m0s
2025-02-23 05:27:23 +02:00
6372578bb6
Rename .vectors_to_send() to .biginv_chunks() preventing ambiguity 2025-02-22 03:33:50 +02:00
1aca3e6931
Bump version to 0.3.5 2025-02-22 03:33:50 +02:00
ecfafcc385
Add caching objects in a dict 2025-02-22 03:33:50 +02:00
34d2e54d56
Make objects.vectors_to_send() a generator of chunks 2025-02-22 03:33:49 +02:00
dba455464a
Started a test case for the objects 2025-02-22 03:33:49 +02:00
260c839e26
Take into account pending objects in Inventory.cleanup() 2025-02-22 03:33:49 +02:00
22f0282ef9
Add VACUUM after deleting 10000 objects, do it in cleanup() 2025-02-22 03:33:48 +02:00
c2abf2879a
Move objects_lock into the Inventory object 2025-02-22 03:33:48 +02:00
73893dabf7
Set a row factory instead of nesting the iterator, iterate through the cursor 2025-02-22 03:33:48 +02:00
8ffcf92380
Update test object for the new Object structure,
comment outdated setting object_payload
2025-02-22 03:33:47 +02:00
1f64719a56
A rough implementation of the objects stored in sqlite db;
structure.Object was rewritten, to store the object data.
2025-02-22 03:33:30 +02:00
4daf047d51
Merge branch 'tor' into testing
All checks were successful
Testing / default (push) Successful in 6m55s
2025-02-21 06:10:56 +02:00
c8510557f2
Merge branch 'shutdown' into testing
All checks were successful
Testing / default (push) Successful in 6m22s
2025-02-21 04:16:40 +02:00
fb243dd8e9
Trying to support the PoW interruption 2025-02-21 03:39:46 +02:00
5f0ab21268
Add a test for PoW interrruption, make a separate test case for PoW 2025-02-21 03:39:29 +02:00
9732f0c7f5
Handle pylint too-many-branches in main.main() 2025-02-21 03:30:38 +02:00
fe6a6af1db
Started a test case for the tor service 2025-02-21 03:30:31 +02:00
56e92a747a
Merge branch 'bootstrap' into testing
All checks were successful
Testing / default (push) Successful in 7m57s
2025-02-18 08:07:49 +02:00
cb239c7d68
Bump version to 0.3.4 2025-02-18 05:25:05 +02:00
ec4e24185a
Don't advertise own peer if run with --no-incoming or reported IP is 127.0.0.1 2025-02-18 05:25:04 +02:00
d17de19aca
Improve the logic of starting tor:
set missing initial port, exit on failure,
increase timeout to 90 reducing number of attempts to 20.
2025-02-18 05:24:55 +02:00
c5a1310083
Conform tor setup to the restrictions for incoming and outgoing connections;
don't start the tor service with --no-incoming if there is a system one.
2025-02-18 05:23:07 +02:00
a0537a9e66
Don't try to resolve DNS seeds if tor is enabled 2025-02-18 05:06:14 +02:00
b1749c368c
Test process with --tor, set env variable HOME for tor 2025-02-18 05:06:13 +02:00
651a4f9681
Update command line dump in README 2025-02-18 05:06:13 +02:00
ff0df70388
Complete help string on the --tor arg 2025-02-18 05:06:13 +02:00
947607937c
Skip TLS also for incoming connections using tor 2025-02-18 05:06:12 +02:00
b465ddff85
Add a stem requirement for testing and a new extra - 'tor' 2025-02-18 05:06:12 +02:00
d6de7c8d1e
A rough implementation of onion service based on pybitmessage plugin;
publishing interval for onionpeer object is a half of its TTL,
as for I2P destination.
2025-02-18 05:02:11 +02:00
59fcd9eb2b
A test for encoding and decoding of onion peer object 2025-02-18 04:39:29 +02:00
1400486b22
Parse socks_proxy arg with urllib.parse and support more parameters 2025-02-18 04:39:29 +02:00
fffb5e6052
Install and start tor in buildbot 2025-02-18 04:39:29 +02:00
cd6f82bc2a
Add a simple blind test for process running with --socks-proxy 2025-02-18 04:39:28 +02:00
63700885a0
Add an extra 'proxy' with a requirement of PySocks 2025-02-18 04:39:28 +02:00
a10a905407
Do not start TLS in onion connections 2025-02-18 04:39:28 +02:00
bdfd39a163
Implement decoding and connection to onion peer:
make a separate a bit controversial class structure.OnionPeer(),
having .from_object() and .to_object() instead of .from_bytes() etc.
2025-02-18 04:39:14 +02:00
452fe8d5f1
A minimal implementation of proxy for outgoing connections using PySocks,
special arg --tor currently just sets host and port for the socks_proxy.
2025-02-18 04:39:07 +02:00
25cb745f05
Merge branch 'protocol' into testing 2025-02-18 03:58:42 +02:00
27e72d2027
Add a minimal sanity check for addresses in the received addr message 2025-02-18 03:52:19 +02:00
2b312c4255
Lower timestamps in the addr message by a half of PyBitmessage ADDRESS_ALIVE 2025-02-18 03:52:11 +02:00
b83262fe66
Merge branch 'memory' into testing 2025-02-18 03:17:04 +02:00
1caf3288b2
Merge branch 'network-nonce' into testing 2025-02-18 03:08:04 +02:00
fa50a844ad
Discard the disconnected node from unchecked_node_pool 2025-02-18 03:07:47 +02:00
b9e5b07e1b
Generate new nonce for the I2P connections and improve nonce handling:
- make tuple (host, port) a key for shared.nonce_pool
    to differentiate incoming tor connections,
  - reserve 127.0.0.1, 8448 for self,
  - convert nonce to string for logging.
2025-02-18 03:07:46 +02:00
d1b0f06ac1
Log also nonce when processing the version message 2025-02-18 03:07:46 +02:00
2147a6a716
Don't connect to nodes with the same nonce 2025-02-18 03:07:46 +02:00
21fe906ac3
Rewrite duplicate connection handling in i2p.listener, correct except clause 2025-02-18 03:07:04 +02:00
2f4cb203c8
Merge branch 'network' into testing 2025-02-18 03:05:00 +02:00
fd5c2c803d
Update request time in vectors_requested to not re-request too often 2025-02-18 03:04:24 +02:00