* [BUG?] ipv6.7: SOCK_DGRAM can accept different protocols?
@ 2021-09-16 17:37 Alejandro Colomar
2021-09-17 7:05 ` Eugene Syromyatnikov
0 siblings, 1 reply; 2+ messages in thread
From: Alejandro Colomar @ 2021-09-16 17:37 UTC (permalink / raw)
To: Michael Kerrisk (man-pages), netdev; +Cc: 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/
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [BUG?] ipv6.7: SOCK_DGRAM can accept different protocols?
2021-09-16 17:37 [BUG?] ipv6.7: SOCK_DGRAM can accept different protocols? Alejandro Colomar
@ 2021-09-17 7:05 ` Eugene Syromyatnikov
0 siblings, 0 replies; 2+ messages in thread
From: Eugene Syromyatnikov @ 2021-09-17 7:05 UTC (permalink / raw)
To: Alejandro Colomar; +Cc: Michael Kerrisk (man-pages), netdev, linux-man
On Fri, Sep 17, 2021 at 8:13 AM Alejandro Colomar
<colomar.6.4.3@gmail.com> wrote:
>
> 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).
It can be left as 0, but, I think, IPPROTO_UDPLITE (at least) can be
specified in both cases, if the caller wishes so (as well as
IPPROTO_MPTCP/IPPROTO_SCTP for SOCK_STREAM, and some other, more
obscure protocols, like DCCP or L2TP).
> 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/
--
Eugene Syromyatnikov
mailto:evgsyr@gmail.com
xmpp:esyr@jabber.{ru|org}
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2021-09-17 7:05 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-09-16 17:37 [BUG?] ipv6.7: SOCK_DGRAM can accept different protocols? Alejandro Colomar
2021-09-17 7:05 ` Eugene Syromyatnikov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox