_
d9fd0fd29d
🚧 wip: working on avalanche idea to make MACs easier for humans to read
2021-12-16 20:51:44 +00:00
_
ab42de5823
🚨 clippy pass
2021-12-09 18:22:23 +00:00
_
ed58df2e6b
➕ add ini files for both client and server
...
Long-lived servers can have their nickname configured in `server.ini`.
Clients can have a hosts-file-like nickname lookup in `client.ini`.
2021-12-09 18:15:03 +00:00
_
8aae200ebf
➕ add `directories` dep and `--version` subcommand
2021-12-09 17:01:29 +00:00
_
4f66c0495e
➕ add `find-nick` command
2021-12-09 16:46:55 +00:00
_
b261d7ba4a
♻️ refactor: refactor the client a lot so I can reuse its code for new subcommands
2021-12-09 16:21:14 +00:00
_
5665f484a2
🔇 remove debugging println
2021-12-09 15:49:23 +00:00
_
18e38f0611
➕ add `--timeout-ms` for client
...
Empirical testing shows that 200 ms is probably enough on my LAN, so
I set the default to 500 ms.
2021-12-09 15:34:42 +00:00
_
221a0bef2f
ignore errors if an interface can't join multicast
...
This works okay on my home network, but it's a little more magical than
I wanted - I can't force it to pick up the wifi interface. If the
Ethernet is plugged in, the laptop always and only picks that, even
if I know the server only asked the Ethernet interface.
This is fine, but only because my Ethernet happens to be faster than
my Wifi. I'm not sure how it will behave at work, where WiFi and
Ethernet may be separate networks.
At least the error messages are better now, so I can figure out why
it wasn't auto-starting with systemd.
2021-12-08 21:48:41 -06:00
_
7a0880fc02
do it similar on the client
2021-12-08 21:40:03 -06:00
_
fd4f70b1c9
🐛 bug: think I figured out the server part
...
turns out you can join multiple multicast groups on the same socket.
And then I think the OS or the network somehow decides how to route
packets to you. Without touching anything else, if I'm plugged into
Ethernet, it picks that address (when running client on the desktop)
and when I unplug it, it picks the laptop's WiFi.
2021-12-08 21:31:07 -06:00
_
0bb702f312
🚧 wip: not working the way I expect
2021-12-09 03:11:28 +00:00
_
1b7c2ce0f4
♻️ refactor: preparing to serve on multiple interfaces
2021-12-09 02:26:58 +00:00
_
39bcea54d4
♻️ refactor: make the self-IP code available within the program
2021-12-09 02:06:01 +00:00
_
2ba1dc2834
🐛 bug: fix server crashing when you send it a packet of ":V\n"
2021-12-09 01:46:03 +00:00
_
33e6ae29ca
♻️ refactor: replace all unwraps in my code with question marks
2021-12-09 01:39:54 +00:00
_
c7681ce9f5
♻️ refactor
2021-12-09 01:28:29 +00:00
_
b620bcfe06
♻️ refactor: make it a little more idiomatic
2021-12-09 00:45:18 +00:00
_
5d8bb3282b
♻️ refactor: literal translation to async
2021-12-09 00:34:59 +00:00
_
bf9d185092
🚨 fix all clippy warnings
2021-12-09 00:23:48 +00:00
_
ee51bb7d3d
♻️ refactor: move more Windows-only code behind cfg flags
2021-12-09 00:11:47 +00:00
_
dbedc6083e
♻️ refactor: fix some unused code warnings
2021-12-09 00:03:56 +00:00
_
5d6c566317
➕ add Tokio dep
...
Release build only went from 1.9 to 2.0 MB, but that could cause I'm not really using Tokio yet
2021-12-08 23:55:22 +00:00
_
2b4695934e
➕ add `my-ips` impl for Linux and refactor it into a module
2021-12-08 16:48:43 -06:00
_
cf283a2eaa
➕ add `my-ips` subcommand, currently for Windows only
2021-12-08 16:04:45 -06:00
_
9251dc327d
➕ add `--bind-addr` CLI args to both client and server.
...
This lets you pick an interface. I can't enumerate them automatically yet.
2021-12-08 14:55:27 -06:00
_
aa75119f39
➕ add nicknames
2021-12-08 02:10:58 +00:00
_
ca8fcc1104
✅ add test for old-style Response packets
2021-12-08 00:26:13 +00:00
_
494c44fbcf
♻️ refactor: pass address / port params to subcommands
...
Needed to land CLI arg changes eventually
2021-12-06 21:21:12 -06:00
_
f47fb4f1ba
🐛 bug: flip hashmap key and value so peers are de-duped by IP instead of claimed MAC.
2021-12-06 21:21:12 -06:00
_
fd4062416e
💄 hide port from output since it's alwasy 9040
2021-12-06 21:21:12 -06:00
_
2e4b723c18
🔇 remove `dbg!` macro call that looks bad when round-tripped through crates.io
2021-12-06 00:17:26 +00:00
_
4bd3e5c308
repeat the request 10 times, slower
2021-12-05 20:42:56 +00:00
_
50b668780b
add a request ID so I can re-send it. (I forgot UDP is unreliable, lol)
2021-12-05 20:40:37 +00:00
_
be43b3ab55
oops that wasn't it
2021-12-05 20:22:12 +00:00
_
570458c72c
why does multicast quit working on my laptop after a while?
2021-12-05 20:21:11 +00:00
_
8e5e15471b
wip
2021-12-05 20:16:47 +00:00
_
fa7300b069
printing MACs of discovered peers
2021-12-05 20:15:01 +00:00
_
eaca615510
working on TLV-formatted messages
2021-12-05 19:58:18 +00:00
_
0914a972e4
made a TLV module
2021-12-05 05:01:25 +00:00
_
98e1e33859
read MAC address
2021-12-05 03:46:56 +00:00
_
b634eff06d
clients now also print the server's socket address
2021-12-05 03:43:12 +00:00
_
c356ed9cc3
switch to thiserror and optimize release builds for size
2021-12-05 03:39:53 +00:00
_
73b93d99af
🐣 so that's how multicast groups work
2021-11-26 21:46:27 +00:00