[Midnightbsd-cvs] src: pf/net: __MidnightBSD__

laffer1 at midnightbsd.org laffer1 at midnightbsd.org
Sat Dec 13 14:43:40 EST 2008


Log Message:
-----------
__MidnightBSD__

Modified Files:
--------------
    src/sys/contrib/pf/net:
        pf_if.c (r1.2 -> r1.3)
        pf_ioctl.c (r1.3 -> r1.4)

-------------- next part --------------
Index: pf_ioctl.c
===================================================================
RCS file: /home/cvs/src/sys/contrib/pf/net/pf_ioctl.c,v
retrieving revision 1.3
retrieving revision 1.4
diff -L sys/contrib/pf/net/pf_ioctl.c -L sys/contrib/pf/net/pf_ioctl.c -u -r1.3 -r1.4
--- sys/contrib/pf/net/pf_ioctl.c
+++ sys/contrib/pf/net/pf_ioctl.c
@@ -35,7 +35,7 @@
  *
  */
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 #include "opt_inet.h"
 #include "opt_inet6.h"
 
@@ -43,7 +43,7 @@
 __FBSDID("$FreeBSD: src/sys/contrib/pf/net/pf_ioctl.c,v 1.28.2.1 2007/11/25 19:26:46 mlaier Exp $");
 #endif
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 #include "opt_bpf.h"
 #include "opt_pf.h"
 
@@ -81,7 +81,7 @@
 #include <sys/kernel.h>
 #include <sys/time.h>
 #include <sys/malloc.h>
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 #include <sys/module.h>
 #include <sys/conf.h>
 #include <sys/proc.h>
@@ -94,9 +94,11 @@
 #include <sys/malloc.h>
 #include <sys/kthread.h>
 #ifndef __FreeBSD__
+#ifndef __MidnightBSD__
 #include <sys/rwlock.h>
 #include <uvm/uvm_extern.h>
 #endif
+#endif
 
 #include <net/if.h>
 #include <net/if_types.h>
@@ -109,7 +111,7 @@
 #include <netinet/ip_var.h>
 #include <netinet/ip_icmp.h>
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 #include <sys/md5.h>
 #else
 #include <dev/rndvar.h>
@@ -132,14 +134,14 @@
 #include <altq/altq.h>
 #endif
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 #include <sys/limits.h>
 #include <sys/lock.h>
 #include <sys/mutex.h>
 #include <net/pfil.h>
 #endif /* __FreeBSD__ */
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 void			 init_zone_var(void);
 void			 cleanup_pf_zone(void);
 int			 pfattach(void);
@@ -154,7 +156,7 @@
 
 void			 pf_mv_pool(struct pf_palist *, struct pf_palist *);
 void			 pf_empty_pool(struct pf_palist *);
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 int			 pfioctl(struct cdev *, u_long, caddr_t, int, struct thread *);
 #else
 int			 pfioctl(struct cdev *, u_long, caddr_t, int, struct proc *);
@@ -174,7 +176,7 @@
 int			 pf_commit_rules(u_int32_t, int, char *);
 
 struct pf_rule		 pf_default_rule;
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 struct sx		 pf_consistency_lock;
 SX_SYSINIT(pf_consistency_lock, &pf_consistency_lock, "pf_statetbl_lock");
 #else
@@ -201,7 +203,7 @@
 #define DPFPRINTF(n, x) if (pf_status.debug >= (n)) printf x
 
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 static struct cdev	*pf_dev;
 
 /*
@@ -716,7 +718,7 @@
 int
 pf_rtlabel_add(struct pf_addr_wrap *a)
 {
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 	/* XXX_IMPORT: later */
 	return (0);
 #else
@@ -730,7 +732,7 @@
 void
 pf_rtlabel_remove(struct pf_addr_wrap *a)
 {
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 	/* XXX_IMPORT: later */
 #else
 	if (a->type == PF_ADDR_RTLABEL)
@@ -741,7 +743,7 @@
 void
 pf_rtlabel_copyout(struct pf_addr_wrap *a)
 {
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 	/* XXX_IMPORT: later */
 	if (a->type == PF_ADDR_RTLABEL && a->v.rtlabel)
 		strlcpy(a->v.rtlabelname, "?", sizeof(a->v.rtlabelname));
@@ -895,11 +897,11 @@
 		tb.rate = altq->ifbandwidth;
 		tb.depth = altq->tbrsize;
 		s = splnet();
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_UNLOCK();
 #endif
 		error = tbr_set(&ifp->if_snd, &tb);
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_LOCK();
 #endif
 		splx(s);
@@ -931,11 +933,11 @@
 		/* clear tokenbucket regulator */
 		tb.rate = 0;
 		s = splnet();
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_UNLOCK();
 #endif
 		error = tbr_set(&ifp->if_snd, &tb);
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_LOCK();
 #endif
 		splx(s);
@@ -1166,7 +1168,7 @@
 }
 
 int
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 pfioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flags, struct thread *td)
 #else
 pfioctl(dev_t dev, u_long cmd, caddr_t addr, int flags, struct proc *p)
@@ -1175,12 +1177,14 @@
 	struct pf_pooladdr	*pa = NULL;
 	struct pf_pool		*pool = NULL;
 #ifndef __FreeBSD__
+#ifndef __MidnightBSD__
 	int			 s;
 #endif
+#endif
 	int			 error = 0;
 
 	/* XXX keep in sync with switch() below */
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 	if (securelevel_gt(td->td_ucred, 2))
 #else
 	if (securelevel > 1)
@@ -1220,7 +1224,7 @@
 		case DIOCGETSRCNODES:
 		case DIOCCLRSRCNODES:
 		case DIOCIGETIFACES:
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		case DIOCGIFSPEED:
 #endif
 		case DIOCSETIFFLAG:
@@ -1262,7 +1266,7 @@
 		case DIOCOSFPGET:
 		case DIOCGETSRCNODES:
 		case DIOCIGETIFACES:
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		case DIOCGIFSPEED:
 #endif
 			break;
@@ -1290,7 +1294,7 @@
 		}
 
 	if (flags & FWRITE)
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		sx_xlock(&pf_consistency_lock);
 	else
 		sx_slock(&pf_consistency_lock);
@@ -1300,7 +1304,7 @@
 		rw_enter_read(&pf_consistency_lock);
 #endif
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 	PF_LOCK();
 #else
 	s = splsoftnet();
@@ -1311,7 +1315,7 @@
 		if (pf_status.running)
 			error = EEXIST;
 		else {
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 			PF_UNLOCK();
 			error = hook_pf();
 			PF_LOCK();
@@ -1336,7 +1340,7 @@
 			error = ENOENT;
 		else {
 			pf_status.running = 0;
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 			PF_UNLOCK();
 			error = dehook_pf();
 			PF_LOCK();
@@ -1374,7 +1378,7 @@
 			break;
 		}
 		if (pr->ticket != ruleset->rules[rs_num].inactive.ticket) {
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 			DPFPRINTF(PF_DEBUG_MISC,
 			    ("ticket: %d != [%d]%d\n", pr->ticket, rs_num,
 			    ruleset->rules[rs_num].inactive.ticket));
@@ -1383,7 +1387,7 @@
 			break;
 		}
 		if (pr->pool_ticket != ticket_pabuf) {
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 			DPFPRINTF(PF_DEBUG_MISC,
 			    ("pool_ticket: %d != %d\n", pr->pool_ticket,
 			    ticket_pabuf));
@@ -1397,7 +1401,7 @@
 			break;
 		}
 		bcopy(&pr->rule, rule, sizeof(struct pf_rule));
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		rule->cuid = td->td_ucred->cr_ruid;
 		rule->cpid = td->td_proc ? td->td_proc->p_pid : 0;
 #else
@@ -1441,7 +1445,7 @@
 			pfi_kif_ref(rule->kif, PFI_KIF_REF_RULE);
 		}
 
-#ifdef __FreeBSD__ /* ROUTEING */
+#if defined(__FreeBSD__) || defined(__MidnightBSD__) /* ROUTING */
 		if (rule->rtableid > 0)
 #else
 		if (rule->rtableid > 0 && !rtable_exists(rule->rtableid))
@@ -1471,7 +1475,7 @@
 		if (rule->rt && !rule->direction)
 			error = EINVAL;
 #if NPFLOG > 0
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		if (!rule->log)
 			rule->logif = 0;
 #endif
@@ -1516,7 +1520,7 @@
 			break;
 		}
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		if (!debug_pfugidhack && (rule->uid.op || rule->gid.op ||
 		    rule->log & PF_LOG_SOCKET_LOOKUP)) {
 			DPFPRINTF(PF_DEBUG_MISC,
@@ -1667,7 +1671,7 @@
 				break;
 			}
 			bcopy(&pcr->rule, newrule, sizeof(struct pf_rule));
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 			newrule->cuid = td->td_ucred->cr_ruid;
 			newrule->cpid = td->td_proc ? td->td_proc->p_pid : 0;
 #else
@@ -1704,7 +1708,7 @@
 				newrule->kif = NULL;
 
 			if (newrule->rtableid > 0 &&
-#ifdef __FreeBSD__ /* ROUTING */
+#if defined(__FreeBSD__) || defined(__MidnightBSD__) /* ROUTING */
 			    1)
 #else
 			    !rtable_exists(newrule->rtableid))
@@ -1735,7 +1739,7 @@
 					error = EBUSY;
 			if (newrule->rt && !newrule->direction)
 				error = EINVAL;
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 #if NPFLOG > 0
 			if (!newrule->log)
 				newrule->logif = 0;
@@ -1784,7 +1788,7 @@
 				break;
 			}
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 			if (!debug_pfugidhack && (newrule->uid.op ||
 			    newrule->gid.op ||
 			    newrule->log & PF_LOG_SOCKET_LOOKUP)) {
@@ -2015,11 +2019,11 @@
 			break;
 		}
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_UNLOCK();
 #endif
 		pstore = malloc(sizeof(*pstore), M_TEMP, M_WAITOK);
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_LOCK();
 #endif
 
@@ -2048,7 +2052,7 @@
 					pstore->expire -= secs;
 				else
 					pstore->expire = 0;
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 				PF_COPYOUT(pstore, p, sizeof(*p), error);
 #else
 				error = copyout(pstore, p, sizeof(*p));
@@ -2211,7 +2215,7 @@
 			error = EINVAL;
 			goto fail;
 		}
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		uma_zone_set_max(pf_pool_limits[pl->index].pp, pl->limit);
 #else
 		if (pool_sethardlimit(pf_pool_limits[pl->index].pp,
@@ -2247,7 +2251,7 @@
 		break;
 	}
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 	case DIOCGIFSPEED: {
 		struct pf_ifspeed	*psp = (struct pf_ifspeed *)addr;
 		struct pf_ifspeed	ps;
@@ -2336,11 +2340,11 @@
 			}
 		}
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_UNLOCK();
 #endif		
 		error = altq_add(altq);
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_LOCK();
 #endif
 		if (error) {
@@ -2413,11 +2417,11 @@
 			error = EBUSY;
 			break;
 		}
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_UNLOCK();
 #endif
 		error = altq_getqstats(altq, pq->buf, &nbytes);
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_LOCK();
 #endif
 		if (error == 0) {
@@ -2918,18 +2922,18 @@
 			error = ENODEV;
 			goto fail;
 		}
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_UNLOCK();
 #endif
 		ioe = (struct pfioc_trans_e *)malloc(sizeof(*ioe),
 		    M_TEMP, M_WAITOK);
 		table = (struct pfr_table *)malloc(sizeof(*table),
 		    M_TEMP, M_WAITOK);
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_LOCK();
 #endif
 		for (i = 0; i < io->size; i++) {
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 			PF_COPYIN(io->array+i, ioe, sizeof(*ioe), error);
 			if (error) {
 #else
@@ -2976,7 +2980,7 @@
 				}
 				break;
 			}
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 			PF_COPYOUT(ioe, io->array+i, sizeof(io->array[i]),
 			    error);
 			if (error) {
@@ -3004,18 +3008,18 @@
 			error = ENODEV;
 			goto fail;
 		}
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_UNLOCK();
 #endif
 		ioe = (struct pfioc_trans_e *)malloc(sizeof(*ioe),
 		    M_TEMP, M_WAITOK);
 		table = (struct pfr_table *)malloc(sizeof(*table),
 		    M_TEMP, M_WAITOK);
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_LOCK();
 #endif
 		for (i = 0; i < io->size; i++) {
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 			PF_COPYIN(io->array+i, ioe, sizeof(*ioe), error);
 			if (error) {
 #else
@@ -3079,19 +3083,19 @@
 			error = ENODEV;
 			goto fail;
 		}
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_UNLOCK();
 #endif
 		ioe = (struct pfioc_trans_e *)malloc(sizeof(*ioe),
 		    M_TEMP, M_WAITOK);
 		table = (struct pfr_table *)malloc(sizeof(*table),
 		    M_TEMP, M_WAITOK);
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_LOCK();
 #endif
 		/* first makes sure everything will succeed */
 		for (i = 0; i < io->size; i++) {
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 			PF_COPYIN(io->array+i, ioe, sizeof(*ioe), error);
 			if (error) {
 #else
@@ -3153,7 +3157,7 @@
 		}
 		/* now do the commit - no errors should happen here */
 		for (i = 0; i < io->size; i++) {
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 			PF_COPYIN(io->array+i, ioe, sizeof(*ioe), error);
 			if (error) {
 #else
@@ -3213,11 +3217,11 @@
 			break;
 		}
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_UNLOCK();
 #endif
 		pstore = malloc(sizeof(*pstore), M_TEMP, M_WAITOK);
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		PF_LOCK();
 #endif
 
@@ -3246,7 +3250,7 @@
 				    n->conn_rate.count * diff /
 				    n->conn_rate.seconds;
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 			PF_COPYOUT(pstore, p, sizeof(*p), error);
 #else
 			error = copyout(pstore, p, sizeof(*p));
@@ -3365,7 +3369,7 @@
 		break;
 	}
 fail:
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 	PF_UNLOCK();
 
 	if (flags & FWRITE)
@@ -3383,7 +3387,7 @@
 	return (error);
 }
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 /*
  * XXX - Check for version missmatch!!!
  */
@@ -3517,7 +3521,7 @@
 	 * XXX Wed Jul 9 22:03:16 2003 UTC
 	 * OpenBSD has changed its byte ordering convention on ip_len/ip_off
 	 * in network stack. OpenBSD's network stack have converted
-	 * ip_len/ip_off to host byte order frist as FreeBSD.
+	 * ip_len/ip_off to host byte order first as FreeBSD.
 	 * Now this is not true anymore , so we should convert back to network
 	 * byte order. 
 	 */
Index: pf_if.c
===================================================================
RCS file: /home/cvs/src/sys/contrib/pf/net/pf_if.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -L sys/contrib/pf/net/pf_if.c -L sys/contrib/pf/net/pf_if.c -u -r1.2 -r1.3
--- sys/contrib/pf/net/pf_if.c
+++ sys/contrib/pf/net/pf_if.c
@@ -32,7 +32,7 @@
  * POSSIBILITY OF SUCH DAMAGE.
  */
 
-#if defined(__FreeBSD__)
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 #include "opt_inet.h"
 #include "opt_inet6.h"
 
@@ -42,7 +42,7 @@
 
 #include <sys/param.h>
 #include <sys/systm.h>
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 #include <sys/malloc.h>
 #endif
 #include <sys/mbuf.h>
@@ -51,8 +51,10 @@
 #include <sys/socketvar.h>
 #include <sys/kernel.h>
 #ifndef __FreeBSD__
+#ifndef __MidnightBSD__
 #include <sys/device.h>
 #endif
+#endif
 #include <sys/time.h>
 
 #include <net/if.h>
@@ -72,7 +74,7 @@
 
 struct pfi_kif		 *pfi_all = NULL;
 struct pfi_statehead	  pfi_statehead;
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 uma_zone_t		  pfi_addr_pl;
 #else
 struct pool		  pfi_addr_pl;
@@ -82,7 +84,7 @@
 struct pfr_addr		 *pfi_buffer;
 int			  pfi_buffer_cnt;
 int			  pfi_buffer_max;
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 eventhandler_tag	  pfi_attach_cookie = NULL;
 eventhandler_tag	  pfi_detach_cookie = NULL;
 eventhandler_tag	  pfi_attach_group_cookie = NULL;
@@ -101,7 +103,7 @@
 int		 pfi_if_compare(struct pfi_kif *, struct pfi_kif *);
 int		 pfi_skip_if(const char *, struct pfi_kif *);
 int		 pfi_unmask(void *);
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 void		 pfi_attach_ifnet_event(void * __unused, struct ifnet *);
 void		 pfi_detach_ifnet_event(void * __unused, struct ifnet *);
 void		 pfi_attach_group_event(void * __unused, struct ifg_group *);
@@ -126,9 +128,11 @@
 
 	TAILQ_INIT(&pfi_statehead);
 #ifndef __FreeBSD__
+#ifndef __MidnightBSD__
 	pool_init(&pfi_addr_pl, sizeof(struct pfi_dynaddr), 0, 0, 0,
 	    "pfiaddrpl", &pool_allocator_nointr);
 #endif
+#endif
 	pfi_buffer_max = 64;
 	pfi_buffer = malloc(pfi_buffer_max * sizeof(*pfi_buffer),
 	    PFI_MTYPE, M_WAITOK);
@@ -136,7 +140,7 @@
 	if ((pfi_all = pfi_kif_get(IFG_ALL)) == NULL)
 		panic("pfi_kif_get for pfi_all failed");
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 	struct ifg_group *ifg;
 	struct ifnet *ifp;
 
@@ -162,7 +166,7 @@
 #endif
 }
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 void
 pfi_cleanup(void)
 {
@@ -204,7 +208,7 @@
 		return (kif);
 
 	/* create new one */
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 	if ((kif = malloc(sizeof(*kif), PFI_MTYPE, M_NOWAIT)) == NULL)
 #else
 	if ((kif = malloc(sizeof(*kif), PFI_MTYPE, M_DONTWAIT)) == NULL)
@@ -213,7 +217,7 @@
 
 	bzero(kif, sizeof(*kif));
 	strlcpy(kif->pfik_name, kif_name, sizeof(kif->pfik_name));
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 	/*
 	 * It seems that the value of time_second is in unintialzied state
 	 * when pf sets interface statistics clear time in boot phase if pf
@@ -317,11 +321,13 @@
 	ifp->if_pf_kif = (caddr_t)kif;
 
 #ifndef __FreeBSD__
+#ifndef __MidnightBSD__
 	if ((kif->pfik_ah_cookie = hook_establish(ifp->if_addrhooks, 1,
 	    pfi_kifaddr_update, kif)) == NULL)
 		panic("pfi_attach_ifnet: cannot allocate '%s' address hook",
 		    ifp->if_xname);
 #endif
+#endif
 
 	pfi_kif_update(kif);
 
@@ -340,8 +346,10 @@
 	s = splsoftnet();
 	pfi_update++;
 #ifndef __FreeBSD__
+#ifndef __MidnightBSD__
 	hook_disestablish(ifp->if_addrhooks, kif->pfik_ah_cookie);
 #endif
+#endif
 	pfi_kif_update(kif);
 
 	kif->pfik_ifp = NULL;
@@ -581,7 +589,7 @@
 		af = ia->ifa_addr->sa_family;
 		if (af != AF_INET && af != AF_INET6)
 			continue;
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		/*
 		 * XXX: For point-to-point interfaces, (ifname:0) and IPv4,
 		 *	jump over addresses without a proper route to work
@@ -650,7 +658,7 @@
 			return;
 		}
 		p = malloc(new_max * sizeof(*pfi_buffer), PFI_MTYPE,
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 		    M_NOWAIT);
 #else
 		    M_DONTWAIT);
@@ -784,7 +792,7 @@
 {
 	struct pfi_kif	*p, *nextp;
 	int		 s, n = 0;
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 	int		 error;
 #endif
 
@@ -797,7 +805,7 @@
 			if (!p->pfik_tzero)
 				p->pfik_tzero = time_second;
 			pfi_kif_ref(p, PFI_KIF_REF_RULE);
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 			PF_COPYOUT(p, buf++, sizeof(*buf), error);
 			if (error) {
 #else
@@ -887,7 +895,7 @@
 	return (b);
 }
 
-#ifdef __FreeBSD__
+#if defined(__FreeBSD__) || defined(__MidnightBSD__)
 void
 pfi_attach_ifnet_event(void *arg __unused, struct ifnet *ifp)
 {


More information about the Midnightbsd-cvs mailing list