msg->msg_flags = (int)wsamsg.dwFlags;
// all flags that fit into dwFlags also fit into msg_flags (see above)
- catta_log_debug("recvmsg: %u bytes received", (unsigned int)bytesrcvd);
return bytesrcvd;
}
return -1;
}
- // XXX debug, remove
- {
- char where[64];
- struct sockaddr *sa = msg->msg_name;
-
- if(sa->sa_family == AF_INET)
- inet_ntop(sa->sa_family, &((struct sockaddr_in *)sa)->sin_addr, where, sizeof(where));
- else
- inet_ntop(sa->sa_family, &((struct sockaddr_in6 *)sa)->sin6_addr, where, sizeof(where));
- catta_log_debug("sendmsg: %u bytes to %s", (unsigned int)bytessent, where);
- }
return bytessent;
}
int ioctl(int d, unsigned long request, int *p)
{
- u_long arg = 0;
+ u_long arg = *p;
if(ioctlsocket(d, request, &arg) == SOCKET_ERROR) {
errno = wsa_errno();
int pipe(int pipefd[2])
{
- int lsock = INVALID_SOCKET;
+ int lsock = (int)INVALID_SOCKET;
struct sockaddr_in laddr;
socklen_t laddrlen = sizeof(laddr);
- pipefd[0] = pipefd[1] = INVALID_SOCKET;
+ pipefd[0] = pipefd[1] = (int)INVALID_SOCKET;
// bind a listening socket to a TCP port on localhost
laddr.sin_family = AF_INET;
strncpy(buf->version, "unknown", sizeof(buf->sysname)-1); // we don't need it
// computer (node) name
- if(GetComputerName(buf->nodename, sizeof(buf->nodename)-1) == 0) {
+ DWORD nodename_size = sizeof(buf->nodename)-1;
+ if(GetComputerName(buf->nodename, &nodename_size) == 0) {
errno = EFAULT;
return -1;
}