* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
-#define _GNU_SOURCE
#define _LGPL_SOURCE
#include <assert.h>
#include <limits.h>
do {
len_last = iov[0].iov_len;
- ret = recvmsg(sock, &msg, MSG_NOSIGNAL);
+ ret = lttng_recvmsg_nosigpipe(sock, &msg);
if (ret > 0) {
iov[0].iov_base += ret;
iov[0].iov_len -= ret;
* Return the size of sent data.
*/
LTTNG_HIDDEN
-ssize_t lttcomm_send_unix_sock(int sock, void *buf, size_t len)
+ssize_t lttcomm_send_unix_sock(int sock, const void *buf, size_t len)
{
struct msghdr msg;
struct iovec iov[1];
memset(&msg, 0, sizeof(msg));
- iov[0].iov_base = buf;
+ iov[0].iov_base = (void *) buf;
iov[0].iov_len = len;
msg.msg_iov = iov;
msg.msg_iovlen = 1;
}
memcpy(creds, CMSG_DATA(cmptr), sizeof_cred);
-#elif (defined(__FreeBSD__) || defined(__CYGWIN__))
+#elif (defined(__FreeBSD__) || defined(__CYGWIN__) || defined(__sun__))
{
int peer_ret;
}
return ret;
}
-#elif (defined(__FreeBSD__) || defined(__CYGWIN__))
+#elif (defined(__FreeBSD__) || defined(__CYGWIN__) || defined(__sun__))
LTTNG_HIDDEN
int lttcomm_setsockopt_creds_unix_sock(int sock)
{