[prev in list] [next in list] [prev in thread] [next in thread]
List: ipfilter
Subject: patch1 for 3.1.1
From: Darren Reed <darrenr () cyber ! com ! au>
Date: 1996-10-31 14:22:05
[Download RAW message or body]
The solaris issue is still being worked on, but in the meantime, I noticed
a problem with logging under 3.1.1 on SunOS4.. Also, I'm sick of trying
to use iplbusy.
Darren
Index: ipl.h
===================================================================
RCS file: /devel/CVS/IP-Filter/ipl.h,v
retrieving revision 1.3.4.3
retrieving revision 1.3.4.4
diff -c -r1.3.4.3 -r1.3.4.4
*** 1.3.4.3 1996/10/28 11:36:12
--- 1.3.4.4 1996/10/31 14:05:40
***************
*** 11,16 ****
#ifndef __IPL_H_
#define __IPL_H__
! #define IPL_VERSION "IP Filter v3.1.1 - 28/10/96"
#endif
--- 11,16 ----
#ifndef __IPL_H_
#define __IPL_H__
! #define IPL_VERSION "IP Filter v3.1.1p1 - 1/11/96"
#endif
Index: ip_fil.c
===================================================================
RCS file: /devel/CVS/IP-Filter/ip_fil.c,v
retrieving revision 1.2.4.6
retrieving revision 1.2.4.7
diff -c -r1.2.4.6 -r1.2.4.7
*** 1.2.4.6 1996/10/24 15:43:08
--- 1.2.4.7 1996/10/31 14:05:20
***************
*** 7,13 ****
*/
#ifndef lint
static char sccsid[] = "@(#)ip_fil.c 2.41 6/5/96 (C) 1993-1995 Darren Reed";
! static char rcsid[] = "$Id: ip_fil.c,v 1.2.4.6 1996/10/24 15:43:08 darrenr Exp $";
#endif
#include <sys/errno.h>
--- 7,13 ----
*/
#ifndef lint
static char sccsid[] = "@(#)ip_fil.c 2.41 6/5/96 (C) 1993-1995 Darren Reed";
! static char rcsid[] = "$Id: ip_fil.c,v 1.2.4.7 1996/10/31 14:05:20 darrenr Exp $";
#endif
#include <sys/errno.h>
***************
*** 71,77 ****
#endif /* IPFILTER_LOG */
static void frflush();
static int frrequest();
- static int iplbusy = 0;
static int (*fr_savep)();
#if _BSDI_VERSION >= 199501
--- 71,76 ----
***************
*** 117,123 ****
SPLNET(s);
if (ipl_inited || (fr_checkp == fr_check)) {
! printf("ipl: already initialized (%d)\n", iplbusy);
SPLX(s);
return EBUSY;
}
--- 116,122 ----
SPLNET(s);
if (ipl_inited || (fr_checkp == fr_check)) {
! printf("ipl: already initialized\n");
SPLX(s);
return EBUSY;
}
***************
*** 135,144 ****
{
int s, i = FR_INQUE|FR_OUTQUE;
- if (iplbusy > 1) {
- printf("iplbusy: %d\n", iplbusy);
- return EBUSY;
- }
SPLNET(s);
if (!ipl_inited)
{
--- 134,139 ----
***************
*** 532,544 ****
if (!uio->uio_resid)
return 0;
- iplbusy++;
while (!iplused) {
error = SLEEP(iplbuf, "ipl sleep");
! if (error) {
! iplbusy--;
return error;
- }
}
SPLNET(s);
--- 527,536 ----
if (!uio->uio_resid)
return 0;
while (!iplused) {
error = SLEEP(iplbuf, "ipl sleep");
! if (error)
return error;
}
SPLNET(s);
***************
*** 566,572 ****
iplh = iplt = iplbuf;
}
SPLX(s);
- iplbusy--;
return ret;
}
# endif /* IPFILTER_LOG */
--- 558,563 ----
***************
*** 638,646 ****
for (len -= sizeof(iplci); m && len > 0; m = m->m_next, len -= hlen) {
hlen = MIN(len, m->m_len);
#ifdef m_data
! if (copy_tolog(m->m_data, hlen))
#else
! if (copy_tolog(m->m_dat, hlen))
#endif
break;
}
--- 629,637 ----
for (len -= sizeof(iplci); m && len > 0; m = m->m_next, len -= hlen) {
hlen = MIN(len, m->m_len);
#ifdef m_data
! if (copy_tolog(mtod(m, char *), hlen))
#else
! if (copy_tolog(mtod(m, char *), hlen))
#endif
break;
}
Index: ip_sfil.c
===================================================================
RCS file: /devel/CVS/IP-Filter/ip_sfil.c,v
retrieving revision 1.3.4.5
retrieving revision 1.3.4.6
diff -c -r1.3.4.5 -r1.3.4.6
*** 1.3.4.5 1996/10/24 15:43:11
--- 1.3.4.6 1996/10/31 14:17:03
***************
*** 9,15 ****
*/
#ifndef lint
static char sccsid[] = "%W% %G% (C) 1993-1995 Darren Reed";
! static char rcsid[] = "$Id: ip_sfil.c,v 1.3.4.5 1996/10/24 15:43:11 darrenr Exp $";
#endif
#include <sys/types.h>
--- 9,15 ----
*/
#ifndef lint
static char sccsid[] = "%W% %G% (C) 1993-1995 Darren Reed";
! static char rcsid[] = "$Id: ip_sfil.c,v 1.3.4.6 1996/10/31 14:17:03 darrenr Exp $";
#endif
#include <sys/types.h>
***************
*** 65,71 ****
static int iplused = 0;
#endif /* IPFILTER_LOG */
static int frrequest();
- static int iplbusy = 0;
kmutex_t ipl_mutex, ipf_mutex, ipfs_mutex;
kmutex_t ipf_frag, ipf_state, ipf_nat;
kcondvar_t iplwait;
--- 65,70 ----
***************
*** 77,86 ****
{
int i = FR_INQUE|FR_OUTQUE;
- if (iplbusy) {
- printf("iplbusy: %d\n", iplbusy);
- return EBUSY;
- }
untimeout(ipfr_timer_id);
frflush((caddr_t)&i);
ipfr_unload();
--- 76,81 ----
***************
*** 491,501 ****
return EINVAL;
mutex_enter(&ipl_mutex);
- iplbusy++;
while (!iplused) {
error = cv_wait_sig(&iplwait, &ipl_mutex);
if (!error) {
- iplbusy--;
mutex_exit(&ipl_mutex);
return EINTR;
}
--- 486,494 ----
***************
*** 533,539 ****
if ((iplh < iplt) && (iplt == iplbuf + IPLLOGSIZE))
iplt = iplbuf;
}
- iplbusy--;
mutex_exit(&ipl_mutex);
return ret;
}
--- 526,531 ----
Index: HISTORY
===================================================================
RCS file: /devel/CVS/IP-Filter/HISTORY,v
retrieving revision 1.3.4.8
retrieving revision 1.3.4.9
diff -c -r1.3.4.8 -r1.3.4.9
*** 1.3.4.8 1996/10/28 11:36:14
--- 1.3.4.9 1996/10/31 14:18:08
***************
*** 5,10 ****
--- 5,12 ----
# Thanks to Craig Bishop of connect.com.au and Sun Microsystems for the
# loan of a machine to work on a Solaris 2.x port of this software.
#
+ mbuf logging not using mtod(), remove iplbusy - 3.1.1p1 1/11/96
+
3.1.1 28/10/96 - Released
Installation script fixes and deinstall scripts for IP Filter on:
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic