Exemple #1
0
static ssize_t default_sendmsg(int sockfd, const struct msghdr *msg, int flags)
{
	init_write();

	if (real_sendmsg == default_sendmsg) {
		debug("Failed to resolve 'sendmsg', returning EINVAL\n");
		errno = EINVAL;
		return -1;
	}

	return real_sendmsg(sockfd, msg, flags);
}
Exemple #2
0
ssize_t sendmsg(int sockfd, const struct msghdr * msg, int flags)
{
	ssize_t rc = real_sendmsg(sockfd, msg, flags);
	int count = msg->msg_iovlen;

	if (msg) {
		while (count) {
			count--;
			memset(msg->msg_iov[count].iov_base, 0,
			       msg->msg_iov[count].iov_len);
		}
	}

	return rc;

}
ssize_t
sendmsg(int s, const struct msghdr *msg, int flags) 
{
  ssize_t retval;

  print_trace ("%*ssendmsg(%d, %p, %d)=...\n", indent, "",
	       s, msg, flags);
  indent+=2;

  /* call the real sendmsg function */
  retval = real_sendmsg (s, msg, flags);

  indent-=2;
  print_trace ("%*ssendmsg(%d, %p, %d)=%d\n", indent, "", 
	       s, msg, flags, retval);

  return retval;
}