freebsd-ports/security/skip/files/patch-bu
2001-04-21 17:56:36 +00:00

213 lines
5.3 KiB
Plaintext

diff -ur --unidirectional-new-file skipsrc-1.0.orig/skip/freebsd/skip_os.h work.new/skip/freebsd/skip_os.h
--- skipsrc-1.0.orig/skip/freebsd/skip_os.h Fri Oct 25 13:12:43 1996
+++ work.new/skip/freebsd/skip_os.h Tue Feb 1 10:02:28 2000
@@ -51,10 +51,9 @@
/*
* FreeBSD
*/
-#ifndef KERNEL
+#if !defined(KERNEL) && !defined(_KERNEL)
#include <stdio.h>
#include <string.h>
-#include <strings.h>
#include <errno.h>
#include <fcntl.h>
#include <unistd.h>
@@ -69,6 +68,11 @@
#include <dirent.h>
#endif
+#if defined(KERNEL) || defined(_KERNEL)
+#include <sys/cdefs.h>
+#endif
+
+#include <sys/param.h>
#include <sys/types.h>
#include <sys/errno.h>
#include <sys/time.h>
@@ -78,15 +82,19 @@
#include <sys/stat.h>
#include <sys/socket.h>
#include <sys/syslog.h>
-#include <sys/param.h>
+#if defined(KERNEL) || defined(_KERNEL) || __FreeBSD_version < 410000
+#include <sys/socketvar.h>
+#endif
#include <sys/uio.h>
#include <sys/file.h>
#include <sys/sockio.h>
#include <sys/wait.h>
+#include <sys/fcntl.h>
#ifndef __cplusplus
#include <machine/cpu.h>
#include <net/if.h>
+#include <net/if_var.h>
#include <netinet/in_systm.h>
#endif
#include <netinet/in.h>
@@ -94,8 +102,9 @@
#include <netinet/ip.h>
#include <netinet/udp.h>
#include <netinet/in_var.h>
-#include <arpa/inet.h>
+#include <netinet/ip_var.h>
#endif
+#include <arpa/inet.h>
/*
* Basic required types and constants
@@ -108,34 +117,54 @@
#define B_FALSE 0
#endif
-#ifdef KERNEL
+#if defined(KERNEL) || defined(_KERNEL)
#include <sys/systm.h>
#include <sys/mbuf.h>
#include <sys/syslog.h>
#include <sys/conf.h>
#include <sys/sysent.h>
#include <sys/exec.h>
+#if __FreeBSD_version < 400004
#include <sys/lkm.h>
+#endif
+#include <sys/sysproto.h>
#include <sys/protosw.h>
#include <net/route.h>
#include <sys/kernel.h>
#include <sys/domain.h>
#include <net/netisr.h>
#include <sys/proc.h>
+#if __FreeBSD_version < 400012
#include <sys/device.h>
+#endif
+#include <sys/libkern.h>
+#include <sys/module.h>
+#include <sys/malloc.h>
+#include <sys/poll.h>
#define PANIC(s) panic(s)
/*
+ * SKIP malloc type
+ */
+MALLOC_DECLARE(M_SKIP);
+
+/*
* 4.x memory management macros
*/
-#define SYSMEM_ALLOC(size) malloc((u_long)size, M_PCB, M_NOWAIT)
-#define SYSMEM_FREE(m, n) free(m, M_PCB)
-#define BCOPY(s, d, n) bcopy((caddr_t) s, (caddr_t) d, n)
-#define BZERO(s, n) bzero((caddr_t) s, n)
-#define BCMP(s, d, n) bcmp((caddr_t) s, (caddr_t) d, n)
+#define SYSMEM_ALLOC(size) malloc((u_long)size, M_SKIP, M_NOWAIT)
+#define SYSMEM_FREE(m, n) free(m, M_SKIP)
#define STATIC static
+/*
+ * The kernel doesn't have memcpy() or memcmp(), but gcc will inline them
+ */
+#if defined(KERNEL) || defined(_KERNEL)
+extern int memcmp(const void *, const void *, size_t);
+#endif
+#define BCOPY(s, d, n) memcpy((caddr_t) (d), (caddr_t) (s), n)
+#define BCMP(s, d, n) memcmp((caddr_t) (d), (caddr_t) (s), n)
+#define BZERO(s, n) bzero((caddr_t) (s), n)
#define ALIGNED(x) (((unsigned int)(x)&(skip_alignment - 1)) == 0)
@@ -182,7 +211,7 @@
/*
* 4.x timing defines
*/
-#define SKIP_ES_CURRENTTIME (time.tv_sec)
+#define SKIP_ES_CURRENTTIME ((long)time_second)
#define SKIP_ES_DELTATIME(then) (SKIP_ES_CURRENTTIME - then)
/*
@@ -204,28 +233,7 @@
len = IPHLEN(ip); \
}
-/*
- * ANSI prototypes for system routines
- */
-extern int splimp();
-extern int splnet();
-extern void splx(int);
-extern void m_freem(struct mbuf *);
-extern void panic(const char *, ...);
-extern int tsleep(void *, int, char *, int);
-extern void wakeup(void *);
-extern int uiomove(caddr_t, int, struct uio *);
-extern int copyin(void *, void *, u_int );
-extern int copyout(void *, void *, u_int);
-extern int mclget(struct mbuf *);
-extern int m_cpytoc(struct mbuf *, int, int, caddr_t);
-
-extern void log(int, const char *, ...);
-
-extern char *strncpy(char *, const char *, size_t);
-
-extern void printf(const char *, ...);
-#else /* KERNEL */
+#else /* KERNEL || _KERNEL */
/*
* User space buffer management macros
@@ -251,37 +259,12 @@
#endif
#define STATIC
-/*
- * ANSI prototypes for C library routines and syscalls
- */
-extern int gethostname(char *, int);
-extern int fprintf(FILE *, const char *, ...);
-extern int fflush(FILE *);
-extern int fgetc(FILE *);
-extern int fseek(FILE *, long, int);
-extern size_t fread(void *, size_t, size_t, FILE *);
-extern int fclose(FILE *);
-extern int socket(int, int, int);
-extern int ioctl(int, int, ...);
-extern int pclose(FILE *);
-/*extern int getrlimit(int, struct rlimit *); */
-extern void perror(const char *);
-extern time_t time(time_t *);
-extern int getopt(int, char * const *, const char *);
-extern int sscanf(const char *, const char *, ...);
-
#endif /* KERNEL */
-/* XXX Bad IPPROTO_ENCAP define ? */
-#ifdef IPPROTO_ENCAP
-#undef IPPROTO_ENCAP
-#endif
-#define IPPROTO_ENCAP 4
-
/* SKIP specific */
-#define SKIP_DIR "/etc/skip/"
-#define SKIP_BIN "/usr/skip/bin"
+#define SKIP_DIR "@@PREFIX@@/etc/skip/"
+#define SKIP_BIN "@@PREFIX@@/bin"
#define KEYMGR "/dev/skip_key"
/*
@@ -306,12 +289,6 @@
/* General purpose */
typedef unsigned char byte;
-
-#if 0
-extern void bcopy(void *, void *, int);
-extern void bzero(void *, int);
-extern int bcmp(void *, void *, int);
-#endif
#define SKIP_IFCMP(if1, if2) strcmp(if1, if2)