[BUG?] ipv6.7: SOCK_DGRAM can accept different protocols?
From: Alejandro Colomar <hidden>
Date: 2021-09-16 18:50:38
Also in:
linux-man
Hi, Reading a stackoverflow question <https://stackoverflow.com/questions/51996808/do-we-need-to-specify-protocol-when-type-is-sock-dgram-or-sock-stream-in-soc> it noted that, while ip(7) notes that protocol can be left as 0 for both SOCK_STREAM and SOCK_DGRAM, ipv6(7) is misleading and seems to suggest that protocol may be significant for SOCK_DGRAM (at least in the SYNOPSIS). I guess that's not true, and it can be left as 0, but since I don't know, I'll ask. Thanks, Alex -- IP(7) Linux Programmer's Manual IP(7) NAME ip - Linux IPv4 protocol implementation SYNOPSIS #include <sys/socket.h> #include <netinet/in.h> #include <netinet/ip.h> /* superset of previous */ tcp_socket = socket(AF_INET, SOCK_STREAM, 0); udp_socket = socket(AF_INET, SOCK_DGRAM, 0); raw_socket = socket(AF_INET, SOCK_RAW, protocol); -- IPV6(7) Linux Programmer's Manual IPV6(7) NAME ipv6 - Linux IPv6 protocol implementation SYNOPSIS #include <sys/socket.h> #include <netinet/in.h> tcp6_socket = socket(AF_INET6, SOCK_STREAM, 0); raw6_socket = socket(AF_INET6, SOCK_RAW, protocol); udp6_socket = socket(AF_INET6, SOCK_DGRAM, protocol); -- Alejandro Colomar Linux man-pages comaintainer; https://www.kernel.org/doc/man-pages/ http://www.alejandro-colomar.es/