summaryrefslogtreecommitdiffstats
path: root/usr.sbin/ppp/ip.c
diff options
context:
space:
mode:
authoramurai <amurai@FreeBSD.org>1995-09-17 16:14:49 +0000
committeramurai <amurai@FreeBSD.org>1995-09-17 16:14:49 +0000
commitc47a4a8b716b935c41530d96c32a1a6a7f7b5a21 (patch)
tree26567a7b0b754d9b0744b81e640985c792a50ece /usr.sbin/ppp/ip.c
parent5fbb48dfae20bde52457f4a3ee5008a0afde7cbd (diff)
downloadFreeBSD-src-c47a4a8b716b935c41530d96c32a1a6a7f7b5a21.zip
FreeBSD-src-c47a4a8b716b935c41530d96c32a1a6a7f7b5a21.tar.gz
1. All fragments (except the first one) of a fragmented packet were
dropped - devet@adv.IAEhv.nl (Arjan de Vet) 2. Will not read data from telnet connection - John Capo <jc@irbs.com> 3. Using LQM option could be drop the link due to LcpLayerDown() doesn't stop LQR timer. - Brian <brian@awfulhak.demon.co.uk> 4. Allow to describe a syntax of filters that is not only port number but also by name in /etc/service. - Rich Murphey <rich@lamprey.utmb.edu> Reviewed by: Atsushi Murai <amurai@spec.co.jp> Submitted by: devet@adv.IAEhv.nl, jc@irbs.com, brian@awfulhak.demon.co.uk, rich@lamprey.utmb.edu
Diffstat (limited to 'usr.sbin/ppp/ip.c')
-rw-r--r--usr.sbin/ppp/ip.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/usr.sbin/ppp/ip.c b/usr.sbin/ppp/ip.c
index c25b56c..16cdf1f 100644
--- a/usr.sbin/ppp/ip.c
+++ b/usr.sbin/ppp/ip.c
@@ -17,7 +17,7 @@
* IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
* WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
- * $Id: ip.c,v 1.3 1995/03/11 15:18:42 amurai Exp $
+ * $Id: ip.c,v 1.4 1995/05/30 03:50:37 rgrimes Exp $
*
* TODO:
* o Return ICMP message for filterd packet
@@ -131,6 +131,11 @@ int direction;
sport = dport = 0;
for (n = 0; n < MAXFILTERS; n++) {
if (fp->action) {
+ /* permit fragments on in and out filter */
+ if ((direction == FL_IN || direction == FL_OUT) &&
+ (pip->ip_off & IP_OFFMASK) != 0) {
+ return(A_PERMIT);
+ }
#ifdef DEBUG
logprintf("rule = %d\n", n);
#endif
OpenPOWER on IntegriCloud