summaryrefslogtreecommitdiff
path: root/sys/net/pf.c
AgeCommit message (Collapse)Author
2001-07-17normalize ip_off, make IP_DF stripping optional, return rst is a flag now.Niels Provos
okay markus@
2001-07-17split ip normalization out into a separate file, okay dhartmei@Niels Provos
2001-07-15increase src->state to 1 when creating state from intermediate (non-SYN) ↵Daniel Hartmeier
packets. this fixes one class of BAD state messages (where seqlo=0, seqhi=1).
2001-07-14use int instead of signed char. doesn't use more memory (padding occurs) and ↵Daniel Hartmeier
is actually faster.
2001-07-13indent.Federico G. Schwindt
2001-07-13everytime i clean in here, i get a 250 line diff...Theo de Raadt
2001-07-11Simplify pf_pull_hdr(), don't use inner IP header's ip_len or ip_offDaniel Hartmeier
in case of pf_test_state_icmp(). This solves the "ICMP error message too short" problems. Reported by ycchang and heko.
2001-07-09do compare in host order. found by millert@.Daniel Hartmeier
2001-07-09Extend nat/rdr syntax. Add source/destination selection. MakeDaniel Hartmeier
interface optional. Suggested by rdump@river.com. nat [on [!] <ifname>] from (any | [!] <addr>[/<mask>]) to (any | [!] <addr>[/<mask>]) -> <addr> [proto (tcp | udp | icmp)] rdr [on [!] <ifname>] from (any | [!] <addr>[/<mask>]) to (any | [!] <addr>[/<mask>]) port <a>[:<b>] -> <addr> port <c>[:*] [proto (tcp | udp | icmp)]
2001-07-07get rid of compiler warningMarco S Hyman
2001-07-06style change #2, avoid (a == b) == cDaniel Hartmeier
2001-07-06style change #1, avoid ternary operatorDaniel Hartmeier
2001-07-06theo requests less archaic styleChris Cappuccio
2001-07-06don't evaluate rules for packets that have state but mismatch seq range ↵Daniel Hartmeier
(could create duplicate state)
2001-07-06Allow negative match on interface name for nat and rdrChris Cappuccio
ok dhartmei@
2001-07-06some cleanup, okay dhartmei@Niels Provos
2001-07-05initalize fragment correctlyNiels Provos
2001-07-04call ip_output() correctly, use ICMP_MINLEN, only m_copyback() where needed. ↵Daniel Hartmeier
ok deraadt@
2001-07-03grr, you guys keep not obeying KNFTheo de Raadt
2001-07-03add DIOCNATLOOK ioctl and pf_natlook structure, this enables a userlandBob Beck
process recieving rdr'ed connections to look up the original destination of the connection before it was redirected - this enables the writing of transparent proxies.
2001-07-02another memory leakNiels Provos
2001-07-02fix memory leakNiels Provos
2001-07-01-WallDug Song
2001-07-01tag packets generated by pf (return-rst, return-icmp) so they are not ↵Daniel Hartmeier
filtered, use existing icmp_error() and ip_output(). ok dugsong@, frantzen@
2001-07-01Add port ranges to the rdr directive. Connections can be redirectedKjell Wooding
to either a range of the same size, or a single port. Redirects between ranges of different sizes are not supported. Eg: rdr dc0 10.0.0.0/24 port 60000:61000 -> 127.0.0.1 port 65530:* proto udp rdr xl0 0.0.0.0/0 port 6660:6669 -> 127.0.0.1 port 6667 proto tcp This replaces the wildcard port patch (when port = 0), as it should no longer be necessary. ok dhartmei@
2001-07-01for ICMP error messages refering to TCP packets, only use the first 8 bytes ↵Daniel Hartmeier
of the TCP header. drop ackskew test and th_sum update.
2001-06-29Prepend pf_ to limit potential namespace problems, shorten some lines.Niklas Hallqvist
2001-06-29list instead of tailq for frents, use pool hardlimits, correctly freeNiels Provos
after complete reassembly
2001-06-28lower hiwat limits, enforce hi water markNiels Provos
2001-06-28add tree traversal code (new pf_tree_node->parent), dump states TAILQ and ↵Daniel Hartmeier
traverse a tree instead.
2001-06-28wrap 5-tuple rule match with MATCH_TUPLE. from ben fleis <ben@monkey.org>Dug Song
2001-06-28forgot to init fr_timeoutNiels Provos
2001-06-28first stab at packet normalization. includes full ip reassembly.Niels Provos
okay dhartmei@, dugsong@
2001-06-28Disallow filter modification when the system is "highly secure".Hugh Graham
Passed by dhartmei.
2001-06-27change pf_tree_key->addr[2] from u_int32_t to struct in_addr for NielsDaniel Hartmeier
2001-06-27in rdr rules, let port 0 be the port wildcard; ok dhartmei@jasoni
2001-06-27change pf_tree_node->state to void *, so Niels can use a tree for fragment ↵Daniel Hartmeier
handling
2001-06-27use proper icmp defineNiels Provos
2001-06-27add -z flag for zeroing statistics. -s status no longer resets anythingKjell Wooding
2001-06-27add microtime, which seems to have gotten lost.Kjell Wooding
2001-06-27big KNFTheo de Raadt
2001-06-27remove unneccessary check in ioctlTheo de Raadt
2001-06-27typoDug Song
2001-06-27for other protocols, keep correct track of match statsNiels Provos
2001-06-27handle non-TCP/UDP/ICMP protocolsDug Song
2001-06-27remove print_ip, its unusedNiels Provos
2001-06-27clean up TAILQ usageNiels Provos
2001-06-27KNFNiels Provos
2001-06-27only set reason code match if there was a rule that we matchedNiels Provos
2001-06-26update match countsNiels Provos