This is a discussion on Re: ipfilter 4.1.11 compile error: FreeBSD 5.4.p11, POLLOUTNORM undeclared within the IPFilter forums, part of the System Security and Security Related category; --ELM1142850500-18470-0_ Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII > > Hello, > > I ...
|
|||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
|
|||
|
--ELM1142850500-18470-0_ Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII > > Hello, > > I got the following error when i try to compile a new kernel with IPF > 4.1.11 on FreeBSD 5.4-RELEASE-p11 after applying RWLOCK patch. ... Patch attached. Darren --ELM1142850500-18470-0_ Content-Transfer-Encoding: 7bit Content-Type: text/plain Content-Disposition: attachment; filename=sync.patch Content-Description: Index: ip_sync.c ================================================== ================= RCS file: /devel/CVS/IP-Filter/ip_sync.c,v retrieving revision 2.40.2.6 diff -c -r2.40.2.6 ip_sync.c *** ip_sync.c 17 Mar 2006 22:55:37 -0000 2.40.2.6 --- ip_sync.c 19 Mar 2006 13:23:56 -0000 *************** *** 1002,1005 **** --- 1002,1017 ---- { return EINVAL; } + + + int ipfsync_canread() + { + return !((sl_tail == sl_idx) && (su_tail == su_idx)); + } + + + int ipfsync_canwrite() + { + return 1; + } #endif /* IPFILTER_SYNC */ Index: ip_sync.h ================================================== ================= RCS file: /devel/CVS/IP-Filter/ip_sync.h,v retrieving revision 2.11.2.2 diff -c -r2.11.2.2 ip_sync.h *** ip_sync.h 4 Nov 2004 19:29:07 -0000 2.11.2.2 --- ip_sync.h 19 Mar 2006 13:24:08 -0000 *************** *** 111,115 **** --- 111,117 ---- extern int ipfsync_state __P((synchdr_t *sp, void *data)); extern int ipfsync_read __P((struct uio *uio)); extern int ipfsync_write __P((struct uio *uio)); + extern int ipfsync_canread __P((void)); + extern int ipfsync_canwrite __P((void)); #endif /* IP_SYNC */ Index: mlfk_ipl.c ================================================== ================= RCS file: /devel/CVS/IP-Filter/mlfk_ipl.c,v retrieving revision 2.21.2.11 diff -c -r2.21.2.11 mlfk_ipl.c *** mlfk_ipl.c 12 Mar 2006 14:41:40 -0000 2.21.2.11 --- mlfk_ipl.c 19 Mar 2006 13:22:26 -0000 *************** *** 302,311 **** break; case IPL_LOGSYNC : #ifdef IPFILTER_SYNC ! if ((events & (POLLIN | POLLRDNORM)) && ipfsync_canread(xmin)) revents |= events & (POLLIN | POLLRDNORM); ! if ((events & (POLLOUT | POLLWRNORM)) && ipfsync_canwrite(xmin)) ! revents |= events & (POLLOUT | POLLOUTNORM); #endif break; case IPL_LOGSCAN : --- 302,311 ---- break; case IPL_LOGSYNC : #ifdef IPFILTER_SYNC ! if ((events & (POLLIN | POLLRDNORM)) && ipfsync_canread()) revents |= events & (POLLIN | POLLRDNORM); ! if ((events & (POLLOUT | POLLWRNORM)) && ipfsync_canwrite()) ! revents |= events & (POLLOUT | POLLWRNORM); #endif break; case IPL_LOGSCAN : --ELM1142850500-18470-0_-- |