From: Vlad S. <vl...@cr...> - 2005-11-02 22:59:51
|
I am not sure why AC_HAVE_CMMSG is no define, i added it into configure.in and under m4/cmmsg.m4. On linux no errors. Also, can you find the definition of struct msghdr in sys/socket.h, looks like Darwin has different fields there. Zoran Vasiljevic wrote: > > Am 02.11.2005 um 23:31 schrieb Vlad Seryakov: > >> What man sendmsg on Darwin says? >> If it does not support it, need to add Darwin-specific into aclocal >> and binder > > > Well, Also the AC_HAVE_CMMSG is not present... > > > This is what manpage says.. > > NAME > send, sendto, sendmsg -- send a message from a socket > > SYNOPSIS > #include <sys/types.h> > #include <sys/socket.h> > > ssize_t > send(int s, const void *msg, size_t len, int flags); > > ssize_t > sendto(int s, const void *msg, size_t len, int flags, > const struct sockaddr *to, socklen_t tolen); > > ssize_t > sendmsg(int s, const struct msghdr *msg, int flags); > > DESCRIPTION > Send(), sendto(), and sendmsg() are used to transmit a message to > another > socket. Send() may be used only when the socket is in a connected > state, > while sendto() and sendmsg() may be used at any time. > > The address of the target is given by to with tolen specifying its > size. > The length of the message is given by len. If the message is too > long to > pass atomically through the underlying protocol, the error > EMSGSIZE is > returned, and the message is not transmitted. > > No indication of failure to deliver is implicit in a send(). Locally > detected errors are indicated by a return value of -1. > > If no messages space is available at the socket to hold the > message to be > transmitted, then send() normally blocks, unless the socket has been > placed in non-blocking I/O mode. The select(2) call may be used to > determine when it is possible to send more data. > The flags parameter may include one or more of the following: > > #define MSG_OOB 0x1 /* process out-of-band data */ > #define MSG_DONTROUTE 0x4 /* bypass routing, use direct > interface */ > > The flag MSG_OOB is used to send ``out-of-band'' data on sockets that > support this notion (e.g. SOCK_STREAM); the underlying protocol must > also support ``out-of-band'' data. MSG_DONTROUTE is usually used > only by > diagnostic or routing programs. > > See recv(2) for a description of the msghdr structure. > > RETURN VALUES > The call returns the number of characters sent, or -1 if an error > occurred. > > ERRORS > Send(), sendto(), and sendmsg() fail if: > > [EBADF] An invalid descriptor was specified. > > [ENOTSOCK] The argument s is not a socket. > > [EFAULT] An invalid user space address was specified for a > parameter. > > [EMSGSIZE] The socket requires that message be sent > atomically, > and the size of the message to be sent made this > impossible. > > [EAGAIN] The socket is marked non-blocking and the > requested > operation would block. > > [ENOBUFS] The system was unable to allocate an internal > buffer. > The operation may succeed when buffers become > avail- > able. > > [ENOBUFS] The output queue for a network interface was full. > This generally indicates that the interface has > stopped sending, but may be caused by transient > con- > gestion. > > > [EACCES] The SO_BROADCAST option is not set on the > socket, and > a broadcast address was given as the destination. > > [EHOSTUNREACH] The destination address specified an > unreachable host. > > SEE ALSO > fcntl(2), recv(2), select(2), getsockopt(2), socket(2), write(2) > > HISTORY > The send() function call appeared in 4.2BSD. > > 4.2 Berkeley Distribution February 21, 1994 4.2 Berkeley > Distribution > > > > > > ------------------------------------------------------- > SF.Net email is sponsored by: > Tame your development challenges with Apache's Geronimo App Server. > Download > it for free - -and be entered to win a 42" plasma tv or your very own > Sony(tm)PSP. Click here to play: http://sourceforge.net/geronimo.php > _______________________________________________ > naviserver-devel mailing list > nav...@li... > https://lists.sourceforge.net/lists/listinfo/naviserver-devel -- Vlad Seryakov 571 262-8608 office vl...@cr... http://www.crystalballinc.com/vlad/ |