compat.c revision eddd9bf1a1369aea4a2715f6be1137da6d17d293
/* Copyright (c) 2002-2007 Dovecot authors, see the included COPYING file */
#include "config.h"
/* Linux needs the _XOPEN_SOURCE define, but others don't. It needs to be
#ifdef PREAD_WRAPPERS
#endif
#define IN_COMPAT_C
#include "lib.h"
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <unistd.h>
#include <syslog.h>
#ifndef INADDR_NONE
# define INADDR_NONE INADDR_BROADCAST
#endif
#if !defined (HAVE_STRCASECMP) && !defined (HAVE_STRICMP)
{
}
}
{
}
}
#endif
#ifndef HAVE_INET_ATON
{
if (addr == INADDR_NONE)
return 0;
return 1;
}
#endif
#ifndef HAVE_VSYSLOG
{
);
}
#endif
#ifndef HAVE_GETPAGESIZE
int my_getpagesize(void)
{
#ifdef _SC_PAGESIZE
return sysconf(_SC_PAGESIZE);
#else
# ifdef __GNUC__
# endif
return 4096;
#endif
}
#endif
#ifndef HAVE_WRITEV
{
int i;
written = 0;
if (ret < 0)
return -1;
break;
}
if (written > SSIZE_T_MAX) {
return -1;
}
}
#endif
#ifndef HAVE_PREAD
{
if (old_offset == -1)
return -1;
return -1;
if (ret < 0)
return -1;
return -1;
return ret;
}
{
if (old_offset == -1)
return -1;
return -1;
if (ret < 0)
return -1;
return -1;
return ret;
}
#endif
#ifdef PREAD_WRAPPERS
{
}
{
}
#endif
#ifndef HAVE_SETEUID
{
#ifdef HAVE_SETREUID
/* HP-UX at least doesn't have seteuid() but has setreuid() */
#else
#endif
}
#endif
#ifndef HAVE_SETEGID
{
#ifdef HAVE_SETRESGID
/* HP-UX at least doesn't have setegid() but has setresgid() */
#else
#endif
}
#endif
#ifndef HAVE_LIBGEN_H
char *my_basename(char *path)
{
char *p;
/* note that this isn't POSIX-compliant basename() replacement.
too much trouble without any gain. */
}
#endif
#ifndef HAVE_STRTOULL
{
#ifdef HAVE_STRTOUQ
#else
unsigned long ret = 0;
/* we support only base-10 in our fallback implementation.. */
break;
}
return ret;
#endif
}
#endif