HISTORY revision 1.1.1.2 1 1.1 christos #
2 1.1 christos # NOTE: Quite a few patches and suggestions come from other sources, to whom
3 1.1 christos # I'm greatly indebted, even if no names are mentioned.
4 1.1 christos #
5 1.1 christos # Thanks to the Coombs Computing Unit at the ANU for their continued support
6 1.1 christos # in providing a very available location for the IP Filter home page and
7 1.1 christos # distribution center.
8 1.1 christos #
9 1.1 christos # Thanks also to all those who have contributed patches and other code,
10 1.1 christos # and especially those who have found the time to port IP Filter to new
11 1.1 christos # platforms.
12 1.1 christos #
13 1.1.1.2 darrenr 5.1.2 - RELEASED - 22 Jul 2012
14 1.1.1.2 darrenr
15 1.1.1.2 darrenr 3546266 macro letters could be more consistent
16 1.1.1.2 darrenr 3546265 not all of the state statistics are displayed
17 1.1.1.2 darrenr 3546261 scripts for updating BSD environment out of date
18 1.1.1.2 darrenr 3546260 compiler warnings about non-integer array subscript
19 1.1.1.2 darrenr 3546259 asserting numdereflists == 0 is not correct
20 1.1.1.2 darrenr 3546258 expression matching does not see IPF_EXP_END
21 1.1.1.2 darrenr 3544317 ipnat/ipfstat are not using ipfexp_t
22 1.1.1.2 darrenr 3545324 proxy checksum calculation is not hardware aware
23 1.1.1.2 darrenr 3545321 FTP sequence number adjustment incorrectly applied
24 1.1.1.2 darrenr 3545320 EPSV is not recognised
25 1.1.1.2 darrenr 3545319 move nat rule creation to ip_proxy.c
26 1.1.1.2 darrenr 3545317 better feedback of checksum requirements for proxies
27 1.1.1.2 darrenr 3545314 ftp proxy levels do not make sense
28 1.1.1.2 darrenr 3545312 EPRT is not supported by ftp proxy
29 1.1.1.2 darrenr 3544318 ipnat.conf parsing ignores LHS address family
30 1.1.1.2 darrenr 3545309 non-ipv6 safe proxies do not fail with ipv6
31 1.1.1.2 darrenr 3545323 NAT updates the source port twice
32 1.1.1.2 darrenr 3545322 ipv6 nat rules cannot start proxies
33 1.1.1.2 darrenr 3544314 bucket copyout tries to copy too much data
34 1.1.1.2 darrenr 3544313 remove nat encap feature
35 1.1.1.2 darrenr 3546248 compat rule pointer type mismatch
36 1.1.1.2 darrenr 3546247 UDP hardware checksum offload not recognised
37 1.1.1.2 darrenr 3545311 ifp_ifaddr does not find the first set address
38 1.1.1.2 darrenr 3545310 ipmon needs ipl_sec on 64bit boundary
39 1.1.1.2 darrenr 3545326 reference count changes made without lock
40 1.1.1.2 darrenr 3544315 stateful matching does not use ipfexp_t
41 1.1.1.2 darrenr 3543493 tokens are not flushed when disabled
42 1.1.1.2 darrenr 3543487 NAT rules do not always release lookup objects
43 1.1.1.2 darrenr 3543491 function comments in ip_state.c are old
44 1.1.1.2 darrenr 3543404 ipnat.conf parsing uses family/ip version badly
45 1.1.1.2 darrenr 3543403 incorrect line number printed in ipnat parsing errors
46 1.1.1.2 darrenr 3543402 Not all NAT statistics are printed
47 1.1.1.2 darrenr 3542979 NAT session list management is too simple
48 1.1.1.2 darrenr 3542978 ipv4 and ipv6 nat insert have common hash insertion
49 1.1.1.2 darrenr 3542977 ipnat_t refence tracking incomplete
50 1.1.1.2 darrenr 3542975 proxies must use ipnat_t separately
51 1.1.1.2 darrenr 3542980 printing ipv6 expressions is wrong
52 1.1.1.2 darrenr 3542983 ippool cannot handle more than one ipv6 address
53 1.1.1.2 darrenr 3543018 mask array shifted incorrectly.
54 1.1.1.2 darrenr 3542974 reason for dropping packet is lost
55 1.1.1.2 darrenr 3542982 line numbers not recorded/displayed correctly by ipf
56 1.1.1.2 darrenr 3542981 exclamation mark cuases trouble with pools
57 1.1.1.2 darrenr 3541655 test suite checksums incorrect
58 1.1.1.2 darrenr 3541653 display proxy fail status correctly
59 1.1.1.2 darrenr 3540993 IP header offset excluded in pullup calculations
60 1.1.1.2 darrenr 3540994 pullupmsg does not work as required
61 1.1.1.2 darrenr 3540992 pointer to ipv6 frag header not updated on pullup
62 1.1.1.2 darrenr 3541645 netmask management adds /32 for /0
63 1.1.1.2 darrenr 3541637 ipnat parser does not zero port fields for non-port protocol
64 1.1.1.2 darrenr 3541635 pool names cannot by numbers
65 1.1.1.2 darrenr 3540995 IPv6 fragment tracking does not always work
66 1.1.1.2 darrenr 3540996 printing of nextip for ipv6 nat rules is wrong
67 1.1.1.2 darrenr 3540999 ipnat.conf parsing has trouble with icmpidmap for ipv6
68 1.1.1.2 darrenr 3540825 whois output parsing error for ipv6
69 1.1.1.2 darrenr 3540814 ipfd_lock serves no purpose
70 1.1.1.2 darrenr 3540810 lookup objects need tail pointers
71 1.1.1.2 darrenr 3540809 refactor hash table lookups for nat
72 1.1.1.2 darrenr 3540819 radix tree does not work with ipv6
73 1.1.1.2 darrenr 3540820 mutex emulation should be logged
74 1.1.1.2 darrenr 3540828 ipfstat filtering with -m fails tests
75 1.1.1.2 darrenr 3536480 ippool could be more like the others
76 1.1.1.2 darrenr 3536477 pool printing not uniform
77 1.1.1.2 darrenr 3536483 flushing empty destination lists causes panic
78 1.1.1.2 darrenr 3536481 more use of bzero after KMALLOC required
79 1.1.1.2 darrenr 3536479 ipnat.conf line numbers not stored
80 1.1.1.2 darrenr 3536484 Makefile missing dependency for ippool
81 1.1.1.2 darrenr 3536199 TFTP proxy requires something extra
82 1.1.1.2 darrenr 3536198 ICMP checksum out by one
83 1.1.1.2 darrenr 3536203 ipnat does not return an error
84 1.1.1.2 darrenr 3536201 ipf.conf parsing too address friendly
85 1.1.1.2 darrenr 3536200 printing of bytes/packets not indented
86 1.1.1.2 darrenr 3497941 ipv4 multicast detection incorrect on little endian
87 1.1.1.2 darrenr 3535361 to interfaces printed out of order
88 1.1.1.2 darrenr 3535363 ipf parser is inconsistent
89 1.1.1.2 darrenr 3532306 deleting ipnat rules does not work
90 1.1.1.2 darrenr 3532054 new error required for ipf_rx_create
91 1.1.1.2 darrenr 3532053 icmp6 checksums wrong
92 1.1.1.2 darrenr 3532052 icmpv6 state check with incorrect length
93 1.1.1.2 darrenr 3531871 checksum verification wants too many icmp6 bytes
94 1.1.1.2 darrenr 3531870 ipnat.conf parsing needs to support inet6
95 1.1.1.2 darrenr 3532048 error in ipf group parsing
96 1.1.1.2 darrenr 3531868 ICMPV6 checksum not validated
97 1.1.1.2 darrenr 3531893 ipftest exits without error for bad input
98 1.1.1.2 darrenr 3531890 whois pool parsing builds bad structures
99 1.1.1.2 darrenr 3531891 icmpv6 text parsing ignorant of icmp types
100 1.1.1.2 darrenr 3531653 rewrite with icmp does not work
101 1.1.1.2 darrenr 3530563 NAT operations fail with EPERM
102 1.1.1.2 darrenr 3530544 first pass at gcc -Wextra cleanup
103 1.1.1.2 darrenr 3530540 lookup create functions do not set error properly
104 1.1.1.2 darrenr 3530539 ipf_main_soft_destroy doesn't need 2nd arg
105 1.1.1.2 darrenr 3530541 reorder structure for better packing
106 1.1.1.2 darrenr 3530543 ipnat purge needs documentation
107 1.1.1.2 darrenr 3530515 BSD upgrade script required
108 1.1.1.2 darrenr 3528029 ipmon bad-mutex panic
109 1.1.1.2 darrenr 3530247 loading address pools light on input validation
110 1.1.1.2 darrenr 3530255 radix tree delete uses wrong lookup
111 1.1.1.2 darrenr 3530254 radix tree allocation support wrong
112 1.1.1.2 darrenr 3530264 ipmon prints qd for some 64bit numbers
113 1.1.1.2 darrenr 3530260 decapsulate rules not printed correctly.
114 1.1.1.2 darrenr 3530266 ipfstat -v/-d flags confused
115 1.1.1.2 darrenr 2939220 why a packet is blocked is not discernable
116 1.1.1.2 darrenr 2939218 output interface not recorded
117 1.1.1.2 darrenr 2941850 use of destination lists with to/dup-to beneficial
118 1.1.1.2 darrenr 3457747 build errors introduced with radix change
119 1.1.1.2 darrenr 3535360 timeout groups leak
120 1.1.1.2 darrenr 3535359 memory leak with tokens
121 1.1.1.2 darrenr 3535358 listing rules in groups requires tracking groups
122 1.1.1.2 darrenr 3535357 rule head removal is problematic
123 1.1.1.2 darrenr 3530259 not all ioctl error checked wth SIOCIPFINTERROR
124 1.1.1.2 darrenr 3530258 error routine that uses fd required
125 1.1.1.2 darrenr 3530253 inadequate function comment blocks
126 1.1.1.2 darrenr 3530249 walking lookup tables leaks memory
127 1.1.1.2 darrenr 3530241 extra lock padding required for freebsd
128 1.1.1.2 darrenr 3529901 ipf returns 0 when rules fail to load
129 1.1.1.2 darrenr 3529491 checksum validation could be better
130 1.1.1.2 darrenr 3529486 tcp checksum wrong for ipv6
131 1.1.1.2 darrenr 3533779 ipv6 nat rules missing inet6 keyword
132 1.1.1.2 darrenr 3532693 ipnat.conf rejects some ipv6 addresses
133 1.1.1.2 darrenr 3532691 ipv4 should not be forced for icmp
134 1.1.1.2 darrenr 3532689 ipv6 nat rules do not print inet6
135 1.1.1.2 darrenr 3532688 ipv6 address always printed with "to <if>"
136 1.1.1.2 darrenr 3532687 with v6hdrs not supported like with ipopts
137 1.1.1.2 darrenr 3532686 ipf expressions do not work with ipv6
138 1.1.1.2 darrenr 3540825 whois output parsing error for ipv6
139 1.1.1.2 darrenr 3540818 NAT for certain IPv6 ICMP packets should not be allowed
140 1.1.1.2 darrenr 3540815 memory leak with destination lists
141 1.1.1.2 darrenr 3540814 ipfd_lock serves no purpose
142 1.1.1.2 darrenr 3540810 lookup objects need tail pointers
143 1.1.1.2 darrenr 3540809 refactor hash table lookups for nat
144 1.1.1.2 darrenr 3540808 completed tokens do not stop iteration
145 1.1.1.2 darrenr 3530492 address hash table name not used
146 1.1.1.2 darrenr 3528029 ipmon bad-mutex panic
147 1.1.1.2 darrenr 3530256 hook memory leaked
148 1.1.1.2 darrenr 3530271 pools parsing produces badly formed address structures
149 1.1.1.2 darrenr 3488061 cleanup for illumos build
150 1.1.1.2 darrenr 3484434 SIOCIPFINTERROR must work for all devices
151 1.1.1.2 darrenr 3484067 mandoc -Tlint warnings to be fixed
152 1.1.1.2 darrenr 3483343 compile warning in ipfcomp.c
153 1.1.1.2 darrenr 3482893 building without IPFILTER_LOG fails
154 1.1.1.2 darrenr 3482765 building netbsd kernel without inet6 fails
155 1.1.1.2 darrenr 3482116 ipf_check frees packet from ipftest
156 1.1.1.2 darrenr 3481663 does not compile on solaris 11
157 1.1.1.2 darrenr
158 1.1.1.2 darrenr 5.1.1 - RELEASED - 9 May 2012
159 1.1.1.2 darrenr
160 1.1.1.2 darrenr 3481322 ip_fil_compat.c needs a cleanup
161 1.1.1.2 darrenr 3481211 add user errors to dtrace
162 1.1.1.2 darrenr 3481152 compatibility for 4.1 needs more work
163 1.1.1.2 darrenr 3481153 PRIu64 problems on FreeBSD
164 1.1.1.2 darrenr 3481155 ipnat listing incorrect
165 1.1.1.2 darrenr 3480543 change leads to compat problems
166 1.1.1.2 darrenr 3480538 compiler errors from earlier patch
167 1.1.1.2 darrenr 3480537 ipf_instance_destroy is incomplete
168 1.1.1.2 darrenr 3480536 _fini order leads to panic
169 1.1.1.2 darrenr 3479991 compiler warnings about size mismatches
170 1.1.1.2 darrenr 3479974 copyright dates are wrong (fix)
171 1.1.1.2 darrenr 3479464 add support for leaks testing
172 1.1.1.2 darrenr 3479457 %qu is not the prefered way
173 1.1.1.2 darrenr 3479451 iterators leak memory
174 1.1.1.2 darrenr 3479453 nat rules with pools leak
175 1.1.1.2 darrenr 3479454 memory leak in hostmap table
176 1.1.1.2 darrenr 3479461 load_hash uses memory after free
177 1.1.1.2 darrenr 3479462 printpool leaks memory
178 1.1.1.2 darrenr 3479452 missing FREE_MB_T to freembt leaks
179 1.1.1.2 darrenr 3479450 ipfdetach is called when detached
180 1.1.1.2 darrenr 3479448 group mapping rules memory leak
181 1.1.1.2 darrenr 3479455 memory leak from tuning
182 1.1.1.2 darrenr 3479458 ipf must be running in global zone
183 1.1.1.2 darrenr 3479460 driver replace is wrong
184 1.1.1.2 darrenr 3479459 radix tree tries to free null pointer
185 1.1.1.2 darrenr 3479463 rwlock emulation does not free memory
186 1.1.1.2 darrenr 3479465 parser leaks memory
187 1.1.1.2 darrenr 3475959 hardware checksum not correctly used
188 1.1.1.2 darrenr 3475426 ip pseudo checksum wrong
189 1.1.1.2 darrenr 3473566 radix tree does not delete dups right
190 1.1.1.2 darrenr 3472987 compile is not clean
191 1.1.1.2 darrenr 3472337 not everything is zero'd
192 1.1.1.2 darrenr 3472344 interface setup needs to be after insert
193 1.1.1.2 darrenr 3472340 wildcard counter drops twice
194 1.1.1.2 darrenr 3472338 change fastroute interface
195 1.1.1.2 darrenr 3472335 kernel lock defines not placed correctly
196 1.1.1.2 darrenr 3472324 ICMP INFOREQ/REPLY not handled
197 1.1.1.2 darrenr 3472330 multicast packets tagged by address
198 1.1.1.2 darrenr 3472333 ipf_deliverlocal called incorrectly
199 1.1.1.2 darrenr 3472345 mutex debug could be more granular
200 1.1.1.2 darrenr 3472761 building i19 regression is flawed
201 1.1.1.2 darrenr 3456457 use of bsd tree.h needs to be removed
202 1.1.1.2 darrenr 3460522 code cleanup required for building on freebsd
203 1.1.1.2 darrenr 3459734 trade some cpu for memory
204 1.1.1.2 darrenr 3457747 build errors introduced with radix change
205 1.1.1.2 darrenr 3457804 build errors from removal of pcap-int,h
206 1.1.1.2 darrenr 3440163 rewrite radix tree
207 1.1.1.2 darrenr 3428004 snoop, tcpdump, etherfind readers are unused
208 1.1.1.2 darrenr 3439495 ipf_rand_push never called (fix brackets)
209 1.1.1.2 darrenr 3437732 getnattype does not need to use ipnat_t (fix variable name)
210 1.1.1.2 darrenr 3437696 fr_cksum is a nightmare
211 1.1.1.2 darrenr 3439061 ipf_send_ip doesn't need 3rd arg
212 1.1.1.2 darrenr 3439059 ipid needs to be file local
213 1.1.1.2 darrenr 3437740 complete buildout of fnew
214 1.1.1.2 darrenr 3438575 add dtrace probes to block events
215 1.1.1.2 darrenr 3438347 comment blocks missing softc
216 1.1.1.2 darrenr 3437687 description of ipf_makefrip wrong
217 1.1.1.2 darrenr 3438340 more stats as dtrace probes
218 1.1.1.2 darrenr 3438316 free on nat structure uses fixed size
219 1.1.1.2 darrenr 3437745 nat iterator using the wrong size
220 1.1.1.2 darrenr 3437710 fail checksum verification if packet is short
221 1.1.1.2 darrenr 3437696 fr_cksum is a nightmare
222 1.1.1.2 darrenr 3437732 getnattype does not need to use ipnat_t
223 1.1.1.2 darrenr 3437735 rename ipf_allocmbt to allocmbt
224 1.1.1.2 darrenr 3437697 fr_family to version assignment is wrong
225 1.1.1.2 darrenr 3437746 ap_session_t has unused fields
226 1.1.1.2 darrenr 3437747 move softc structure to .h file (ip_state.c)
227 1.1.1.2 darrenr 3437704 there is no DTRACE_PROBE5
228 1.1.1.2 darrenr 3437748 wrong interface in qpktinfo_t
229 1.1.1.2 darrenr 3437729 create function to hexdump mb_t
230 1.1.1.2 darrenr 3438273 msgdsize should be easier to read
231 1.1.1.2 darrenr 3437683 object direction not set for 32bit
232 1.1.1.2 darrenr 3433767 calling ip_cksum could be easier
233 1.1.1.2 darrenr 3433764 left over locking
234 1.1.1.2 darrenr 3428015 printing proxy data size is useless
235 1.1.1.2 darrenr 3428013 add M_ADJ to hide adjmsg/m_adj
236 1.1.1.2 darrenr 3428012 interface name is not always returned correctly
237 1.1.1.2 darrenr 3428002 ip_ttl is too low
238 1.1.1.2 darrenr 3427997 ipft readers do not set buffer length
239 1.1.1.2 darrenr 3426558 resistence is futile
240 1.1.1.2 darrenr 3424495 various copy-paste errors
241 1.1.1.2 darrenr 1826936 shall we allow ipf to be as dumb as its admin
242 1.1.1.2 darrenr 3424477 specfuncs needs to go
243 1.1.1.2 darrenr 3424484 missing fr_checkv6sum
244 1.1.1.2 darrenr 3424478 one entry at a time
245 1.1.1.2 darrenr 2998760 auth rules do not mix well with to/dup-to/fastroute
246 1.1.1.2 darrenr 3424195 add ctfmerge to sunos5 makefile
247 1.1.1.2 darrenr 3424132 some dtrace probes to start with
248 1.1.1.2 darrenr 3423812 makefile needs ip_frag.h for some files
249 1.1.1.2 darrenr 3423817 reference count useful in verbose output
250 1.1.1.2 darrenr 3423800 walking lists does not drop reference
251 1.1.1.2 darrenr 3423805 fragmentation stats not reported correclty
252 1.1.1.2 darrenr 3423808 ip addresses reportied incorrectly with ipfstat -f
253 1.1.1.2 darrenr 3423821 track packets and bytes for fragmentation
254 1.1.1.2 darrenr 3423803 attempt to double free rule
255 1.1.1.2 darrenr 3423805 fragmentation stats not reported correctly
256 1.1.1.2 darrenr 3422712 system panic with ipfstat -f
257 1.1.1.2 darrenr 3422619 pullup counter bumped for every packet
258 1.1.1.2 darrenr 3422608 dummy rtentry required to build
259 1.1.1.2 darrenr 3422018 frflush next to ipf_fini_all is redundant
260 1.1.1.2 darrenr 3422012 instance cleanup is not clean
261 1.1.1.2 darrenr 3421845 instance name not set
262 1.1.1.2 darrenr 3005622 ip_fil5.1.0 does not load on Solaris 10 U8
263 1.1.1.2 darrenr 2976332 stateful filtering is incompatible with ipv4 options
264 1.1.1.2 darrenr 3387509 ipftest needs help construction ip packets with options
265 1.1.1.2 darrenr 2998746 passp can never be null
266 1.1.1.2 darrenr 3064034 mbuf clobbering problem with ipv6
267 1.1.1.2 darrenr 3105725 ipnat divide by zero panic
268 1.1.1.2 darrenr 2998750 ipf_htent_insert can leak memory
269 1.1.1.2 darrenr 3064034 mbuf clobbering problem with ipv6
270 1.1.1.2 darrenr 3105725 ipnat divie by zero panic
271 1.1.1.2 darrenr
272 1.1 christos 5.1 - RELEASED - 9 May 2010
273 1.1 christos
274 1.1 christos * See WhatsNew50.txt
275 1.1 christos
276 1.1 christos 4.1 - RELEASED - 12 February 2004
277 1.1 christos
278 1.1 christos 4.0-BETA1 20 August 2003
279 1.1 christos
280 1.1 christos support 0/32 and 0/0 on the RHS in redirect rules
281 1.1 christos
282 1.1 christos where LHS and RHS netmasks are the same size for redirect, do 1:1 mapping
283 1.1 christos for bimap rules.
284 1.1 christos
285 1.1 christos allow NAT rule to match 'all' interfaces with * as interface name
286 1.1 christos
287 1.1 christos do mapping of ICMP sequence id#'s in pings
288 1.1 christos
289 1.1 christos allow default age for NAT entries to be set per NAT rule
290 1.1 christos
291 1.1 christos provide round robin selection of destination addresses for redirect
292 1.1 christos
293 1.1 christos ipmon can load a configuration file with instructions on actions
294 1.1 christos to take when a matching log entry is received
295 1.1 christos
296 1.1 christos now requires pfil to work on Solaris & HP-UX
297 1.1 christos
298 1.1 christos supports mapping outbound connections to a specific address/port
299 1.1 christos
300 1.1 christos support toggling of logging per ipfilter 'device'
301 1.1 christos
302 1.1 christos use queues to expire data rather than lists
303 1.1 christos
304 1.1 christos add MSN RPC proxy
305 1.1 christos
306 1.1 christos add IRC proxy
307 1.1 christos
308 1.1 christos support rules with dynamic ip addresses
309 1.1 christos
310 1.1 christos add ability to define a pool of addresses & networks which can then
311 1.1 christos be placed in a single rule
312 1.1 christos
313 1.1 christos support passing entire packet back to user program for authentication
314 1.1 christos
315 1.1 christos support master/slave for state information sharing
316 1.1 christos
317 1.1 christos reorganise generic code into a lib directory and make libipf.a
318 1.1 christos
319 1.1 christos user programs enforce version matching with the kernel
320 1.1 christos
321 1.1 christos supports window scaling if seen at TCP session setup
322 1.1 christos
323 1.1 christos generates C code from filter rules to compile in or load as native
324 1.1 christos machine code.
325 1.1 christos
326 1.1 christos supports loading rules comprised of BPF bytecode statements
327 1.1 christos
328 1.1 christos HP-UX 11 port completed
329 1.1 christos
330 1.1 christos and packets-per-second filtering
331 1.1 christos
332 1.1 christos add numerical tags to rules for filtering and display in ipmon output
333 1.1 christos
334 1.1 christos 3.4.4 23/05/2000 - Released
335 1.1 christos
336 1.1 christos don't add TCP state if it is an RST packet and (attempt) to send out
337 1.1 christos RST/ICMP packets in a manner that bypasses IP Filter.
338 1.1 christos
339 1.1 christos add patch to work with 4.0_STABLE delayed checksums
340 1.1 christos
341 1.1 christos 3.4.3 20/05/2000 - Released
342 1.1 christos
343 1.1 christos fix ipmon -F
344 1.1 christos
345 1.1 christos don't truncate IPv6 packets on Solaris
346 1.1 christos
347 1.1 christos fix keep state for ICMP ECHO
348 1.1 christos
349 1.1 christos add some NAT stats and use def_nat_age rather than DEF_NAT_AGE
350 1.1 christos
351 1.1 christos don't make ftp proxy drop packets
352 1.1 christos
353 1.1 christos use MCLISREFERENCED() in tandem with M_EXT to check if IP fields need to be
354 1.1 christos swapped back.
355 1.1 christos
356 1.1 christos fix up RST generation for non-Solaris
357 1.1 christos
358 1.1 christos get "short" flag right for IPv6
359 1.1 christos
360 1.1 christos 3.4.2 - 10/5/2000 - Released
361 1.1 christos
362 1.1 christos Fix bug in dealing with "hlen == 1 and opt > 1" - Itojun
363 1.1 christos
364 1.1 christos ignore previous NAT mappings for 0/0 and 0/32 rules
365 1.1 christos
366 1.1 christos bring in a completely new ftp proxy
367 1.1 christos
368 1.1 christos allow NAT to cause packets to be dropped.
369 1.1 christos
370 1.1 christos add NetBSD callout support for 1.4-current
371 1.1 christos
372 1.1 christos 3.4.1 - 30/4/2000 - Released
373 1.1 christos
374 1.1 christos add ratoui() and fix parsing of group numbers to allow 0 - UINT_MAX
375 1.1 christos
376 1.1 christos don't include opt_inet6.h for FreeBSD if KLD_MODULE is defined
377 1.1 christos
378 1.1 christos Solaris must use copyin() for all types of ioctl() args
379 1.1 christos
380 1.1 christos fix up screen/tty when leaving "top mode" of ipfstat
381 1.1 christos
382 1.1 christos linked list for maptable not setup correctly in nat_hostmap()
383 1.1 christos
384 1.1 christos check for maptable rather than nat_table[1] to see if malloc for maptable
385 1.1 christos succeeded in nat_init
386 1.1 christos
387 1.1 christos fix handling of map NAT rules with "from/to" host specs
388 1.1 christos
389 1.1 christos fix printout out of source address when using "from/to" with map rules
390 1.1 christos
391 1.1 christos convert ip_len back to network byte order, not plen, for solaris as ip_len
392 1.1 christos may have been changed by NAT and plen won't reflect this
393 1.1 christos
394 1.1 christos 3.4 - 27/4/2000 - Released
395 1.1 christos
396 1.1 christos source address spoofing can be turned on (fr_chksrc) without using
397 1.1 christos filter rules
398 1.1 christos
399 1.1 christos group numbers are now 32bits in size, up from 16bits
400 1.1 christos
401 1.1 christos IPv6 filtering available
402 1.1 christos
403 1.1 christos add frank volf's state-top patches
404 1.1 christos
405 1.1 christos add load splitting and round-robin attribute to redirect rules
406 1.1 christos
407 1.1 christos FreeBSD-4.0 support (including KLD)
408 1.1 christos
409 1.1 christos add top-style operation mode for ipfstat (-t)
410 1.1 christos
411 1.1 christos add save/restore of IP Filter state/NAT information (ipfs)
412 1.1 christos
413 1.1 christos further ftp proxy security checks
414 1.1 christos
415 1.1 christos support for adding and removing proxies at runtime
416 1.1 christos
417 1.1 christos 3.3.13 26/04/2000 - Released
418 1.1 christos
419 1.1 christos Fix parsing of "range" with "portmap"
420 1.1 christos
421 1.1 christos Relax checking of ftp replies, slightly.
422 1.1 christos
423 1.1 christos Fix NAT timeouts for ICMP packets
424 1.1 christos
425 1.1 christos SunOS4 patches for ICMP redirects from Jurgen Keil (jk@tools.de)
426 1.1 christos
427 1.1 christos 3.3.12 16/03/2000 - Released
428 1.1 christos
429 1.1 christos tighten up ftp proxy behaviour. sigh. yuck. hate.
430 1.1 christos
431 1.1 christos fix bug in range check for NAT where the last IP# was not used.
432 1.1 christos
433 1.1 christos fix problem with icmp codes > 127 in filter rules caused bad things to
434 1.1 christos happen and in particular, where #18 caused the rule to be printed
435 1.1 christos erroneously.
436 1.1 christos
437 1.1 christos fix bug with the spl level not being reset when returning EIO from
438 1.1 christos iplioctl due to ipfilter not being initialized yet.
439 1.1 christos
440 1.1 christos 3.3.11 04/03/2000 - Released
441 1.1 christos
442 1.1 christos make "or-block" work with lines that start with "log"
443 1.1 christos
444 1.1 christos fix up parsing and printing of rules with syslog levels in them
445 1.1 christos
446 1.1 christos fix from Cy Schubert for calling of apr_fini only if non-null
447 1.1 christos
448 1.1 christos
449 1.1 christos 3.3.10 24/02/2000 - Released
450 1.1 christos
451 1.1 christos * fix back from guido for state tracking interfaces
452 1.1 christos
453 1.1 christos * update for NetBSD pfil interface changes
454 1.1 christos
455 1.1 christos * if attaching fails and we can abort, then cleanup when doing so.
456 1.1 christos
457 1.1 christos julian@computer.org:
458 1.1 christos * solaris.c (fr_precheck): After calling freemsg on mt, set it point to *mp.
459 1.1 christos * ipf.c (packetlogon): use flag to store the return value from get_flags.
460 1.1 christos * ipmon.c (init_tabs): General cleanup so we do not have to cast
461 1.1 christos an int s->s_port to u_int port and try to check if the u_int port
462 1.1 christos is less than zero.
463 1.1 christos
464 1.1 christos 3.3.9 15/02/2000 - Released
465 1.1 christos
466 1.1 christos fix scheduling of bad locking in fr_addstate() used when we attach onto
467 1.1 christos a filter rule.
468 1.1 christos
469 1.1 christos fix up ip_statesync() with storing interface names in ipstate_t
470 1.1 christos
471 1.1 christos fix fr_running for LKM's - Eugene Polovnikov
472 1.1 christos
473 1.1 christos junk using pullupmsg() for solaris - it's next to useless for what we
474 1.1 christos need to do here anyway - and implement what we require.
475 1.1 christos
476 1.1 christos don't call fr_delstate() in fr_checkstate(), when compiled for a user
477 1.1 christos program, early but when we're finished with it (got fr & pass)
478 1.1 christos
479 1.1 christos ipnat(5) fix from Guido
480 1.1 christos
481 1.1 christos on solaris2, copy message and use that with filter if there is another
482 1.1 christos copy if it being used (db_ref > 1). bad for performance, but better
483 1.1 christos than causing a crash.
484 1.1 christos
485 1.1 christos patch for solaris8-fcs compile from Casper Dik
486 1.1 christos
487 1.1 christos 3.3.8 01/02/2000 - Released
488 1.1 christos
489 1.1 christos fix state handling of SYN packets.
490 1.1 christos
491 1.1 christos add parsing recognition of extra icmp types/codes and fix handling of
492 1.1 christos icmp time stamps and mask requests - Frank volf
493 1.1 christos
494 1.1 christos 3.3.7 25/01/2000 - Released
495 1.1 christos
496 1.1 christos sync on state information as well as NAT information when required
497 1.1 christos
498 1.1 christos record nat protocol in all nat log records
499 1.1 christos
500 1.1 christos don't reuse the IP# from an active NAT session if the IP# in the rule
501 1.1 christos has changed dynamically.
502 1.1 christos
503 1.1 christos lookup the protocol for NAT log information in ipmon and pass that to
504 1.1 christos portname.
505 1.1 christos
506 1.1 christos fix the bug with changing the outbound interface of a packet where it
507 1.1 christos would lead to a panic.
508 1.1 christos
509 1.1 christos use fr_running instead of ipl_inited. (sysctl name change on freebsd)
510 1.1 christos
511 1.1 christos return EIO if someone attempts an ioctl on state/nat if ipfilter is not
512 1.1 christos enabled.
513 1.1 christos
514 1.1 christos fix rule insertion bug
515 1.1 christos
516 1.1 christos make state flushing clean anything that's not fully established (4/4)
517 1.1 christos
518 1.1 christos call fr_state_flush() after we've released ipf_state so we don't generate
519 1.1 christos a recursive mutex acquisition panic
520 1.1 christos
521 1.1 christos fix parsing of icmp code after return-icmp/return-icmp-as-dest and add
522 1.1 christos some patches to enhance parsing strength
523 1.1 christos
524 1.1 christos 3.3.6 28/12/1999 - Released
525 1.1 christos
526 1.1 christos add in missing rwlock release in fr_checkicmpmatchingstate() and fix check
527 1.1 christos for ICMP_ECHO to only be for packet, not state entry which we don't have yet.
528 1.1 christos
529 1.1 christos handle SIOCIPFFB in nat_ioctl() and fr_state_ioctl()
530 1.1 christos
531 1.1 christos fix size of friostat for SunOS4
532 1.1 christos
533 1.1 christos fix bug in running off the end of a buffer in real audio proxy
534 1.1 christos
535 1.1 christos 3.3.5 11/12/1999 - Released
536 1.1 christos
537 1.1 christos fix parsing of "log level" and printing it back out too
538 1.1 christos
539 1.1 christos <net/if_types.h> is only present on Solaris2.6/7/8
540 1.1 christos
541 1.1 christos use send_icmp_err rather than icmp_error to send back a frag-needed error
542 1.1 christos when doing PMTU
543 1.1 christos
544 1.1 christos do not use -b with add_drv on Solaris unless $BASEDIR is set.
545 1.1 christos
546 1.1 christos fix problem where source address in icmp replies is reversed
547 1.1 christos
548 1.1 christos fix yet another problem with real audio.
549 1.1 christos
550 1.1 christos 3.3.4 4/12/1999 - Released
551 1.1 christos
552 1.1 christos fix up the real audio proxy to properly setup state information and NAT
553 1.1 christos entries, thanks to Laine Stump for testing/advice/fixes.
554 1.1 christos
555 1.1 christos fix ipfr_fastroute to set dst->sin_addr (Sean Farley - appears to prevent
556 1.1 christos FreeBSD 3.3 from panic'ing) as this had been removed in prior hacks to this
557 1.1 christos routine.
558 1.1 christos
559 1.1 christos fix kinstall for BSDI
560 1.1 christos
561 1.1 christos support ICMP errors being allowed through for ICMP packets going out with
562 1.1 christos keep state enabled
563 1.1 christos
564 1.1 christos support hardware checksumming (gigabit ethernet cards) on Solaris thanks to
565 1.1 christos Tel.Net Media for providing hardware for testing.
566 1.1 christos
567 1.1 christos patched from Frank Volf for ipmon (ICMP & fragmented packets) and allowing
568 1.1 christos ICMP responses to ICMP packets in the keep state table.
569 1.1 christos
570 1.1 christos add in patches for hardware checksumming under solaris
571 1.1 christos
572 1.1 christos Solaris install scripts now use $BASEDIR as appropriate.
573 1.1 christos
574 1.1 christos add Solaris8 support
575 1.1 christos
576 1.1 christos fix "ipf -y" on solaris so that it rescans rules also for changes in
577 1.1 christos interface pointers
578 1.1 christos
579 1.1 christos let ipmon become a daemon with -D if it is using syslog
580 1.1 christos
581 1.1 christos fix parsing of return-icmp-as-dest(foo)
582 1.1 christos
583 1.1 christos add reference to ipfstat -g to ipfstat.8
584 1.1 christos
585 1.1 christos ipf_mutex needs to be declared for irix in ip_fil.c
586 1.1 christos
587 1.1 christos 3.3.3 22/10/1999 - Released
588 1.1 christos
589 1.1 christos add -g command line option to ipfstat to show groups still define.
590 1.1 christos
591 1.1 christos fix problem with fragment table not recording rule pointer when called
592 1.1 christos from state functions (fin_fr not set).
593 1.1 christos
594 1.1 christos fixup fastroute problems with keep state rules.
595 1.1 christos
596 1.1 christos load rules into inactive set first, so we don't disable things like NIS
597 1.1 christos lookups half way through processing - found by Kevin Littlejohn
598 1.1 christos
599 1.1 christos fix handling of unaligned ip pointer for solaris
600 1.1 christos
601 1.1 christos patch for fr_newauth from Rudi Sluijtman
602 1.1 christos
603 1.1 christos fixed htons() bug in fr_tcpsum() where ip_p wasn't cast to u_short
604 1.1 christos
605 1.1 christos 3.3.2 23/09/1999 - Released
606 1.1 christos
607 1.1 christos patches from Scott Presnell to fix rcmd proxy
608 1.1 christos
609 1.1 christos patches from Greg to fix Solaris detachment of interfaces
610 1.1 christos
611 1.1 christos add openbsd compatibility fixes
612 1.1 christos
613 1.1 christos fix free'ing already freed memory in ipfr_slowtimer()
614 1.1 christos
615 1.1 christos fix for deferencing invalid memory in cleaning up after a device disappears
616 1.1 christos
617 1.1 christos 3.3.1 14/8/1999 - Released
618 1.1 christos
619 1.1 christos remove include file sys/user.h for irix
620 1.1 christos
621 1.1 christos prevent people from running buildsunos directly
622 1.1 christos
623 1.1 christos fix up some problems with the saving of rule pointers so that NAT saves
624 1.1 christos that information in case it should need to call fr_addstate() from a proxy.
625 1.1 christos
626 1.1 christos fix up scanning for the end of FTP messages
627 1.1 christos
628 1.1 christos don't remove /etc/opt/ipf in postremove
629 1.1 christos
630 1.1 christos attempt to prevent people running buildsolaris script without doing a
631 1.1 christos "make solaris"
632 1.1 christos
633 1.1 christos fix timeout losing on freebsd3
634 1.1 christos
635 1.1 christos 3.3 7/8/1999 - Released
636 1.1 christos
637 1.1 christos NAT: information (rules, mappings) are stored in hash tables; setup some
638 1.1 christos basic NAT regression testing.
639 1.1 christos
640 1.1 christos display version name of installed kernel code when initializing.
641 1.1 christos
642 1.1 christos add -V command line option to ipf, showing version (program and kernel
643 1.1 christos module) as well as the run-status of the kernel code.
644 1.1 christos
645 1.1 christos fix problem with "log" rules actually affecting result of filtering.
646 1.1 christos
647 1.1 christos automatically use SUNWspro if available and on a 64bit Solaris system for
648 1.1 christos compiling.
649 1.1 christos
650 1.1 christos add kernel proxies for rcmd(3) and RealAudio (PNA)
651 1.1 christos
652 1.1 christos use timeout/untimeout on SunOS4/BSD platforms too rather than hijacking
653 1.1 christos ip_slowtimo
654 1.1 christos
655 1.1 christos fix IP headers generated through parsing of text information
656 1.1 christos
657 1.1 christos fix NAT rules to be in the correct order again.
658 1.1 christos
659 1.1 christos make keep-state work with to/fastroute keywords and enforce usage of those
660 1.1 christos interfaces.
661 1.1 christos
662 1.1 christos update keep-state code with new algorithm from Guido
663 1.1 christos
664 1.1 christos add FreeBSD-3 support
665 1.1 christos
666 1.1 christos add return-icmp-as-dest option to retrun an ICMP packet using the original
667 1.1 christos destination as the source rather than a local IP address
668 1.1 christos
669 1.1 christos add "level [facility.]<priority>" option to filter language
670 1.1 christos
671 1.1 christos add changes from Guido to state code.
672 1.1 christos
673 1.1 christos add code to return EPERM if the device is opened for writing and we're
674 1.1 christos in securelevel 2 or greater.
675 1.1 christos
676 1.1 christos authentication code patches from Guido
677 1.1 christos
678 1.1 christos fix real audio proxy
679 1.1 christos
680 1.1 christos fix ipmon rule printing of interfaces and add IN/OUT to the end of ipmon
681 1.1 christos log output.
682 1.1 christos
683 1.1 christos fix bimap rules with hash tables
684 1.1 christos
685 1.1 christos update addresses used in NAT mappings for 0/32 rules for any protocol but TCP
686 1.1 christos if it changes on the interface - check every ip_natexpire()
687 1.1 christos
688 1.1 christos add redirect regression test
689 1.1 christos
690 1.1 christos count buckets used in the state hash table.
691 1.1 christos
692 1.1 christos fix sending of RST's with return-rst to use the ack number provided in
693 1.1 christos the packet being replied to in addition to the sequence number.
694 1.1 christos
695 1.1 christos fix to compile as a 64bit application on solaris7-64bit
696 1.1 christos
697 1.1 christos add NAT IP mapping to ranges of IP addresses that aren't CIDR specified
698 1.1 christos
699 1.1 christos fix calculation of in_space parameter for NAT
700 1.1 christos
701 1.1 christos fix `wrapping' when incrementing the next ip address for use in NAT
702 1.1 christos
703 1.1 christos fix free'ing of kernel memory in ip_natunload on solaris
704 1.1 christos
705 1.1 christos fix -l/-U command line options from interfering with each other
706 1.1 christos
707 1.1 christos fix fastroute under solaris2 and cleanup compilation for solaris7
708 1.1 christos
709 1.1 christos add install scripts and compile cleanly on BSD/OS 4.0
710 1.1 christos
711 1.1 christos safely open files in /tmp for writing device output when testing.
712 1.1 christos
713 1.1 christos fix uninitialized pointer bug in NAT
714 1.1 christos
715 1.1 christos fix SIOCZRLST (zero list rule stats) bug with groups
716 1.1 christos
717 1.1 christos change some usage of u_short to u_int in function calling
718 1.1 christos
719 1.1 christos fix compilation for Solaris7 (SUNWspro)
720 1.1 christos
721 1.1 christos change solaris makefiles to build for either sparc or i386 rather than
722 1.1 christos per-cpu (sun4u, etc).
723 1.1 christos
724 1.1 christos fixed bug in ipllog
725 1.1 christos
726 1.1 christos add patches from George Michaelson for FreeBSD 3.0
727 1.1 christos
728 1.1 christos add patch from Guido to provide ICMP checking for known state in the same
729 1.1 christos manner as is done for NAT.
730 1.1 christos
731 1.1 christos enable FTP PASV proxying and enable wildcarding in NAT/state code for ports
732 1.1 christos for better PORT/PASV support with FTP.
733 1.1 christos
734 1.1 christos bring into main tree static nat features: map-block and "auto" portmapping.
735 1.1 christos
736 1.1 christos add in source host filtering for redirects (alan jones)
737 1.1 christos
738 1.1 christos 3.2.10 22/11/98 - Released
739 1.1 christos
740 1.1 christos 3.2.10beta9 17/11/98 - Released
741 1.1 christos
742 1.1 christos fix fr_tcpsum problems in handling mbufs with an odd number of bytes
743 1.1 christos and/or split across an mbuf boundary
744 1.1 christos
745 1.1 christos fix NAT list entry comparisons and allow multiple entries for the same
746 1.1 christos proxy (but on different ports).
747 1.1 christos
748 1.1 christos don't create duplicate NAT entries for repeated PORT commands.
749 1.1 christos
750 1.1 christos 3.2.10beta8 14/11/98 - Released
751 1.1 christos
752 1.1 christos always exit an rwlock before expecting to enter it again on solaris
753 1.1 christos
754 1.1 christos fix loop in nat_new for pre-existing nat
755 1.1 christos
756 1.1 christos don't setup state for an ftp connection if creating nat fails.
757 1.1 christos
758 1.1 christos 3.2.10beta7 05/11/98 - Released
759 1.1 christos
760 1.1 christos set fake window in ipft_tx.c to ensure code passes tests.
761 1.1 christos
762 1.1 christos cleaned up/enhanced ipnat -l/ipnat -lv output
763 1.1 christos
764 1.1 christos fixed NAT handling of non-TCP/UDP packets, esp. for ICMP errors returned.
765 1.1 christos
766 1.1 christos Solaris recusive mutex on icmp-error/tcp-reset - requires rwlock's rather
767 1.1 christos than mutexes.
768 1.1 christos
769 1.1 christos 3.2.10beta6 03/11/98 - Released
770 1.1 christos
771 1.1 christos fix mixed use of krwlock_t and kmutex_t on Solaris2
772 1.1 christos
773 1.1 christos fix FTP proxy back up, splitting pasv code out of port code.
774 1.1 christos
775 1.1 christos 3.2.10beta5 02/11/98 - Released
776 1.1 christos
777 1.1 christos fixed port translation in ICMP reply handling
778 1.1 christos
779 1.1 christos 3.2.10beta4 01/11/98 - Released
780 1.1 christos
781 1.1 christos increase useful statistic collection on solaris
782 1.1 christos
783 1.1 christos filter DL_UNITDATA_REQ as well as DL_UNITDATA_IND on solaris
784 1.1 christos
785 1.1 christos disable PASV reply translation for now
786 1.1 christos
787 1.1 christos fail with an error if we try to load a NAT rule with a non-existant
788 1.1 christos proxy name - Guido
789 1.1 christos
790 1.1 christos fix portmap usage with 0/0 and 0/32 map rules
791 1.1 christos
792 1.1 christos remove ap_unload/ap_expire - automatically done when NAT is cleaned up
793 1.1 christos
794 1.1 christos print "STATE:CLOSED" from ipmon if the connection progresses past established
795 1.1 christos rather than "STATE:EXPIRED"
796 1.1 christos
797 1.1 christos 3.2.10beta3 26/10/98 - Released
798 1.1 christos
799 1.1 christos fixed traceroute/nat problem
800 1.1 christos
801 1.1 christos rewrote nat/proxy interface
802 1.1 christos
803 1.1 christos ipnat now lists associated proxy sessions for each NAT where applicable
804 1.1 christos
805 1.1 christos 3.2.10beta2 13/10/98 - Released
806 1.1 christos
807 1.1 christos use KRWLOCK_T in place of krwlock_t for solaris as well as irix
808 1.1 christos
809 1.1 christos disable use of read-write lock acquisition by default
810 1.1 christos
811 1.1 christos add in mb_t for linux, non-kernel
812 1.1 christos
813 1.1 christos some changes to progress compilation on linux with glibc
814 1.1 christos
815 1.1 christos change PASV as well as PORT when passed through kernel ftp proxy.
816 1.1 christos
817 1.1 christos don't allow window to become 0 in tcp state code
818 1.1 christos
819 1.1 christos make ipmon compile cleaner
820 1.1 christos
821 1.1 christos irix patches
822 1.1 christos
823 1.1 christos 3.2.10beta 11/09/98 - Released
824 1.1 christos
825 1.1 christos stop fr_tcpsum() thinking it has run out of data when it hasn't.
826 1.1 christos
827 1.1 christos stop solaris panics due to fin_dp being something wild.
828 1.1 christos
829 1.1 christos revisit usage of ATOMIC_*()
830 1.1 christos
831 1.1 christos log closing state of TCP connection in "keep state"
832 1.1 christos
833 1.1 christos fix fake-arp table code for ipsend.
834 1.1 christos
835 1.1 christos ipmon now writes pid to a file.
836 1.1 christos
837 1.1 christos fix "ipmon -a" to actually activate all logging devices.
838 1.1 christos
839 1.1 christos add patches for BSDOS4.
840 1.1 christos
841 1.1 christos perl scripts for log analysis donated.
842 1.1 christos
843 1.1 christos 3.2.9 22/06/98 - Released
844 1.1 christos
845 1.1 christos fix byte order for ICMP packets generated on Solaris
846 1.1 christos
847 1.1 christos fix some locking problems.
848 1.1 christos
849 1.1 christos fix malloc bug in NAT (introduced in 3.2.8).
850 1.1 christos
851 1.1 christos patch from guido for state connections that get fragmented
852 1.1 christos
853 1.1 christos 3.2.8 08/06/98 - Released
854 1.1 christos
855 1.1 christos use readers/writers locks in Solaris2 in place of some mutexes.
856 1.1 christos
857 1.1 christos Solaris2 installation enhancements - Martin Forssen (maf@carlstedt.se)
858 1.1 christos
859 1.1 christos 3.2.7 24/05/98 - Released
860 1.1 christos
861 1.1 christos u_long -> u_32_t conversions
862 1.1 christos
863 1.1 christos patches from Bernd Ernesti for NetBSD
864 1.1 christos
865 1.1 christos fixup ipmon to actually handle HUP's.
866 1.1 christos
867 1.1 christos Linux fixes from Michael H. Warfield (mhw (at] wittsend.com)
868 1.1 christos
869 1.1 christos update for keep state patch (not security related) - Guido
870 1.1 christos
871 1.1 christos dumphex() uses stdout rather than log
872 1.1 christos
873 1.1 christos 3.2.6 18/05/98 - Released
874 1.1 christos
875 1.1 christos fix potential security loop hole in keep state code.
876 1.1 christos
877 1.1 christos update examples.
878 1.1 christos
879 1.1 christos 3.2.5 09/05/98 - Released
880 1.1 christos
881 1.1 christos BSD/OS 3.1 .o files added for the kernel.
882 1.1 christos
883 1.1 christos fix sequence # skew vs window size check.
884 1.1 christos
885 1.1 christos fix minimum ICMP header size check.
886 1.1 christos
887 1.1 christos remove references to Cybersource.
888 1.1 christos
889 1.1 christos fix my email address.
890 1.1 christos
891 1.1 christos remove ntohl in ipnat - Thomas Tornblom
892 1.1 christos
893 1.1 christos 3.2.4 09/04/98 - Released
894 1.1 christos
895 1.1 christos add script to make devices for /dev on BSD boxes
896 1.1 christos
897 1.1 christos fixup building into the kernel for FreeBSD 2.2.5
898 1.1 christos
899 1.1 christos add -D command line option to ipmon to make it a daemon and SIGHUP causes
900 1.1 christos it to close and reopen the logfile
901 1.1 christos
902 1.1 christos fixup make clean and make package for SunOS5 - Marc Boucher
903 1.1 christos
904 1.1 christos postinstall keeps adding "minor=ipf ipl" - George Ross <gdmr (at] dcs.ed.ac.uk>
905 1.1 christos
906 1.1 christos protected by IP Filter gif - Sergey Solyanik <solik (at] atom.ru>
907 1.1 christos
908 1.1 christos 3.2.3 10/11/97 - Released
909 1.1 christos
910 1.1 christos fix some iplang bugs
911 1.1 christos
912 1.1 christos fix tcp checksum data overrun, sgi #define changes,
913 1.1 christos avoid infinite loop when nat'ing to single IP# - Marc Boucher
914 1.1 christos
915 1.1 christos fixup DEVFS usage for FreeBSD
916 1.1 christos
917 1.1 christos fix sunos5 "make clean" cleaning up too much
918 1.1 christos
919 1.1 christos 3.2.2 28/11/97 - Released
920 1.1 christos
921 1.1 christos change packet matching to return actual error, if bad packet, to facilitate
922 1.1 christos ECONNRESET for TCP.
923 1.1 christos
924 1.1 christos allow ip:netmask in grammar too now - Guido
925 1.1 christos
926 1.1 christos assume IRIX has u_int32_t in sys/types.h (needed for R10000)
927 1.1 christos
928 1.1 christos rewrite parts of command line options for ipmon
929 1.1 christos
930 1.1 christos fix TCP urgent packet & offset testing and add LAND attack test for iptest
931 1.1 christos
932 1.1 christos fix grammar error in yacc grammar for iplang
933 1.1 christos
934 1.1 christos redirect (rdr) destination port bytes-wapped when it shouldn't be.
935 1.1 christos
936 1.1 christos general: fr_check now returns error code, such as EHOSTUNREACH or
937 1.1 christos ECONNRESET (attempt to make ECONNRESET work for locally outbound
938 1.1 christos packets).
939 1.1 christos
940 1.1 christos linux: enable return-rst, need to filter tcp retransmits which are sent
941 1.1 christos separately from normal packets
942 1.1 christos
943 1.1 christos memory leak plugged in ip_proxy.c
944 1.1 christos
945 1.1 christos BSDI compatibility patches from Guido
946 1.1 christos
947 1.1 christos tcp checksum fix - Marc Boucher
948 1.1 christos
949 1.1 christos recursive mutex and ioctl param fix - Marc Boucher
950 1.1 christos
951 1.1 christos 3.2.1 12/11/97 - Released
952 1.1 christos
953 1.1 christos port to BSD/OS 3.0
954 1.1 christos
955 1.1 christos port to Linux 2.0.31
956 1.1 christos
957 1.1 christos patches to make "map a/m -> 0/0" work with ftp proxying properly - Marc Boucher
958 1.1 christos
959 1.1 christos add "ipf -F s" and "ipf -F S" to flush state table entries.
960 1.1 christos
961 1.1 christos announce if logging is on or off when ip filter initializes.
962 1.1 christos
963 1.1 christos "ipf -F a" doesn't flush groups properly for Solaris.
964 1.1 christos
965 1.1 christos 3.2 30/10/97 - Released
966 1.1 christos
967 1.1 christos ipnat doesn't successfully remove proxy mappings with "-rf" -
968 1.1 christos Alexander Romanyu
969 1.1 christos
970 1.1 christos use K&R C function style for solaris kernel code
971 1.1 christos
972 1.1 christos use m_adj() to decrease packet size in ftp proxy
973 1.1 christos
974 1.1 christos use mbufchainlen rather than msgdsize,
975 1.1 christos IRIX update - Marc Boucher
976 1.1 christos
977 1.1 christos fix NetBSD modunload bug (pfil_add_hook done twice)
978 1.1 christos
979 1.1 christos patches for OpenBSD 2.1 - Craig Bevins <craigb (at] bitcom.net.au>
980 1.1 christos
981 1.1 christos 3.2beta10 24/10/97 - Released
982 1.1 christos
983 1.1 christos fix fragment table entries allocated for NAT.
984 1.1 christos
985 1.1 christos fix tcp checksum calculations over mbuf/mblk boundaries
986 1.1 christos
987 1.1 christos fix panic for blen < 0 in ftp kernel proxy - marc boucher
988 1.1 christos
989 1.1 christos fix flushing of rules which have been grouped.
990 1.1 christos
991 1.1 christos 3.2beta9 20/10/97 - Released
992 1.1 christos
993 1.1 christos some nit picking on solaris2 with SUNWspro - Michael Lyle <mrl (at] rpnet.net>
994 1.1 christos
995 1.1 christos ftp kernel proxy patches from Marc Boucher
996 1.1 christos
997 1.1 christos 3.2beta8 13/10/97 - Released
998 1.1 christos
999 1.1 christos add support for passing ICMP errors back through NAT.
1000 1.1 christos
1001 1.1 christos IRIX port update - Marc Boucher
1002 1.1 christos
1003 1.1 christos calculate correct MIN size of packet to log for UDP - Marc Boucher
1004 1.1 christos
1005 1.1 christos need htons(ETHERTYPE_x) on little endian BSD boxes - Dave Huang
1006 1.1 christos
1007 1.1 christos copyright header fixups
1008 1.1 christos
1009 1.1 christos 3.2beta7 23/09/97 - Released
1010 1.1 christos
1011 1.1 christos fickup problems introduced by prior merges & changes.
1012 1.1 christos
1013 1.1 christos 3.2beta6 23/09/97 - Released
1014 1.1 christos
1015 1.1 christos patch for spin-reading race condition - Marc Boucher.
1016 1.1 christos
1017 1.1 christos IRIX port by Marc Boucher.
1018 1.1 christos
1019 1.1 christos compatibility updates for Linux to ipsend
1020 1.1 christos
1021 1.1 christos 3.2beta5 13/09/97 - Released
1022 1.1 christos
1023 1.1 christos patches from Bernd Ernesti for NetBSD integration (mostly prototyping and
1024 1.1 christos compiler warning things)
1025 1.1 christos
1026 1.1 christos ipf -y will resync IP#'s allocated with 0/32 in NAT to match interface if it
1027 1.1 christos changes.
1028 1.1 christos
1029 1.1 christos update manual pages and other documentation updates.
1030 1.1 christos
1031 1.1 christos 3.2beta4 27/8/97 - Released
1032 1.1 christos
1033 1.1 christos enable setting IP and TCP options for iplang/
1034 1.1 christos
1035 1.1 christos Solaris2 patches from Marc Boucher.
1036 1.1 christos
1037 1.1 christos add groups for filter rules.
1038 1.1 christos
1039 1.1 christos 3.2beta3 21/8/97 - Released
1040 1.1 christos
1041 1.1 christos patches for Solaris2 (interface panic solution ?): fix FIONREAD and
1042 1.1 christos replacing q_qinfo points - Marc Boucher <marc@CAM.ORG>
1043 1.1 christos
1044 1.1 christos change ipsend/* and ipsd/* copyright notices to be the same as ip filter's
1045 1.1 christos
1046 1.1 christos patch for SYN-ACK skew testing fix from Eric V. Smith <EricSmith (at] windsor.com>
1047 1.1 christos
1048 1.1 christos 3.2beta2 6/8/97 - Released
1049 1.1 christos
1050 1.1 christos make it load on Solaris 2.3
1051 1.1 christos
1052 1.1 christos rewrote logging to remove solaris errors, introduced checking to see if the
1053 1.1 christos same packet is logged successively.
1054 1.1 christos
1055 1.1 christos fix filter cache to work when there are no rules loaded.
1056 1.1 christos
1057 1.1 christos add "raw" option to ipresend to send entire ethernet frames.
1058 1.1 christos
1059 1.1 christos nat list corruption bug - NetBSD - Klaus Klein
1060 1.1 christos
1061 1.1 christos 3.2beta1 5/7/97 - Released
1062 1.1 christos
1063 1.1 christos patches from Jason Thorpe fixing: UNSIGNED_CHAR lossage, off_t being 64bits
1064 1.1 christos lossage, and other NetBSD bits.
1065 1.1 christos
1066 1.1 christos NetBSD 1.2G update.
1067 1.1 christos
1068 1.1 christos fixup fwtk patches and add protocol field for SIOCGNATL.
1069 1.1 christos
1070 1.1 christos rdr bugs reported by Alexander Romanyu (alexr (at] aix.krid.crimea.ua), with
1071 1.1 christos fixes:
1072 1.1 christos * rdr matched all packets of a given protocol (ignored ports).
1073 1.1 christos * severe bug in nat_delete which caused system crash/freeze.
1074 1.1 christos
1075 1.1 christos change Makefile so that CC isn't passed on for FreeBSD/NetBSD (will use
1076 1.1 christos the default CC - cc, not gcc)
1077 1.1 christos
1078 1.1 christos 3.2alpha9 16/6/97 - Released
1079 1.1 christos
1080 1.1 christos added "skip" keyword.
1081 1.1 christos
1082 1.1 christos implement preauthentication of packets, as outlined by Guido.
1083 1.1 christos
1084 1.1 christos Make it compile as cleanly as possible with -Wall & general code cleanup
1085 1.1 christos
1086 1.1 christos getopt returns int, not char. Bernd Ernesti
1087 1.1 christos
1088 1.1 christos 3.2alpha8 13/6/97 - Released
1089 1.1 christos
1090 1.1 christos code added to support "auth" rules which require a user program to allow them
1091 1.1 christos through. First revision and much of the code came from Guido.
1092 1.1 christos
1093 1.1 christos hex output from ipmon doesn't goto syslog when recovering from out of sync
1094 1.1 christos error. Luke Mewburn (lukem (at] connect.com.au)
1095 1.1 christos
1096 1.1 christos fix solaris2.6 lookup of destination ire's.
1097 1.1 christos
1098 1.1 christos ipnat doesn't throw away unused bits (after masking), causing it to
1099 1.1 christos behave incorrectly. Carson Gaspar
1100 1.1 christos
1101 1.1 christos NAT code doesn't include inteface name when matching - Alexey Mavrin
1102 1.1 christos <lha@elco.spb.ru>
1103 1.1 christos
1104 1.1 christos replace old SunOS tcpip.h with new tcpip.h (from 4.4BSD) - Jason Thorpe.
1105 1.1 christos
1106 1.1 christos update install procedures to include ip_proxy.c
1107 1.1 christos
1108 1.1 christos mask out unused bits in NAT/RDR rules.
1109 1.1 christos
1110 1.1 christos use a generic type (u_32_t) for 32bit variables, rather than rely on
1111 1.1 christos u_long being such - Jason Thorpe.
1112 1.1 christos
1113 1.1 christos create a local "netinet" directory and include from ~netinet/*" rather than
1114 1.1 christos just "*" to make keeping the code working on ports easier.
1115 1.1 christos
1116 1.1 christos add an m_copydata and m_copyback for SunOS4 (based on 4.4BSD-Lite versions)
1117 1.1 christos
1118 1.1 christos documentation updates.
1119 1.1 christos
1120 1.1 christos NetBSD update from Jason Thorpe <thorpej (at] netbsd.org>
1121 1.1 christos
1122 1.1 christos allow RST's through with a matching SEQ # and 0 ACK. Guido Van Rooij
1123 1.1 christos
1124 1.1 christos ipmon uses excessive amounts of CPU on Solaris2 - Reinhard Bertram
1125 1.1 christos <Reinhard.Bertram (at] KOM.th-darmstadt.de>
1126 1.1 christos
1127 1.1 christos 3.2alpha7 25/5/97 - Released
1128 1.1 christos
1129 1.1 christos add strlen for pre-2.2 kernels - Doug Kite <dkite (at] websgi.icomnet.com>
1130 1.1 christos
1131 1.1 christos setup bits and pieces for compiling into a FreeBSD-2.2 kernel.
1132 1.1 christos
1133 1.1 christos split up "bsd" targets. Now a separate netbsd/freebsd/bsd target.
1134 1.1 christos mln_ipl.c has been split up into itself and mlf_ipl.c (for freebsd).
1135 1.1 christos
1136 1.1 christos fix (negative) host matching in filtering.
1137 1.1 christos
1138 1.1 christos add sysctl interface for some variables when compiled into FreeBSD-2.2 kernels
1139 1.1 christos or later.
1140 1.1 christos
1141 1.1 christos make all the candidates for kernel compiling include "netinet/..." and build
1142 1.1 christos a subdirectory "netinet" when compiling and symlink all .h files into this.
1143 1.1 christos
1144 1.1 christos add install make target to Makefile.ipsend
1145 1.1 christos
1146 1.1 christos 3.2alpha6 8/5/97 - Released
1147 1.1 christos
1148 1.1 christos Add "!" (not) to hostname/ip matching.
1149 1.1 christos
1150 1.1 christos Automatically add packet info to the fragment cache if it is a fragment
1151 1.1 christos and we're translating addreses for.
1152 1.1 christos
1153 1.1 christos Automatically add packet info to the fragment cache if it is a fragment
1154 1.1 christos and we're "keeping state" for the packet.
1155 1.1 christos
1156 1.1 christos Solaris2 patches - Anthony Baxter (arb (at] connect.com.au)
1157 1.1 christos
1158 1.1 christos change install procedure for FreeBSD 2.2 to allow building to a kernel
1159 1.1 christos which is different to the running kernel.
1160 1.1 christos
1161 1.1 christos add FIONREAD for Solaris2!
1162 1.1 christos
1163 1.1 christos when expiring NAT table entries, if we would set a time to fr_tcpclosed
1164 1.1 christos (which is 1), make it fr_tcplaskack(20) so that the state tables have a
1165 1.1 christos chance to clear up.
1166 1.1 christos
1167 1.1 christos 3.2alpha5
1168 1.1 christos
1169 1.1 christos add proxying skeleton support and sample ftp transparent proxy code.
1170 1.1 christos
1171 1.1 christos add printfs at startup to tell user what is happening.
1172 1.1 christos
1173 1.1 christos add packets & bytes for EXPIRE NAT log records.
1174 1.1 christos
1175 1.1 christos fix the "install-bsd" target in the root Makefile. Chris Williams
1176 1.1 christos <psion (at] mv.mv.com>
1177 1.1 christos
1178 1.1 christos Fixes for FreeBSD 2.2 (and later revs) to prevent panics. Julian Assange.
1179 1.1 christos
1180 1.1 christos 3.2alpha4 2/4/97 - Released
1181 1.1 christos
1182 1.1 christos Some compiler warnings cleaned up.
1183 1.1 christos
1184 1.1 christos FreeBSD-2.2 patches for LKM completed.
1185 1.1 christos
1186 1.1 christos 3.2alpha3 31/3/97 - Released
1187 1.1 christos
1188 1.1 christos ipmon changes: -N for reading NAT logfile, -S for reading state logfile.
1189 1.1 christos -a for reading all. -n now toggles hostname resolution.
1190 1.1 christos
1191 1.1 christos Add logging of new state entries and expiration of old state entries.
1192 1.1 christos count log successes and failures.
1193 1.1 christos
1194 1.1 christos Add logging of new NAT entries and expiration of old NAT entries.
1195 1.1 christos count log successes and failures.
1196 1.1 christos
1197 1.1 christos Use u_quad_t for records of bytes & packets where kept
1198 1.1 christos (IP Accounting: fr_hits, fr_bytes; IP state: is_pkts, is_bytes).
1199 1.1 christos
1200 1.1 christos Fixup use of CPU and DCPU in Makefiles.
1201 1.1 christos
1202 1.1 christos Fix broken 0/32 NAT mapping. Carl Makin <cmakin (at] nla.gov.au>
1203 1.1 christos
1204 1.1 christos 3.2alpha2
1205 1.1 christos
1206 1.1 christos Implement mapping to 0/32 as being an alias for automatically using the
1207 1.1 christos interface's first IP address.
1208 1.1 christos
1209 1.1 christos Implement separate minor devices for both NAT and IP state code.
1210 1.1 christos
1211 1.1 christos Fully prototype all functions.
1212 1.1 christos
1213 1.1 christos Fix Makefile problem due to attempt to fix Sun compiling problems.
1214 1.1 christos
1215 1.1 christos 3.1.10 23/3/97 - Released
1216 1.1 christos
1217 1.1 christos ipfstat -a requires a -i or -o command line option too. Print an error
1218 1.1 christos when not present rather than attempt to do something.
1219 1.1 christos
1220 1.1 christos patch updates for SunOS4 for kernel compiling.
1221 1.1 christos patch for ipmon -s (flush's syslog file which isn't good). Andrew J. Schorr
1222 1.1 christos <schorr (at] ead.dsa.com>
1223 1.1 christos
1224 1.1 christos too many people hit their heads hard when compiling code into the kernel
1225 1.1 christos that doesn't let any packets through. (fil.c - IPF_NOMATCH)
1226 1.1 christos
1227 1.1 christos icmp-type parsing doesn't return any errors when it isn't constructed
1228 1.1 christos correctly. Neil Readwin
1229 1.1 christos
1230 1.1 christos Using "-conf" with modload on SunOS4 doesn't work.
1231 1.1 christos Timothy Demarest <demarest (at] arraycomm.com>
1232 1.1 christos
1233 1.1 christos Need to define ARCH in makefile for SunOS4 building. "make sunos4"
1234 1.1 christos in INSTALL.SunOS is incorrect. James R Grinter <jrg (at] blodwen.demon.co.uk>
1235 1.1 christos [all SunOS targets now run buildsunos]
1236 1.1 christos
1237 1.1 christos NAT lookups are still incorrect, matching non-TCP/UDP with TCP/UDP
1238 1.1 christos information. ArkanoiD <ark (at] paranoid.convey.ru>
1239 1.1 christos
1240 1.1 christos Need to check for __FreeBSD_version being 199511 rather than 199607
1241 1.1 christos in mln_ipl.c. Eric Feillant <Eric.Feillant (at] EUnet.fr>
1242 1.1 christos
1243 1.1 christos 3.1.9 8/3/97 - Released
1244 1.1 christos
1245 1.1 christos fixed incorrect lookup of active NAT entries.
1246 1.1 christos
1247 1.1 christos patch for ip_deq() wrong for pre 2.1.6 FreeBSD.
1248 1.1 christos fyeung (at] fyeung8.netific.com (Francis Yeung)
1249 1.1 christos
1250 1.1 christos check for out with return-rst/return-icmp at wrong place - Erkki Ritoniemi
1251 1.1 christos (erkki (at] vlsi.fi)
1252 1.1 christos
1253 1.1 christos text_readip returns the interface pointer pointing to text on stack -
1254 1.1 christos Neil Readwin
1255 1.1 christos
1256 1.1 christos fix from Pradeep Krishnan for printout rules "with not opt sec".
1257 1.1 christos
1258 1.1 christos 3.1.8 18/2/97 - Released
1259 1.1 christos
1260 1.1 christos Diffs for ip_output.c and ip_input.c updated to fix bug with fastroute and
1261 1.1 christos compiling warnings about reuse of m0.
1262 1.1 christos
1263 1.1 christos prevent use of return-rst and return-icmp with rules blocking packets going
1264 1.1 christos out, preventing panics in certain situations.
1265 1.1 christos
1266 1.1 christos loop forms in frag cache table - Yury Pshenychny <yura (at] rd.zgik.zaporizhzhe.ua>
1267 1.1 christos
1268 1.1 christos should use SPLNET/SPLX around expire routines in NAT/frag/state code.
1269 1.1 christos
1270 1.1 christos redeclared malloc in 44arp.c -
1271 1.1 christos
1272 1.1 christos 3.1.7 8/2/97 - Released
1273 1.1 christos
1274 1.1 christos Macros used for ntohs/htons supplied with gcc don't always work very well
1275 1.1 christos when the assignment is the same variable being converted.
1276 1.1 christos
1277 1.1 christos Filter matching doesn't not match rule which checks tcp flags on packets
1278 1.1 christos which are fragments - David Wilson
1279 1.1 christos
1280 1.1 christos 3.1.7beta 30/1/97 - Released
1281 1.1 christos
1282 1.1 christos Fix up NAT bugs introduced in last major change (now tested), including
1283 1.1 christos nat_delete(), nat_lookupredir(), checksum changes, etc.
1284 1.1 christos
1285 1.1 christos 3.1.7alpha 30/1/97 - Released
1286 1.1 christos
1287 1.1 christos Many changes to NAT code, including contributions from Laurent Joncheray
1288 1.1 christos <lpj (at] ans.net>
1289 1.1 christos
1290 1.1 christos Use "NO_SLEEP" when allocating memory under SunOS.
1291 1.1 christos
1292 1.1 christos Make kernel printf's nicer for BSD/SunOS4
1293 1.1 christos
1294 1.1 christos Always do a checksum for packets being filtered going out and being
1295 1.1 christos processed by fastroute.
1296 1.1 christos
1297 1.1 christos Leave kernel to play with cdevsw on *BSD systems with LKM's.
1298 1.1 christos
1299 1.1 christos ipnat.1 man page fixes.
1300 1.1 christos
1301 1.1 christos 3.1.6 21/1/97 - Released
1302 1.1 christos
1303 1.1 christos Allow NAT to work on BSD systems in conjunction with "pass .. to ifname"
1304 1.1 christos
1305 1.1 christos Memory leak introduced in 3.1.3 in NAT lists, clearing of NAT table tried
1306 1.1 christos to free memory twice.
1307 1.1 christos
1308 1.1 christos NAT recalculates IP header checksum based on difference between IP#'s and
1309 1.1 christos port numbers - should be just IP#'s (Solaris2 only)
1310 1.1 christos
1311 1.1 christos 3.1.5 13/1/97 - Released
1312 1.1 christos
1313 1.1 christos fixed setting of NAT timeouts and use different timeouts for concurrent
1314 1.1 christos TCP sessions using the same IP# mapping (when port mapping isn't used)
1315 1.1 christos
1316 1.1 christos multiple loading/unloading of LKM's doesn't clean up cdevsw properly for
1317 1.1 christos *BSD systems.
1318 1.1 christos
1319 1.1 christos 3.1.4 10/1/97 - Released
1320 1.1 christos
1321 1.1 christos add command line options -C and -F to ipnat to flush NAT list and table
1322 1.1 christos
1323 1.1 christos ipnat -l loops on output - Neil Readwin (nreadwin (at] nysales.micrognosis.com)
1324 1.1 christos
1325 1.1 christos NetBSD/FreeBSD kernel malloc changes - Daniel Carosone
1326 1.1 christos
1327 1.1 christos 3.1.3 10/1/97 - Released
1328 1.1 christos
1329 1.1 christos NAT chains not constructed correctly in hash tables - Antony Y.R Lu
1330 1.1 christos (antony (at] hawk.ee.ncku.edu.tw)
1331 1.1 christos
1332 1.1 christos Updated INSTALL.NetBSD, INSTALL.FreeBSD and INSTALL.Sol2
1333 1.1 christos
1334 1.1 christos man page update (ipf.5) from Daniel Carosone (dan (at] geek.com.au)
1335 1.1 christos
1336 1.1 christos ICMP header checksum update now included in NAT.
1337 1.1 christos
1338 1.1 christos Solaris2 needs to modify IP header checksums in ip_natin and ip_natout.
1339 1.1 christos
1340 1.1 christos 3.1.2 4/12/96 - Released
1341 1.1 christos
1342 1.1 christos ipmon doesn't use syslog all the time when given -s option
1343 1.1 christos
1344 1.1 christos fixed mclput panic in ip_input.c and replace ntohs() with NTOHS() macro
1345 1.1 christos
1346 1.1 christos check the results of hostname resolution in ipnat
1347 1.1 christos
1348 1.1 christos "make *install" fixed for subdirectories.
1349 1.1 christos
1350 1.1 christos problems with "ARCH:=" and gnu make resolved
1351 1.1 christos
1352 1.1 christos parser reports an error for lines with whitespaces only rather than skipping
1353 1.1 christos them. D.Carosone (at] abm.com.au (Daniel Carosone)
1354 1.1 christos
1355 1.1 christos patches for integration into NetBSD-current (post 1.2).
1356 1.1 christos
1357 1.1 christos add an option to allow non-IP packets going up/down the stream on Solaris2
1358 1.1 christos to be dropped. John Bass.
1359 1.1 christos
1360 1.1 christos 3.1.2beta 21/11/96 - Released
1361 1.1 christos
1362 1.1 christos make ipsend compile on Linux 2.0.24
1363 1.1 christos
1364 1.1 christos changes to TCP kept state algorithm, making it watch state on TCP
1365 1.1 christos connections in both directions. Also use the same algorithm for NAT TCP.
1366 1.1 christos
1367 1.1 christos -Wall cleanup - Bernd Ernesti
1368 1.1 christos
1369 1.1 christos added "or-block" for "pass .. log or-block" after a suggestion from
1370 1.1 christos David Oppenheim (davido (at] optimation.com.au)
1371 1.1 christos
1372 1.1 christos added subdirectories for building IP Filter in SunOS5/BSD for different
1373 1.1 christos cpu architecures
1374 1.1 christos
1375 1.1 christos Solaris2 fixes to logging and pre-filtering packet processing - 3.1.1p2
1376 1.1 christos
1377 1.1 christos mbuf logging not using mtod(), remove iplbusy - 3.1.1p1 1/11/96
1378 1.1 christos
1379 1.1 christos 3.1.1 28/10/96 - Released
1380 1.1 christos
1381 1.1 christos Installation script fixes and deinstall scripts for IP Filter on:
1382 1.1 christos SunOS4/FreeBSD/NetBSD
1383 1.1 christos
1384 1.1 christos Man page fixes - Paul Dubois (dubois (at] primate.wisc.edu)
1385 1.1 christos
1386 1.1 christos Fix use of SOLARIS macro in ipmon, rewrote ipllog() (again!)
1387 1.1 christos
1388 1.1 christos parsing isn't completely case insensitive - David Wilson
1389 1.1 christos (davidw (at] optimation.com.au)
1390 1.1 christos
1391 1.1 christos Release ipl_mutex across uiomove() calls
1392 1.1 christos
1393 1.1 christos print entire rule entries out for "ipf -z" when zero'ing per-rule stats.
1394 1.1 christos
1395 1.1 christos ipfstat returns same output for "hits" in "ipfstat -aio" - Terletsky Slavik
1396 1.1 christos (ts (at] polynet.lviv.ua)
1397 1.1 christos
1398 1.1 christos New algorithm for setting timeouts for TCP connection (more closely follow
1399 1.1 christos TCP FSM) - Pradeep Krishnan (pkrishna (at] netcom.com)
1400 1.1 christos
1401 1.1 christos Track both window sizes for TCP connections through "keep state".
1402 1.1 christos
1403 1.1 christos Solaris2 doesn't like _KERNEL defined in stdargs.h - Jos van Wezel
1404 1.1 christos (wezel (at] bio.vu.nl)
1405 1.1 christos
1406 1.1 christos 3.1.1-beta2 6/10/96 - Released
1407 1.1 christos
1408 1.1 christos Solaris2 fastroute/dup-to/to now works
1409 1.1 christos
1410 1.1 christos ipmon `record' reading rewritten
1411 1.1 christos
1412 1.1 christos Added post-NetBSD1.2 packet filter patches - Mathew Green (mrg (at] eterna.com.au)
1413 1.1 christos
1414 1.1 christos Attempt to use in_proto.c.diff, not "..diffs" for SunOS4 - David Wilson
1415 1.1 christos (davidw (at] optimation.com.au)
1416 1.1 christos
1417 1.1 christos Michael Ryan (mike (at] NetworX.ie) reports the following:
1418 1.1 christos * The Trumpet WinSock under Windows always sends its SYN packet with an ACK
1419 1.1 christos value of 1, unlike any other implementation I've seen, which would set it
1420 1.1 christos to zero. The "keep state" feature of IP Filter doesn't work when receiving
1421 1.1 christos non-zero ACK values on new connection requests.
1422 1.1 christos * */Makefile install rule doesn't install all the binaries/man pages
1423 1.1 christos * Make ipnat use "tcp/udp" instead of "tcpudp"
1424 1.1 christos * Print out "tcp/udp" properly
1425 1.1 christos * ipnat "portmap tcp" matches "portmap udp" when adding/removing
1426 1.1 christos * NAT dest. ip# increased by one on mask of 0xffffffff when it shouldn't
1427 1.1 christos
1428 1.1 christos 3.1.1-beta 1/9/96 - Released
1429 1.1 christos
1430 1.1 christos add better detection of TCP connections closing to TCP state monitoring.
1431 1.1 christos
1432 1.1 christos fr_addstate() not called correctly for fragments. "keep state" and
1433 1.1 christos "keep frag" code don't work together 100% - Songqing Cai
1434 1.1 christos (songqing_cai (at] sterling.com)
1435 1.1 christos
1436 1.1 christos call to fr_addstate() incorrect for adding state in combination with keeping
1437 1.1 christos fragment information - Songqing Cai (songqing_cai (at] sterling.com)
1438 1.1 christos
1439 1.1 christos KFREE() passed fp (incorrect) and not fr (correct) in ip_frag.c - John Hood
1440 1.1 christos (cgull (at] smoke.marlboro.vt.us)
1441 1.1 christos
1442 1.1 christos make ipf parser recognise '\\' as a `continued line' marker - Dima Ruban
1443 1.1 christos (dima@best.net)
1444 1.1 christos
1445 1.1 christos 3.1.1-alpha 23/8/96 - Released
1446 1.1 christos
1447 1.1 christos kernel panic's when ICMP packets go through NAT code
1448 1.1 christos
1449 1.1 christos stats aren't zero'd properly with ipf -Z
1450 1.1 christos
1451 1.1 christos ipnat doesn't show port numbers correctly all the time and also add the
1452 1.1 christos protocol (tcp/udp/tcpudp) to rdr output - Carson Gaspar (carson@lehman.com)
1453 1.1 christos
1454 1.1 christos fast checksum fixing not 100% - backout patch - Bill Dorsey (dorsey@lila.com)
1455 1.1 christos
1456 1.1 christos NetBSD-1.2 patches from - VaX#n8 <vax (at] linkdead.paranoia.com>
1457 1.1 christos
1458 1.1 christos Usage() call error in fils.c - Ajay Shekhawat (ajay@cedar.buffalo.edu)
1459 1.1 christos
1460 1.1 christos ip_optcopy() staticly defined in ip_output.c in SunOS4 - Nick Hall
1461 1.1 christos (nrh@tardis.ed.ac.uk)
1462 1.1 christos
1463 1.1 christos 3.1.0 7/7/96 - Released
1464 1.1 christos
1465 1.1 christos Reformatted ipnat output to be compatible with it's input, so that
1466 1.1 christos "ipnat -l | ipnat -rf -" is possible.
1467 1.1 christos
1468 1.1 christos 3.1.0beta 30/6/96 - Released
1469 1.1 christos
1470 1.1 christos NetBSD-1.2 patches from Greg Woods (woods (at] most.weird.com)
1471 1.1 christos
1472 1.1 christos kernel module must not be installed stripped (Solaris2), as created by
1473 1.1 christos "make package" for Solaris2 - Peter Heimann
1474 1.1 christos (peter (at] i3.informatik.rwth-aachen.de)
1475 1.1 christos
1476 1.1 christos 3.1.0alpha 5/6/96 - Released
1477 1.1 christos
1478 1.1 christos include examples in package for solaris2
1479 1.1 christos
1480 1.1 christos patches for removing an extra ip header checksum (FreeBSD/NetBSD/SunOS)
1481 1.1 christos
1482 1.1 christos removed trailing space from printouts of rules in ipf.
1483 1.1 christos
1484 1.1 christos ipresend supports the same range of inputs that ipftest does.
1485 1.1 christos
1486 1.1 christos sending a duplicate copy of a packet to another network devices is now
1487 1.1 christos supported. ("dup-to")
1488 1.1 christos
1489 1.1 christos sending a packet to an arbitary interface is now supported, irrespective
1490 1.1 christos of its actual route, with no ttl decrement. Can also be routed without
1491 1.1 christos the ttl being decremented. ("to" and "fastroute").
1492 1.1 christos
1493 1.1 christos "call" option added to support calling a generic function if a packet is
1494 1.1 christos matched.
1495 1.1 christos
1496 1.1 christos show all (upto 4) recorded bytes from the interface name in logging from
1497 1.1 christos ipmon.
1498 1.1 christos
1499 1.1 christos support for using unix file permissions for read/write access on the device
1500 1.1 christos is now in place.
1501 1.1 christos
1502 1.1 christos recursive mutex in nat_new() for Solaris 2.x - Per L. Hagen <per (at] stibo.dk>
1503 1.1 christos
1504 1.1 christos ipftest doesn't call initparse() for THISHOST - Catherine Allen
1505 1.1 christos (cla@connect.com.au)
1506 1.1 christos
1507 1.1 christos Man page corrections from Rex Bona (rex@pengo.comsmiths.com.au)
1508 1.1 christos
1509 1.1 christos 3.0.4 10/4/96 - Released
1510 1.1 christos
1511 1.1 christos looop in `parsing' IP packets with optlen 0 for ip options.
1512 1.1 christos
1513 1.1 christos rule number not initialized and resulted in unexpected results for state
1514 1.1 christos maching.
1515 1.1 christos
1516 1.1 christos option parsing and printing bugs - Pradeep Krishnan
1517 1.1 christos
1518 1.1 christos 3.0.4beta 25/3/96 - Released
1519 1.1 christos
1520 1.1 christos wouldn't parse "keep flags keep state" correctly.
1521 1.1 christos
1522 1.1 christos SunOS4.1.x ip_input.c doesn't recognise all 1s broadcast address - Nigel Verdon
1523 1.1 christos
1524 1.1 christos patches for BSDI's BSD/OS 2.1 and libpcap reader on little endian systems
1525 1.1 christos from Thorsten Lockert <tholo (at] tetherless.com>
1526 1.1 christos
1527 1.1 christos b* functions in fil.c on Solaris 2.4
1528 1.1 christos
1529 1.1 christos 3.0.3 17/3/96 - Released
1530 1.1 christos
1531 1.1 christos added patches to support IP Filter initialisation when compiled into the
1532 1.1 christos kernel.
1533 1.1 christos
1534 1.1 christos added -x option to ipmon to display hex dumps of logged packets.
1535 1.1 christos
1536 1.1 christos added -H option to ipftest to allow ascii-hex formatted input to specify
1537 1.1 christos arbitary IP packets.
1538 1.1 christos
1539 1.1 christos Sending TCP RSTs as a response now work for Solaris2 x86
1540 1.1 christos
1541 1.1 christos add patches to make IP Filter compile into NetBSD kernels properly.
1542 1.1 christos
1543 1.1 christos patch to stop SunOS 4.1.x kernels panicing with "data traps".
1544 1.1 christos
1545 1.1 christos ipfboot script unloads and reloads ipf module on Solaris2 if it is already
1546 1.1 christos loaded into the kernel.
1547 1.1 christos
1548 1.1 christos Installation of IP Filter as a Solaris2 package is now supported.
1549 1.1 christos
1550 1.1 christos Man pages for ipnat.4, ipnat.5 added.
1551 1.1 christos
1552 1.1 christos added some more regression tests and fixed up IP Filter to pass the new tests
1553 1.1 christos (previous versions failed some of the tests in set 12).
1554 1.1 christos
1555 1.1 christos IP option filter processing has changed so that saying "with opt lsrr" will
1556 1.1 christos check only for that one, but not mask out other options, so a packet with
1557 1.1 christos strict source routing, along with loose source routing will match all of
1558 1.1 christos "with opt lsrr", "with opt ssrr" and "with opt lsrr,ssrr".
1559 1.1 christos
1560 1.1 christos IPL_NAME needed in ipnat.c - Kelly (kelly (at] count04.mry.scruznet.com)
1561 1.1 christos
1562 1.1 christos patches for clean NetBSD compilation from Bernd Ernesti (bernd (at] arresum.inka.de)
1563 1.1 christos
1564 1.1 christos make install is incorrect - Julian Briggs (julian (at] lightwork.co.uk)
1565 1.1 christos
1566 1.1 christos strtol() returns 0x7fffffff for all negative numbers,
1567 1.1 christos printfr() generates incorrect output for "opt sec-class *",
1568 1.1 christos handling of "not opt xxx opt yyy" incorrect.
1569 1.1 christos - Minh Tonthat (minht (at] sbei.com)/Pradeep Krishnan (pradeepk (at] sbei.com)
1570 1.1 christos
1571 1.1 christos m_pullup() called only for input and not output; caused problems
1572 1.1 christos with filtering icmp - Nigel Verdon (verdenn (at] gb.swissbank.com)
1573 1.1 christos
1574 1.1 christos parsing problem for "port 1" and NetBSD patches incorrect -
1575 1.1 christos Andreas Gustafsson (gson (at] guava.araneus.fi)
1576 1.1 christos
1577 1.1 christos 3.0.2 4/2/96 - Released
1578 1.1 christos
1579 1.1 christos Corrected bug where NAT recalculates checksums for fragments.
1580 1.1 christos
1581 1.1 christos make NAT recalculate UDP checksums (rather than setting them to 0),
1582 1.1 christos if they're non-zero.
1583 1.1 christos
1584 1.1 christos DNS patches - Real Page (Real.Page (at] Matrox.com)
1585 1.1 christos
1586 1.1 christos alteration of checksum recalculations in NAT code and addition of
1587 1.1 christos redirection with NAT - Mike Neuman
1588 1.1 christos
1589 1.1 christos core dump, if tcp/udp is used with a port number and not service name,
1590 1.1 christos in ipf - Mike Neuman (mcn (at] engarde.com)
1591 1.1 christos
1592 1.1 christos initparse() call, missing to prime "<thishost>" hook - Craig Bishop
1593 1.1 christos
1594 1.1 christos 3.0.1 14/1/96 - Released
1595 1.1 christos
1596 1.1 christos miscellaneous patches for Solaris2
1597 1.1 christos
1598 1.1 christos 3.0 14/1/96 - Released
1599 1.1 christos
1600 1.1 christos Patch included for FDDI, from Richard Ohnemus
1601 1.1 christos (Richard_Ohnemus (at] dallas.csd.sterling.com)
1602 1.1 christos
1603 1.1 christos Code cleanup for release.
1604 1.1 christos
1605 1.1 christos 3.0beta4 10/1/96
1606 1.1 christos
1607 1.1 christos recursive mutex in ipfr_slowtimer fixed, reported by Craig Bishop
1608 1.1 christos
1609 1.1 christos recursive mutex in sending TCP RSTs fixed, reported by Tony Becker
1610 1.1 christos
1611 1.1 christos 3.0beta3 9/1/96
1612 1.1 christos
1613 1.1 christos FIxup for Solaris2.5 install and interface name bug in ipftest from
1614 1.1 christos Julian Briggs (julian (at] lightwork.co.uk)
1615 1.1 christos
1616 1.1 christos Byte order patches for ipmon from Tony Becker (tony (at] mcrsys.com)
1617 1.1 christos
1618 1.1 christos 3.0beta2 7/1/96
1619 1.1 christos
1620 1.1 christos Added the (somewhat warped) IP accounting as it exists in ipfw on FreeBSD.
1621 1.1 christos Note, this isn't really what one would call IP account, when compared to
1622 1.1 christos process accounting, sigh.
1623 1.1 christos
1624 1.1 christos Split up ipresend into iptest/ipresend/ipsend
1625 1.1 christos
1626 1.1 christos Added another m_pullup() inside fr_check() for BSD style kernels and
1627 1.1 christos added some checks to ipllog() to not log more than is present (for short
1628 1.1 christos packets).
1629 1.1 christos
1630 1.1 christos Fixed bug where failed hostname/netname resolution goes undetecte and
1631 1.1 christos becomes 0.0.0.0 (any) (reported Guido van Rooij)
1632 1.1 christos
1633 1.1 christos 3.0beta 11/11/95 - Released
1634 1.1 christos
1635 1.1 christos Rewrote the way rule testing is done, reducing the number of files needed and
1636 1.1 christos generated.
1637 1.1 christos
1638 1.1 christos SIOCIPFFL was incorrectly affected by IPFILTER_LOG (Mathew Green)
1639 1.1 christos
1640 1.1 christos Patches from Guido van Rooij to fix sending back TCP RSTs on Net-2/Net-3
1641 1.1 christos BSD based Unixes (panic'd)
1642 1.1 christos
1643 1.1 christos Patches for FreeBSD/i86 ipmon from Riku Kalinen <riku (at] tequila.nixu.fi>
1644 1.1 christos (I think someone else already told me about these but they got lost :-/)
1645 1.1 christos
1646 1.1 christos Changed Makefile structure to build object files for different operating
1647 1.1 christos systems in separate directories by default.
1648 1.1 christos
1649 1.1 christos BSDI has ef0 for first ethernet interface
1650 1.1 christos
1651 1.1 christos Allow for a "not" operator before optional keywords.
1652 1.1 christos
1653 1.1 christos The "rule number" was being incorrectly incremented every time it went through
1654 1.1 christos the loop rather than when it matched a rule.
1655 1.1 christos
1656 1.1 christos 2.8.2 24/10/95 - Released
1657 1.1 christos
1658 1.1 christos Fixed up problems with "textip" for doing lots of testing.
1659 1.1 christos
1660 1.1 christos Fixed bug in detection of "short" tcp/ip packets (all reported as being short).
1661 1.1 christos
1662 1.1 christos Solaris 2.4 port now works 100%.
1663 1.1 christos
1664 1.1 christos Man page errors reported and fixed.
1665 1.1 christos
1666 1.1 christos Removed duplicate entry in etc/services for login on port 49 (Craig Bishop).
1667 1.1 christos
1668 1.1 christos Fixed ipmon output to put a space after the log-letter.
1669 1.1 christos
1670 1.1 christos Patch from Guido van Rooij to fix parsing problem.
1671 1.1 christos
1672 1.1 christos 2.8.1 15/10/95 - Released
1673 1.1 christos
1674 1.1 christos Added ttl and tos filtering.
1675 1.1 christos
1676 1.1 christos Patches for fixing up compilation and port problems (little endian)
1677 1.1 christos from Guido van Rooij <guido (at] IAEhv.nl>.
1678 1.1 christos
1679 1.1 christos Man page problems reported and fixed by Carson Gaspar <carson (at] lehman.com>.
1680 1.1 christos
1681 1.1 christos ipsend doesn't compile properly on Solaris2.4
1682 1.1 christos
1683 1.1 christos Lots of work done for Solaris2.4 to make it MT/MP safe and work.
1684 1.1 christos
1685 1.1 christos 2.8 15/9/95 - Released
1686 1.1 christos
1687 1.1 christos ipmon can now send messages to syslogd (-s) and use names instead of
1688 1.1 christos numbers (-N).
1689 1.1 christos
1690 1.1 christos IP packets are now "compiled" into a structure only containing filterable
1691 1.1 christos bits.
1692 1.1 christos
1693 1.1 christos Added regression testing in the test/ subdirectory, using a new option
1694 1.1 christos (-b) with the ipftest program.
1695 1.1 christos
1696 1.1 christos Added "nomatch" return to filter results. These are counted and show
1697 1.1 christos up in reports from ipfstat.
1698 1.1 christos
1699 1.1 christos Moved filter code out of ip_fil.c and into fil.c - there is now only one
1700 1.1 christos instance of it in the package.
1701 1.1 christos
1702 1.1 christos Added Solaris 2.4 support.
1703 1.1 christos
1704 1.1 christos Added IPSO basic security option filtering.
1705 1.1 christos
1706 1.1 christos Added name support for filtering on all 19 named IP options.
1707 1.1 christos
1708 1.1 christos Patches from Ivan Brawley to log packet contents as well as packet headers.
1709 1.1 christos
1710 1.1 christos Update for sun/conf.c.diff from Ivan Brawley <ibrawley (at] awadi.com.AU>
1711 1.1 christos
1712 1.1 christos Added patches for FreeBSD 1, and added two new switches (-E, -D) to ipf,
1713 1.1 christos along with a new ioctl, SIOCFRENB.
1714 1.1 christos From: Dieter Dworkin Muller <dworkin (at] village.org>
1715 1.1 christos
1716 1.1 christos 2.7.3 31/7.95 - Released
1717 1.1 christos
1718 1.1 christos Didn't compile cleanly without IPFILTER_LOG defined (Mathew Green).
1719 1.1 christos
1720 1.1 christos ipftest now deals with tcpdump3 binary output files (from libpcap) with -P.
1721 1.1 christos
1722 1.1 christos Brought ipftest program upto date with actual filter code.
1723 1.1 christos
1724 1.1 christos Filter would cause a match to occur when it wasn't meant to if the packet
1725 1.1 christos had short headers and was missing portions that should have been there.
1726 1.1 christos Err, it would rightly not match on them, but their absence caused a match
1727 1.1 christos when it shouldn't have been.
1728 1.1 christos
1729 1.1 christos 2.7.2 26/7/95 - Released
1730 1.1 christos
1731 1.1 christos Problem with filtering just SYN flagged packets reported by
1732 1.1 christos Dieter Dworkin Muller <dworkin (at] village.org>. To solve this
1733 1.1 christos problem, added support for masking TCP flags for comparison "flags X/Y".
1734 1.1 christos
1735 1.1 christos 2.7.1 9/7/95 - Released
1736 1.1 christos
1737 1.1 christos Added ip_dirbroadcast support for Sun ip_input.c
1738 1.1 christos
1739 1.1 christos Fixed up the install scripts for FreeBSD/NetBSD to recognise where they are
1740 1.1 christos better.
1741 1.1 christos
1742 1.1 christos 2.7 7/7/95 - Released
1743 1.1 christos
1744 1.1 christos Added "return-rst" to return TCP RST's to TCP packets.
1745 1.1 christos
1746 1.1 christos Actually ported it to FreeBSD-i386 2.0.0, so it works there properly now.
1747 1.1 christos
1748 1.1 christos Added insertion of filter rules. Use "@<#>" at the beginning of a filter
1749 1.1 christos to insert a rule at row #.
1750 1.1 christos
1751 1.1 christos Filter keeps track of how many times each rule is matched.
1752 1.1 christos
1753 1.1 christos Changed compile time things to match kernel option (IPFILTER_LKM &
1754 1.1 christos IPFILTER_LOG).
1755 1.1 christos
1756 1.1 christos Updated ip_input.c and ip_output.c with paches for 3.5 Multicast IP.
1757 1.1 christos (No change required for 3.6)
1758 1.1 christos
1759 1.1 christos Now includes TCP fragments which start inside the TCP header as being short.
1760 1.1 christos Added counting the number of times each rule is matched.
1761 1.1 christos
1762 1.1 christos
1763 1.1 christos 2.6 11/5/95 - Released
1764 1.1 christos
1765 1.1 christos Added -n option to ipf: when supplied, no changes are made to the kernel.
1766 1.1 christos
1767 1.1 christos Added installation scripts for SunOS 4.1.x and NetBSD/FreeBSD/BSDI.
1768 1.1 christos
1769 1.1 christos Rewrote filtering to use a more generic mask & match procedure for
1770 1.1 christos checking if a packet matches a rule.
1771 1.1 christos
1772 1.1 christos 2.5.2 27/4/95 - Released
1773 1.1 christos
1774 1.1 christos "tcp/udp" and a non-initialised pointer caused the "proto" to become
1775 1.1 christos a `random' value; added "ip#/dotted.mask" notation to the BNF.
1776 1.1 christos From Adam W. Feigin <feigin (at] iis.ee.ethz.ch>
1777 1.1 christos
1778 1.1 christos 2.5.1 22/3/95 - Released
1779 1.1 christos
1780 1.1 christos "tcp/udp" had a strange effect (undesired) on getserv*() functions,
1781 1.1 christos causing protocol/service lookups to fail. Reported by Matthew Green.
1782 1.1 christos
1783 1.1 christos 2.5 17/3/95 - Released
1784 1.1 christos
1785 1.1 christos Added a new keyword "all" to BNF and parsing of tcpdump/etherfind/snoop
1786 1.1 christos output through the ipftest program. Suggestions from:
1787 1.1 christos Michael Ciavarella (mikec (at] phyto.apana.org.au)
1788 1.1 christos
1789 1.1 christos Conflicts occur when "general" filter rules are used for ports and the
1790 1.1 christos lack of a "proto" when used with "port" matches other packets when only
1791 1.1 christos TCP/UDP are implied.
1792 1.1 christos Reported Matthew Green (mrg (at] fulcom.com.au);
1793 1.1 christos reported & fixed 6-8/3/95
1794 1.1 christos
1795 1.1 christos Added filtering of short TCP packets using "with short" 28/2/95
1796 1.1 christos (These can possibly slip by checks for the various flags). Short UDP
1797 1.1 christos or ICMP are dropped to the floor and logged.
1798 1.1 christos
1799 1.1 christos Added filtering of fragmented packets using "with frag" 24/2/95
1800 1.1 christos
1801 1.1 christos Port to NetBSD-current completed 20/2/95, using LKM.
1802 1.1 christos
1803 1.1 christos Added logging of the rule # which caused the logging to happen and the
1804 1.1 christos interface on which the packet is currently as suggested by
1805 1.1 christos Andreas Greulich (greulich (at] math-stat.unibe.ch) 10/2/95
1806 1.1 christos
1807 1.1 christos 2.4 9/2/95 - Released
1808 1.1 christos Fixed saving of IP headers in ICMP packets.
1809 1.1 christos
1810 1.1 christos 2.3 29/1/95
1811 1.1 christos Added ipf -F [in|out|all] to flush filter rule sets (SIOCIPFFL).
1812 1.1 christos Fixed iplread() and iplsave() with help from Marc Huber.
1813 1.1 christos
1814 1.1 christos 2.2 7/1/95 - Released
1815 1.1 christos Added code from Marc Huber <huber (at] fzi.de> to allow it to allocate
1816 1.1 christos its own major char number dynamically when modload'ing. Fixed up
1817 1.1 christos use of <, >, <=, >= and >< for ports.
1818 1.1 christos
1819 1.1 christos 2.1 21/12/94 - Released
1820 1.1 christos repackaged to include the correct ip_output.c and ip_input.c *goof*
1821 1.1 christos
1822 1.1 christos 2.0 18/12/94 - Released
1823 1.1 christos added code to check for port ranges - complete.
1824 1.1 christos rewrote to work as a loadable kernel module - complete.
1825 1.1 christos
1826 1.1 christos 1.1
1827 1.1 christos added code for ouput filtering as well as input filtering and added support for logging to a simple character device of packet headers.
1828 1.1 christos
1829 1.1 christos 1.0 22/04/93 - Released
1830 1.1 christos First release cut.
1831