My sandboxed Mac VoIP application is trying to set a QoS DiffServ DSCP value to mark RTP traffic transmitting voice. It is doing that via a third-party open source library. Specifically, the setsockopt() function is called with the value NET_SERVICE_TYPE_VO in its fourth argument:
status = setsockopt(sock, SOL_SOCKET, SO_NET_SERVICE_TYPE, (void *)&val, sizeof(val));
The function returns success.
However, when I'm tcpdumping this traffic, I see ToS value 0x0. This is happening on macOS 10.14 Mojave. The same binary running on macOS 10.10 produces the expected result: the ToS value provided by tcpdump shows the non-zero value 0xc0.
Am I missing something or should I creae a bug report?