X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=net.c;h=601396477c66715e21bc222d69c0d7e0b1aa9f92;hp=674b8c646aa8300419e138c22724c651c6271b93;hb=3e3c069366dbb2bf8f157ad0a406bda67dd51783;hpb=0018d755c4a834704217464879bfd699d077664b diff --git a/net.c b/net.c index 674b8c64..60139647 100644 --- a/net.c +++ b/net.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2005-2007 Andre Noll + * Copyright (C) 2005-2008 Andre Noll * * Licensed under the GPL v2. For licencing details see COPYING. */ @@ -147,10 +147,11 @@ int makesock(unsigned l3type, unsigned l4type, int passive, { struct addrinfo *local = NULL, *src, *remote = NULL, *dst, hints; - char *port = make_message("%u", port_number); int rc, on = 1, sockfd = -1, socktype = sock_type(l4type); + char port[6]; /* port number has at most 5 digits */ + sprintf(port, "%u", port_number); /* Set up address hint structure */ memset(&hints, 0, sizeof(hints)); hints.ai_family = l3type; @@ -171,7 +172,7 @@ int makesock(unsigned l3type, unsigned l4type, int passive, if ((rc = getaddrinfo(host, port, &hints, passive ? &local : &remote))) { PARA_ERROR_LOG("can not resolve %s address %s#%s: %s.\n", layer4_name(l4type), - host? : (passive? "[loopback]" : "[localhost]"), + host? host : (passive? "[loopback]" : "[localhost]"), port, gai_strerror(rc)); return -E_ADDRESS_LOOKUP; } @@ -225,7 +226,7 @@ get_next_src: if (src == NULL && dst == NULL) { PARA_ERROR_LOG("can not create %s socket %s#%s.\n", - layer4_name(l4type), host? : (passive? + layer4_name(l4type), host? host : (passive? "[loopback]" : "[localhost]"), port); return -ERRNO_TO_PARA_ERROR(errno); } @@ -361,7 +362,7 @@ static int sendall(int fd, const char *buf, size_t *len) assert(total); *len = 0; while (*len < total) { - int ret = send(fd, buf + *len, total - *len, 0); + int ret = write(fd, buf + *len, total - *len); if (ret == -1) return -ERRNO_TO_PARA_ERROR(errno); *len += ret; @@ -388,7 +389,7 @@ int send_bin_buffer(int fd, const char *buf, size_t len) crypt_function *cf = NULL; if (!len) - PARA_CRIT_LOG("%s", "len == 0\n"); + PARA_CRIT_LOG("len == 0\n"); if (fd + 1 <= cda_size) cf = crypt_data_array[fd].send; if (cf) {