Split dispatch init/run, join IPv6 multicast discovery group in firmware

This commit is contained in:
Ian Gulliver
2026-04-06 20:01:22 +09:00
parent 00b960d81d
commit 49bbe1b29c
6 changed files with 40 additions and 7 deletions

View File

@@ -1730,6 +1730,10 @@ uint16_t get_socket_mss(socket_id sid) {
return get_sn_mssr(static_cast<uint8_t>(sid));
}
void set_socket_dest_mac(socket_id sid, const std::array<uint8_t, 6>& mac) {
set_sn_dhar(static_cast<uint8_t>(sid), const_cast<uint8_t*>(mac.data()));
}
void set_socket_dest_ip(socket_id sid, const ip_address& addr) {
uint8_t sn = static_cast<uint8_t>(sid);
if (addr.len == 16) set_sn_dip6r(sn, const_cast<uint8_t*>(addr.ip.data()));

View File

@@ -247,6 +247,7 @@ void set_socket_tos(socket_id sn, uint8_t tos);
uint8_t get_socket_tos(socket_id sn);
void set_socket_mss(socket_id sn, uint16_t mss);
uint16_t get_socket_mss(socket_id sn);
void set_socket_dest_mac(socket_id sn, const std::array<uint8_t, 6>& mac);
void set_socket_dest_ip(socket_id sn, const ip_address& addr);
ip_address get_socket_dest_ip(socket_id sn);
void set_socket_dest_port(socket_id sn, port_num port);