/* this is a duplicate of the function that is also used in libcurl */
*val = curlx_strtoofft(str, NULL, 0);
- if ((*val == LLONG_MAX || *val == LLONG_MIN) && errno == ERANGE)
+ if ((*val == LLONG_MAX || *val == LLONG_MIN) && ERRNO == ERANGE)
return 1;
#else
*val = strtol(str, NULL, 0);
- if ((*val == LONG_MIN || *val == LONG_MAX) && errno == ERANGE)
+ if ((*val == LONG_MIN || *val == LONG_MAX) && ERRNO == ERANGE)
return 1;
#endif
return 0;
char *outdup;
char *dirbuildup;
int result=0;
+ int error;
outdup = strdup(outfile);
dirbuildup = malloc(sizeof(char) * strlen(outfile));
if (access(dirbuildup, F_OK) == -1) {
result = mkdir(dirbuildup,(mode_t)0000750);
if (-1 == result) {
- switch (errno) {
+ error = ERRNO;
+ switch (error) {
#ifdef EACCES
case EACCES:
fprintf(stderr,"You don't have permission to create %s.\n",
static struct rlimit num_open;
static char msgbuff[256];
-/*
- * our_errno() returns the NOT *socket-related* errno (or equivalent)
- * on this platform to hide platform specific for the calling function.
- */
-
-static int our_errno(void)
-{
-#ifdef WIN32
- return (int)GetLastError();
-#else
- return errno;
-#endif
-}
-
static void store_errmsg(const char *msg, int err)
{
if (!err)
/* get initial open file limits */
if (getrlimit(RLIMIT_NOFILE, &rl) != 0) {
- store_errmsg("getrlimit() failed", our_errno());
+ store_errmsg("getrlimit() failed", ERRNO);
fprintf(stderr, "%s\n", msgbuff);
return -1;
}
fprintf(stderr, "raising soft limit up to hard limit\n");
rl.rlim_cur = rl.rlim_max;
if (setrlimit(RLIMIT_NOFILE, &rl) != 0) {
- store_errmsg("setrlimit() failed", our_errno());
+ store_errmsg("setrlimit() failed", ERRNO);
fprintf(stderr, "%s\n", msgbuff);
return -2;
}
/* get current open file limits */
if (getrlimit(RLIMIT_NOFILE, &rl) != 0) {
- store_errmsg("getrlimit() failed", our_errno());
+ store_errmsg("getrlimit() failed", ERRNO);
fprintf(stderr, "%s\n", msgbuff);
return -3;
}
}
} while (nitems && !memchunk);
if (!memchunk) {
- store_errmsg("memchunk, malloc() failed", our_errno());
+ store_errmsg("memchunk, malloc() failed", ERRNO);
fprintf(stderr, "%s\n", msgbuff);
return -5;
}
fd = malloc(sizeof(*fd) * (size_t)(num_open.rlim_max));
if (!fd) {
- store_errmsg("fd, malloc() failed", our_errno());
+ store_errmsg("fd, malloc() failed", ERRNO);
fprintf(stderr, "%s\n", msgbuff);
free(memchunk);
return -7;
fd[0] = open(DEV_NULL, O_RDONLY);
if (fd[0] < 0) {
sprintf(strbuff, "opening of %s failed", DEV_NULL);
- store_errmsg(strbuff, our_errno());
+ store_errmsg(strbuff, ERRNO);
fprintf(stderr, "%s\n", msgbuff);
free(fd);
fd = NULL;
static struct rlimit num_open;
static char msgbuff[256];
-/*
- * our_errno() returns the NOT *socket-related* errno (or equivalent)
- * on this platform to hide platform specific for the calling function.
- */
-
-static int our_errno(void)
-{
-#ifdef WIN32
- return (int)GetLastError();
-#else
- return errno;
-#endif
-}
-
static void store_errmsg(const char *msg, int err)
{
if (!err)
/* get initial open file limits */
if (getrlimit(RLIMIT_NOFILE, &rl) != 0) {
- store_errmsg("getrlimit() failed", our_errno());
+ store_errmsg("getrlimit() failed", ERRNO);
fprintf(stderr, "%s\n", msgbuff);
return -1;
}
fprintf(stderr, "raising soft limit up to hard limit\n");
rl.rlim_cur = rl.rlim_max;
if (setrlimit(RLIMIT_NOFILE, &rl) != 0) {
- store_errmsg("setrlimit() failed", our_errno());
+ store_errmsg("setrlimit() failed", ERRNO);
fprintf(stderr, "%s\n", msgbuff);
return -2;
}
/* get current open file limits */
if (getrlimit(RLIMIT_NOFILE, &rl) != 0) {
- store_errmsg("getrlimit() failed", our_errno());
+ store_errmsg("getrlimit() failed", ERRNO);
fprintf(stderr, "%s\n", msgbuff);
return -3;
}
}
} while (nitems && !memchunk);
if (!memchunk) {
- store_errmsg("memchunk, malloc() failed", our_errno());
+ store_errmsg("memchunk, malloc() failed", ERRNO);
fprintf(stderr, "%s\n", msgbuff);
return -4;
}
}
} while (num_open.rlim_max && !fd);
if (!fd) {
- store_errmsg("fd, malloc() failed", our_errno());
+ store_errmsg("fd, malloc() failed", ERRNO);
fprintf(stderr, "%s\n", msgbuff);
free(memchunk);
return -6;
fd[0] = open(DEV_NULL, O_RDONLY);
if (fd[0] < 0) {
sprintf(strbuff, "opening of %s failed", DEV_NULL);
- store_errmsg(strbuff, our_errno());
+ store_errmsg(strbuff, ERRNO);
fprintf(stderr, "%s\n", msgbuff);
free(fd);
fd = NULL;
* $Id$
*/
-#ifdef HAVE_CONFIG_H
/* Now include the setup.h file from libcurl's private libdir (the source
version, but that might include "config.h" from the build dir so we need
both of them in the include path), so that we get good in-depth knowledge
about the system we're building this on */
#include "setup.h"
-#endif
#include <curl.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
+#include <errno.h>
#ifdef HAVE_SYS_SOCKET_H
#include <sys/socket.h>
do {
rc = select(maxfd + 1, &fds_read, &fds_write, &fds_err, &timeout);
- } while((rc == -1) && (our_sockerrno() == EINTR));
+ } while((rc == -1) && (SOCKERRNO == EINTR));
switch(rc) {
case -1:
/* start accepting connections */
rc = listen(sock, 4);
if(0 != rc) {
- logmsg("listen() failed with error: %d", errno);
+ logmsg("listen() failed with error: %d", SOCKERRNO);
sclose(sock);
return CURL_SOCKET_BAD;
}
sock = mksock(use_ipv6);
if (CURL_SOCKET_BAD == sock) {
- logmsg("Error opening socket: %d", errno);
+ logmsg("Error opening socket: %d", SOCKERRNO);
return 1;
}
do {
dump = fopen(REQUEST_DUMP, "ab");
- } while ((dump == NULL) && ((error = errno) == EINTR));
+ } while ((dump == NULL) && ((error = ERRNO) == EINTR));
if (dump == NULL) {
logmsg("Error opening file %s error: %d", REQUEST_DUMP, error);
logmsg("Failed to write request input to " REQUEST_DUMP);
1, (size_t)writeleft, dump);
if (written > 0)
writeleft -= written;
- } while ((writeleft > 0) && ((error = errno) == EINTR));
+ } while ((writeleft > 0) && ((error = ERRNO) == EINTR));
fclose(dump); /* close it ASAP */
ssize_t got = sread(sock, reqbuf + req->offset, REQBUFSIZ - req->offset);
if (got <= 0) {
if (got < 0) {
- logmsg("recv() returned error: %d", errno);
+ logmsg("recv() returned error: %d", SOCKERRNO);
return DOCNUMBER_INTERNAL;
}
logmsg("Connection closed by client");
#endif
if (CURL_SOCKET_BAD == sock) {
- logmsg("Error opening socket: %d", errno);
+ logmsg("Error opening socket: %d", SOCKERRNO);
return 1;
}
flag = 1;
if (0 != setsockopt(sock, SOL_SOCKET, SO_REUSEADDR,
(void *) &flag, sizeof(flag))) {
- logmsg("setsockopt(SO_REUSEADDR) failed: %d", errno);
+ logmsg("setsockopt(SO_REUSEADDR) failed: %d", SOCKERRNO);
sclose(sock);
return 1;
}
}
#endif /* ENABLE_IPV6 */
if(0 != rc) {
- logmsg("Error binding socket: %d", errno);
+ logmsg("Error binding socket: %d", SOCKERRNO);
sclose(sock);
return 1;
}
/* start accepting connections */
rc = listen(sock, 5);
if(0 != rc) {
- logmsg("listen() failed with error: %d", errno);
+ logmsg("listen() failed with error: %d", SOCKERRNO);
sclose(sock);
return 1;
}
msgsock = accept(sock, NULL, NULL);
if (CURL_SOCKET_BAD == msgsock) {
- printf("MAJOR ERROR: accept() failed with error: %d\n", errno);
+ printf("MAJOR ERROR: accept() failed with error: %d\n", SOCKERRNO);
break;
}
do {
size = readit(test, &dp, pf->f_convert);
if (size < 0) {
- nak(errno + 100);
+ nak(ERRNO + 100);
return;
}
dp->th_opcode = htons((u_short)DATA);
size = writeit(test, &dp, (int)(n - 4), pf->f_convert);
if (size != (n-4)) { /* ahem */
if (size < 0)
- nak(errno + 100);
+ nak(ERRNO + 100);
else
nak(ENOSPACE);
goto abort;
const struct in6_addr in6addr_any = {{ IN6ADDR_ANY_INIT }};
#endif
-/*
- * our_sockerrno() returns the *socket-related* errno (or equivalent) on this
- * platform to hide platform specific for the function that calls this.
- */
-int our_sockerrno(void)
-{
-#ifdef USE_WINSOCK
- return (int)WSAGetLastError();
-#else
- return errno;
-#endif
-}
-
/* someone else must set this properly */
extern const char *serverlogfile;
* $Id$
***************************************************************************/
-int our_sockerrno(void);
void logmsg(const char *msg, ...);
#ifndef FALSE