On Thu, Jul 18, 2019 at 12:44 PM Ulrich Windl <Ulrich.Windl@xxxxxxxxxxxxxxxxxxxx> wrote:
>>> Mantas Mikulenas <grawity@xxxxxxxxx> schrieb am 18.07.2019 um 10:06 in
Nachricht
<CAPWNY8XS1jw9iU_a-tagNw-v0NqeMAcWDRpftPdeKW_NFanqtA@xxxxxxxxxxxxxx>:
> On Thu, Jul 18, 2019 at 10:32 AM Ulrich Windl <
> Ulrich.Windl@xxxxxxxxxxxxxxxxxxxx> wrote:
>
>> >>> Vaibhav Dahiya <vdahiya@xxxxxxxx> schrieb am 18.07.2019 um 02:53 in
>> Nachricht
>> <5d2fc2f0.1c69fb81.214d0.1aca@xxxxxxxxxxxxx>:
>> > Hello,
>> >
>> > I am using sd_journal_send api() api call to log messages on syslog
>> server.
>> > I see that this uses
>> > sendmsg(fd, &mh, MSG_NOSIGNAL) call.
>>
>> Aren't syslog messages UDP anyway? When would an UDP send block?
>>
>
> No, program APIs use Unix sockets (/dev/log, /run/systemd/journal/socket).
> You only get UDP when your local syslog daemon is configured to forward
> elsewhere.
>
> That said, both are datagram sockets, I'm not sure whether sending to Unix
> dgram sockets can block or not?
??? Datagram _is_ UDP
UDP is datagram, but datagram is not always UDP.
"UDP" specifically means the datagram transport protocol that runs over IPv4/IPv6, nothing else. Unix sockets (AF_UNIX) have a datagram mode but they do not use UDP (or IP). Netlink is datagram-based but it isn't UDP-based. &c.
Mantas Mikulėnas
_______________________________________________ systemd-devel mailing list systemd-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/systemd-devel