Well, that’s what the code does now, as far as I can tell. enohp ym morf tnes ----------- Dan Wilcox danomatika.com robotcowboy.com
> On Mar 25, 2019, at 11:32 AM, Christof Ressi <[email protected]> wrote: > > > For connectionless sending essentially, I think we would need to forego the > > call to connect() in netsend_connect and keep a copy of the socket address > > struct > > IIUC, 'connect' on a UDP sockket does exactly that: it doesn't really > "connect" to anything but just stores the default destination address, so > 'connect' + 'send' is equivalent to 'sendto'. > at least that's how it has always worked for me. > > http://man7.org/linux/man-pages/man2/connect.2.html > > Christof > > Gesendet: Montag, 25. März 2019 um 10:59 Uhr > Von: "Dan Wilcox" <[email protected]> > An: "Chris McCormick" <[email protected]> > Cc: pd-dev <[email protected]> > Betreff: Re: [PD-dev] netsend/netreceive UDP ignore ECONNREFUSED > Sure, however neither netsend nor udpsend work this way, so I was first > trying to see what I could do without changing the internals a whole lot. > It's definitely not "connectionless" when it keeps returning to a receiver... > > For connectionless sending essentially, I think we would need to forego the > call to connect() in netsend_connect and keep a copy of the socket address > struct to use with sendto() instead of send() when actually sending. Since > sendto() takes the address directly, it doesn't need a connect() ahead of > time. Also, the UDP netsend / netreceive relay behavior could then use > sendto() and recvfrom(). > > So conceptually, the current behavior of calling connect() for both UDP and > TCP needs to change and I'd think then the the "connected" outlet for UDP > simply means the socket is set up, but has no connotation for a current > "connection." Again, I'm not sure how that would affect patches which would > rely on the old behavior... > > On Mar 25, 2019, at 3:42 AM, Chris McCormick <[email protected]> wrote: > > Hi Dan, > > On 23/3/19 5:56 am, Dan Wilcox wrote: > From my reading on the socket API, sending a UDP message conceptually > shouldn't care about whether the receiver is there. However this is detected > on a lower networking layer and propagated up to the application layer where > it can be used or ignored. > > You probably know this already but it is possible to operate UDP in > connectionless or connection-oriented mode. Connection-oriented is somewhere > between TCP and connectionless. In connection-oriented mode I suppose you > would want to know if the other side is there or not, whereas with > connectionless you probably just want to fire and forget. Not sure if this > affects what you are doing but might help explain what you're seeing. > > Cheers, > > Chris. > > -- > https://mccormick.cx/ > > My tech development newsletter: > https://mccormick.cx/subscribe > > -------- > Dan Wilcox > @danomatika > danomatika.com > robotcowboy.com > > _______________________________________________ Pd-dev mailing list > [email protected] https://lists.puredata.info/listinfo/pd-dev
_______________________________________________ Pd-dev mailing list [email protected] https://lists.puredata.info/listinfo/pd-dev
