X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/d5b80e59458182b2d557a929a18cb8c70cd56b68..ea19ad2276a93548c8a799b1466fd7996c48be04:/src/src/os.c diff --git a/src/src/os.c b/src/src/os.c index 6eadc38b1..ae9c6043c 100644 --- a/src/src/os.c +++ b/src/src/os.c @@ -2,7 +2,7 @@ * Exim - an Internet mail transport agent * *************************************************/ -/* Copyright (c) University of Cambridge 1995 - 2016 */ +/* Copyright (c) University of Cambridge 1995 - 2018 */ /* See the file NOTICE for conditions of use and distribution. */ #ifdef STAND_ALONE @@ -493,8 +493,7 @@ if (getifaddrs(&ifalist) != 0) log_write(0, LOG_PANIC_DIE, "Unable to call getifaddrs: %d %s", errno, strerror(errno)); -struct ifaddrs *ifa; -for (ifa = ifalist; ifa != NULL; ifa = ifa->ifa_next) +for (struct ifaddrs * ifa = ifalist; ifa; ifa = ifa->ifa_next) { if (ifa->ifa_addr->sa_family != AF_INET #if HAVE_IPV6 @@ -509,7 +508,7 @@ for (ifa = ifalist; ifa != NULL; ifa = ifa->ifa_next) /* Create a data block for the address, fill in the data, and put it on the chain. */ - next = store_get(sizeof(ip_address_item)); + next = store_get(sizeof(ip_address_item), FALSE); next->next = NULL; next->port = 0; (void)host_ntoa(-1, ifa->ifa_addr, next->address, NULL); @@ -617,7 +616,6 @@ int vs; ip_address_item *yield = NULL; ip_address_item *last = NULL; ip_address_item *next; -char *cp; char buf[MAX_INTERFACES*sizeof(struct V_ifreq)]; struct sockaddr *addrp; size_t len = 0; @@ -683,7 +681,7 @@ buffer is not guaranteed to be aligned. Thus, we must first copy the basic struct to some aligned memory before looking at the field in the fixed part to find its length, and then recopy the correct length. */ -for (cp = buf; cp < buf + ifc.V_ifc_len; cp += len) +for (char * cp = buf; cp < buf + ifc.V_ifc_len; cp += len) { memcpy(CS &ifreq, cp, sizeof(ifreq)); @@ -745,7 +743,7 @@ for (cp = buf; cp < buf + ifc.V_ifc_len; cp += len) /* Create a data block for the address, fill in the data, and put it on the chain. */ - next = store_get(sizeof(ip_address_item)); + next = store_get(sizeof(ip_address_item), FALSE); next->next = NULL; next->port = 0; (void)host_ntoa(-1, addrp, next->address, NULL); @@ -777,13 +775,13 @@ interfaces. We just return the loopback address(es). */ ip_address_item * os_common_find_running_interfaces(void) { -ip_address_item *yield = store_get(sizeof(address_item)); +ip_address_item *yield = store_get(sizeof(address_item), FALSE); yield->address = US"127.0.0.1"; yield->port = 0; yield->next = NULL; #if HAVE_IPV6 -yield->next = store_get(sizeof(address_item)); +yield->next = store_get(sizeof(address_item), FALSE); yield->next->address = US"::1"; yield->next->port = 0; yield->next->next = NULL; @@ -833,7 +831,7 @@ return type. res_state os_get_dns_resolver_res(void) { - return &_res; +return &_res; } #endif /* OS_GET_DNS_RESOLVER_RES */ @@ -922,7 +920,7 @@ int rc; printf("Testing restarting signal; wait for handler message, then type a line\n"); strcpy(buffer, "*** default ***\n"); os_restarting_signal(SIGALRM, sigalrm_handler); -alarm(2); +ALARM(2); if ((rc = read(fd, buffer, sizeof(buffer))) < 0) printf("No data read\n"); else @@ -930,12 +928,12 @@ else buffer[rc] = 0; printf("Read: %s", buffer); } -alarm(0); +ALARM_CLR(0); printf("Testing non-restarting signal; should read no data after handler message\n"); strcpy(buffer, "*** default ***\n"); os_non_restarting_signal(SIGALRM, sigalrm_handler); -alarm(2); +ALARM(2); if ((rc = read(fd, buffer, sizeof(buffer))) < 0) printf("No data read\n"); else @@ -943,7 +941,7 @@ else buffer[rc] = 0; printf("Read: %s", buffer); } -alarm(0); +ALARM_CLR(0); printf("Testing load averages (last test - ^C to kill)\n"); for (;;)