@@ -155,7 +155,7 @@ namespace asyncpp::io::detail {
155155 struct ipv6_mreq mc_req{};
156156 mc_req.ipv6mr_multiaddr = group.ipv6 ().to_sockaddr_in6 ().first .sin6_addr ;
157157 mc_req.ipv6mr_interface = iface.ipv6 ().to_sockaddr_in6 ().first .sin6_scope_id ;
158- auto res = setsockopt (socket, IPPROTO_IPV6, IPV6_ADD_MEMBERSHIP , &mc_req, sizeof (mc_req));
158+ auto res = setsockopt (socket, IPPROTO_IPV6, IPV6_JOIN_GROUP , &mc_req, sizeof (mc_req));
159159 if (res < 0 ) throw std::system_error (errno, std::system_category (), " setsockopt failed" );
160160 } else {
161161 throw std::system_error (std::make_error_code (std::errc::not_supported),
@@ -177,7 +177,7 @@ namespace asyncpp::io::detail {
177177 struct ipv6_mreq mc_req{};
178178 mc_req.ipv6mr_multiaddr = group.ipv6 ().to_sockaddr_in6 ().first .sin6_addr ;
179179 mc_req.ipv6mr_interface = iface.ipv6 ().to_sockaddr_in6 ().first .sin6_scope_id ;
180- auto res = setsockopt (socket, IPPROTO_IPV6, IPV6_DROP_MEMBERSHIP , &mc_req, sizeof (mc_req));
180+ auto res = setsockopt (socket, IPPROTO_IPV6, IPV6_LEAVE_GROUP , &mc_req, sizeof (mc_req));
181181 if (res < 0 ) throw std::system_error (errno, std::system_category (), " setsockopt failed" );
182182 } else {
183183 throw std::system_error (std::make_error_code (std::errc::not_supported),
0 commit comments