You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
136 lines
3.5 KiB
136 lines
3.5 KiB
Index: makeconfig |
|
--- makeconfig.orig 2005-06-10 09:21:48 +0200 |
|
+++ makeconfig 2006-10-30 11:31:20 +0100 |
|
@@ -74,8 +74,8 @@ |
|
LINK=${LINK:-$CC} |
|
|
|
cd develop |
|
-rm -f config.cache |
|
./configure \ |
|
+ --cache-file=./config.cache \ |
|
--libexecdir=$SERVERDIR \ |
|
--bindir=$BINDIR \ |
|
--mandir=$MANDIR \ |
|
@@ -99,7 +99,7 @@ |
|
*next*) SYSTEM=NEXT;; |
|
*convex*) SYSTEM=CONVEXOS;; |
|
*osf*) SYSTEM=OSF1;; |
|
- *bsd*) SYSTEM=BSD;; |
|
+ *bsd*) SYSTEM=XBSD;; |
|
*darwin*) SYSTEM=DARWIN;; |
|
*) SYSTEM=UNKNOWN;; |
|
# *) SYSTEM=`uname -a | tr '[a-z]' '[A-Z]'` |
|
@@ -198,11 +198,11 @@ |
|
#define __EXTENSIONS__ |
|
#endif |
|
|
|
-#if defined(LINUX) || defined(BSD) |
|
+#if defined(LINUX) || defined(XBSD) |
|
#ifndef HAVE_STRERROR |
|
#define HAVE_STRERROR |
|
#endif |
|
- #ifndef _POSIX_SOURCE |
|
+ #if !defined(_POSIX_SOURCE) && !defined(__FreeBSD__) |
|
#define _POSIX_SOURCE |
|
#endif |
|
#ifndef __USE_BSD |
|
Index: src/io.h |
|
--- src/io.h.orig 2005-06-06 23:14:16 +0200 |
|
+++ src/io.h 2006-10-30 11:29:20 +0100 |
|
@@ -34,6 +34,8 @@ |
|
#define O_LARGEFILE 0 |
|
#endif |
|
|
|
+#include <sys/types.h> |
|
+ |
|
/* read n bytes from network socket */ |
|
int readn(int, char *, int); |
|
|
|
Index: src/sendfiled.c |
|
--- src/sendfiled.c.orig 2005-06-10 09:24:13 +0200 |
|
+++ src/sendfiled.c 2006-10-30 11:29:20 +0100 |
|
@@ -199,6 +199,10 @@ |
|
#include "address.h" /* address routines */ |
|
#include "lock.h" /* file locking */ |
|
|
|
+#ifndef O_LARGEFILE |
|
+#define O_LARGEFILE 0 |
|
+#endif |
|
+ |
|
#if defined(HAVE_GETOPT_H) |
|
#include <getopt.h> |
|
#else |
|
@@ -233,7 +237,7 @@ |
|
#elif defined(HAVE_SYS_STATVFS_H) |
|
#include <sys/statvfs.h> |
|
#define statfs statvfs |
|
-#elif defined(BSD) || defined(ULTRIX) |
|
+#elif defined(XBSD) || defined(ULTRIX) |
|
#include <sys/param.h> |
|
#include <sys/mount.h> |
|
#else |
|
@@ -265,13 +269,13 @@ |
|
int statfs(char *, struct statfs *); |
|
#endif |
|
|
|
-#ifdef BSD |
|
+#ifdef XBSD |
|
#ifndef O_SYNC |
|
#define O_SYNC O_FSYNC |
|
#endif |
|
#endif |
|
|
|
-#if defined(HPUX) || defined(BSD) |
|
+#if defined(HPUX) || defined(XBSD) |
|
#define seteuid(a) setuid(a) |
|
#define setegid(a) setgid(a) |
|
#endif |
|
@@ -2581,7 +2585,7 @@ |
|
/* scan through utmp (currently logged in users) */ |
|
while (read(utmpfd,(char *)&uinfo,sizeof(uinfo))>0) { |
|
|
|
-#if defined(NEXT) || defined(BSD) || defined(ULTRIX) || defined(SOLARIS1) |
|
+#if defined(NEXT) || defined(XBSD) || defined(ULTRIX) || defined(SOLARIS1) |
|
strncpy(user,uinfo.ut_name,8); |
|
if (str_eq(recipient,user)) { |
|
|
|
@@ -4168,11 +4172,13 @@ |
|
* RETURN: nothing, but terminates program on error |
|
*/ |
|
void setreugid() { |
|
+ if (rgid != getegid()) |
|
if (rgid && setegid(rgid)<0) { |
|
printf("490 Internal error on setegid(%u): %s\r\n", |
|
(unsigned int)rgid,strerror(errno)); |
|
exit(1); |
|
} |
|
+ if (ruid != geteuid()) |
|
if (ruid && seteuid(ruid)<0) { |
|
printf("490 Internal error on seteuid(%u): %s\r\n", |
|
(unsigned int)ruid,strerror(errno)); |
|
Index: src/spool.c |
|
--- src/spool.c.orig 2005-06-06 23:14:16 +0200 |
|
+++ src/spool.c 2006-10-30 11:29:20 +0100 |
|
@@ -64,6 +64,10 @@ |
|
#include "string.h" /* extended string functions */ |
|
#include "reply.h" /* the 3 digit reply codes with text messages */ |
|
|
|
+#ifndef O_LARGEFILE |
|
+#define O_LARGEFILE 0 |
|
+#endif |
|
+ |
|
|
|
/* |
|
* scanspool - scan through spool directory, build list-structures and |
|
Index: src/string.c |
|
--- src/string.c.orig 2005-06-06 23:14:16 +0200 |
|
+++ src/string.c 2006-10-30 11:29:20 +0100 |
|
@@ -358,7 +358,7 @@ |
|
* RETURN: string - string of the error number |
|
*/ |
|
char *strerror(int errornumber) { |
|
-#if __GLIBC__ < 2 && !defined(BSD) |
|
+#if __GLIBC__ < 2 && !defined(XBSD) |
|
extern int sys_nerr; |
|
extern char *sys_errlist[]; |
|
#endif
|
|
|