Lee Smet
3d2106fc01
Update myceliumd-private lock file
...
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-23 12:43:27 +02:00
dependabot[bot]
3e728fd6a1
Bump tokio from 1.38.0 to 1.38.1
...
Bumps [tokio](https://github.com/tokio-rs/tokio ) from 1.38.0 to 1.38.1.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.38.0...tokio-1.38.1 )
---
updated-dependencies:
- dependency-name: tokio
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-23 12:41:17 +02:00
dependabot[bot]
9505c23680
Bump wintun from 0.4.0 to 0.5.0
...
Bumps [wintun](https://github.com/nulldotblack/wintun ) from 0.4.0 to 0.5.0.
- [Release notes](https://github.com/nulldotblack/wintun/releases )
- [Changelog](https://github.com/nulldotblack/wintun/blob/main/CHANGELOG.md )
- [Commits](https://github.com/nulldotblack/wintun/commits )
---
updated-dependencies:
- dependency-name: wintun
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-23 12:06:05 +02:00
dependabot[bot]
be29b38da1
Bump thiserror from 1.0.62 to 1.0.63
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.62 to 1.0.63.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.62...1.0.63 )
---
updated-dependencies:
- dependency-name: thiserror
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-23 12:05:09 +02:00
dependabot[bot]
41aeed9fa0
Bump tokio from 1.38.0 to 1.38.1 in /myceliumd-private
...
Bumps [tokio](https://github.com/tokio-rs/tokio ) from 1.38.0 to 1.38.1.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.38.0...tokio-1.38.1 )
---
updated-dependencies:
- dependency-name: tokio
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-23 12:04:51 +02:00
dependabot[bot]
1b51255fe6
Bump tokio from 1.38.0 to 1.38.1 in /myceliumd
...
Bumps [tokio](https://github.com/tokio-rs/tokio ) from 1.38.0 to 1.38.1.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.38.0...tokio-1.38.1 )
---
updated-dependencies:
- dependency-name: tokio
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-23 12:04:30 +02:00
dependabot[bot]
0bb1835b4a
Bump openssl from 0.10.64 to 0.10.66 in /myceliumd-private
...
Bumps [openssl](https://github.com/sfackler/rust-openssl ) from 0.10.64 to 0.10.66.
- [Release notes](https://github.com/sfackler/rust-openssl/releases )
- [Commits](https://github.com/sfackler/rust-openssl/compare/openssl-v0.10.64...openssl-v0.10.66 )
---
updated-dependencies:
- dependency-name: openssl
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-23 12:02:33 +02:00
Lee Smet
7f66fd7117
Update binary lockfiles
...
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-19 12:20:28 +02:00
dependabot[bot]
151771a261
Bump bytes from 1.6.0 to 1.6.1
...
Bumps [bytes](https://github.com/tokio-rs/bytes ) from 1.6.0 to 1.6.1.
- [Release notes](https://github.com/tokio-rs/bytes/releases )
- [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md )
- [Commits](https://github.com/tokio-rs/bytes/compare/v1.6.0...v1.6.1 )
---
updated-dependencies:
- dependency-name: bytes
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-19 11:49:01 +02:00
dependabot[bot]
6b23640e5e
Bump blake3 from 1.5.1 to 1.5.3
...
Bumps [blake3](https://github.com/BLAKE3-team/BLAKE3 ) from 1.5.1 to 1.5.3.
- [Release notes](https://github.com/BLAKE3-team/BLAKE3/releases )
- [Commits](https://github.com/BLAKE3-team/BLAKE3/compare/1.5.1...1.5.3 )
---
updated-dependencies:
- dependency-name: blake3
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-19 11:48:32 +02:00
dependabot[bot]
e614e10ba3
Bump clap from 4.5.8 to 4.5.9 in /myceliumd-private
...
Bumps [clap](https://github.com/clap-rs/clap ) from 4.5.8 to 4.5.9.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.8...v4.5.9 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-18 21:07:23 +02:00
dependabot[bot]
de6d5b6146
Bump clap from 4.5.8 to 4.5.9 in /myceliumd
...
Bumps [clap](https://github.com/clap-rs/clap ) from 4.5.8 to 4.5.9.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.8...v4.5.9 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-18 21:07:03 +02:00
dependabot[bot]
d40727e015
Bump thiserror from 1.0.61 to 1.0.62
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.61 to 1.0.62.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.61...1.0.62 )
---
updated-dependencies:
- dependency-name: thiserror
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-18 21:06:40 +02:00
Lee Smet
767060eb8b
Add metric for unfeasbile update to unknown subnet
...
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-17 12:04:36 +02:00
Lee Smet
e67a111cd8
Fix debug log indentation
...
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-17 11:57:19 +02:00
Lee Smet
aa8eca71b0
Only notify interested peers for seqno changes
...
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-17 11:55:06 +02:00
Lee Smet
825ee8e2c9
Use send_update function more
...
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-17 11:05:47 +02:00
Lee Smet
301102586c
Also exit early from update on retractions
...
If we don't know the subnet, and the update is a retraction, we can also
exit early
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-17 11:02:31 +02:00
Lee Smet
e5ce09545b
Manually implement absorb_second in RouterInner
...
This allows us to avoid a clone on the routelist Arc.
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-17 09:58:18 +02:00
Lee Smet
e6c5990b89
Update RoutingTableIterMut to use regular reference
...
Rather than using Rc<Refcell<..>>, use a &mut directly internally
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-16 18:07:46 +02:00
Lee Smet
817907630f
Don't use Iterator for RoutingTableIterMut
...
Instead use a manual `next` method and iterate using `while let Some(...)`.
We can then return items with lifetimes, which allows us to reduce the
internal complexity of the structs.
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-16 15:14:22 +02:00
Lee Smet
7d2a1cbdbe
Improve source table contention
...
Rewrite the loops which send updates to peers, to create the update
first, apply it to the source table, then loop over the peers. This is
an improvement on the old behavior where updaing the source table was
part of sending to a peer, which lead to a lot of redundant updates to
the source table, and missing entries in case there were only 1 or 2
peers.
Closes #232
Fixes #322
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-16 14:39:04 +02:00
Lee Smet
1a01bf8247
Continue processing expired route keys
...
Instead of returning, we need to continue the loop
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-15 17:28:27 +02:00
Maxime Van Hees
cb2e1b88e6
Fix indentation
2024-07-15 16:10:37 +02:00
Maxime Van Hees
d5d879f878
disabling quic protocol rework
2024-07-15 16:10:37 +02:00
Maxime Van Hees
3e76455e35
first step towards option to disable quic protocol to find peers
2024-07-15 16:10:37 +02:00
Lee Smet
30dcc7f3d3
Add metric for updates denied by filters
...
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-12 15:22:22 +02:00
Maxime Van Hees
ca4792f247
added nu-ansi-term feature
2024-07-12 14:59:30 +02:00
Maxime Van Hees
d4c8e73611
moved LICENSE.rtf file + changed installer script to reflect new location
2024-07-12 14:59:30 +02:00
Maxime Van Hees
f0f901b93c
moved config example file to root dir + changed wix file to reflect that change
2024-07-12 14:59:30 +02:00
Maxime Van Hees
647522aa4c
Windows installer now creates a default configuration file in C:\Users\Gebruiker\AppData\Roaming
2024-07-12 14:59:30 +02:00
Maxime Van Hees
f9bc18b386
Updated CHANGELOG.md about Windows installer
2024-07-12 14:59:30 +02:00
Maxime Van Hees
b0fd7c629b
Added github action for MSI build + updated README + added WiX installer files
2024-07-12 14:59:30 +02:00
Maxime Van Hees
d50e3cea86
Removed toml crate
2024-07-12 13:10:44 +02:00
Maxime Van Hees
bf062ed264
Added all public nodes to example config file
2024-07-12 13:10:44 +02:00
Maxime Van Hees
74a9fb2e81
Config file support for myceliumd-private + slight optimization to merge_configs function
2024-07-12 13:10:44 +02:00
Maxime Van Hees
3d9ad65704
Fixed requested changes
2024-07-12 13:10:44 +02:00
Maxime Van Hees
f9e0560990
Moved information from CHANGELOG to README
2024-07-12 13:10:44 +02:00
Maxime Van Hees
1667e71e0b
updated mac os config path + updated changelog to reflect changes
2024-07-12 13:10:44 +02:00
Maxime Van Hees
3298c78719
Removed debug println
2024-07-12 13:10:44 +02:00
Maxime Van Hees
65c3c34e0f
Platform specific config file location support
2024-07-12 13:10:44 +02:00
Maxime Van Hees
0ab40a7593
no_tun and disable_peer_disovery support in config file
2024-07-12 13:10:44 +02:00
Maxime Van Hees
5a103b7fca
start mycelium with configuration file
2024-07-12 13:10:44 +02:00
Lee Smet
f96cce9c70
Immediately remove expired unselected routes
...
There is no point in keeping an expired route, which is not selected, as
part of the fallback routes with infinite metric. Either there was no
selected route, so it can be removed, or the selected route got
retracted in which case that already caused a retraction to be sent.
Closes #330
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-11 15:47:28 +02:00
Lee Smet
81b44f9ddc
Don't refresh route timer on unfeasible update
...
If an update is unfeasible, apply it as per the spec but don't update
the route timer. The main reason unfeasible routes are kept, is because
"it migh become feasible in the future". In our case, since we use
reliable transports (for protocol messages), and we send a seqno request
when a route is lost, we know that if a feasible route exists in one of
our peers, we will get it shortly after a route is lost. Even if we keep
the unfeasible route as fallback route, it won't be selected, and a
seqno request is needed to refresh it. In short, there is functionally
no difference for the route if we keep the unfeasible entry around or
not: a seqno request _must_ be send to a peer in the hopes of getting a
valid route again. All things considered, this changes allows unfeasible
routes to gracefully go out of scope, after which the unfeasible update
will be blocked.
Closes #320
Closes #159
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-10 12:49:22 +02:00
Lee Smet
895eff5616
Split line in CHANGELOG.md to adhere to line length
...
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-10 11:26:08 +02:00
Lee Smet
7682bc60c2
Skip route selection after unfeasible route update
...
If an unfeasible update is applied to an existing, unselected route, we
now skip route selection altogether. Since the route is not selected,
it can obviously not be unselected, and selecting it won't be possible
since its now not feasible.
By immediately returning we also can't notify downstream peers which
have sent a seqno request for this combination. This is fine, since if
there is an outstanding request for this seqno, considering it is
unfeasible, it won't be of interest to the downstream peer. Note that if
the seqno request triggered a bump of the route seqno, the _first_ update
is always feasible.
Also expose a metric value to track how often we just skip route
selection.
Closes #329
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-10 11:17:32 +02:00
Lee Smet
33730dbda9
Update binary lockfiles
...
Signed-off-by: Lee Smet <lee.smet@hotmail.com >
2024-07-09 10:45:25 +02:00
dependabot[bot]
58eab5f6dc
Bump serde from 1.0.203 to 1.0.204 in /myceliumd-private
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.203 to 1.0.204.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.203...v1.0.204 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-09 10:42:57 +02:00
dependabot[bot]
9510bd3796
Bump serde from 1.0.203 to 1.0.204 in /myceliumd
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.203 to 1.0.204.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.203...v1.0.204 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-07-09 10:42:31 +02:00