[Bug 285431] multimedia/librespot: in 0.6.0 librespot discovery only binds to ipv6

From: <bugzilla-noreply_at_freebsd.org>
Date: Sat, 15 Mar 2025 10:21:47 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=285431

            Bug ID: 285431
           Summary: multimedia/librespot: in 0.6.0 librespot discovery
                    only binds to ipv6
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Many People
          Priority: ---
         Component: Individual Port(s)
          Assignee: driesm@freebsd.org
          Reporter: rodrigo@FreeBSD.org
             Flags: maintainer-feedback?(driesm@freebsd.org)
          Assignee: driesm@freebsd.org

Hi,

I'm the audio/spotifyd maintainer.
Working on spotifyd which is based on librespot 0.6.0, I discover that
librespot discovery now uses dualstack sockets. On linux this allows
applications to bind to IPv4 and IPv6, but in FreeBSD this binds only to IPv6.

This is caused by the IPV6CTL_V6ONLY flag, when disabled, allows IPv4 to be
routed to AF_INET6 sockets. On linux IPV6CTL_V6ONLY is disabled by default, but
not on FreeBSD.

I did a minimal patch on spotifyd to make it works.
You should probably do something similar on librespot by using the windows
rules to freebsd.

This is the discussion: https://github.com/librespot-org/librespot/issues/1474

This is the terrible patch to make spotifyd works on FreeBSD

https://cgit.freebsd.org/ports/tree/audio/spotifyd/files/patch-cargo-crates_librespot-discovery-0.6.0_src_server.rs

-- 
You are receiving this mail because:
You are the assignee for the bug.