Deleted Added
full compact
ip_fil_freebsd.c (161356) ip_fil_freebsd.c (163027)
1/* $FreeBSD: head/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c 161356 2006-08-16 12:06:35Z guido $ */
1/* $FreeBSD: head/sys/contrib/ipfilter/netinet/ip_fil_freebsd.c 163027 2006-10-05 09:48:25Z oleg $ */
2
3/*
4 * Copyright (C) 1993-2003 by Darren Reed.
5 *
6 * See the IPFILTER.LICENCE file for details on licencing.
7 */
8#if !defined(lint)
9static const char sccsid[] = "@(#)ip_fil.c 2.41 6/5/96 (C) 1993-2000 Darren Reed";

--- 466 unchanged lines hidden (view full) ---

476 return EIO;
477 if (cmd != SIOCIPFGETNEXT && cmd != SIOCIPFGET &&
478 cmd != SIOCIPFSET && cmd != SIOCFRENB &&
479 cmd != SIOCGETFS && cmd != SIOCGETFF)
480 return EIO;
481 }
482
483 SPL_NET(s);
2
3/*
4 * Copyright (C) 1993-2003 by Darren Reed.
5 *
6 * See the IPFILTER.LICENCE file for details on licencing.
7 */
8#if !defined(lint)
9static const char sccsid[] = "@(#)ip_fil.c 2.41 6/5/96 (C) 1993-2000 Darren Reed";

--- 466 unchanged lines hidden (view full) ---

476 return EIO;
477 if (cmd != SIOCIPFGETNEXT && cmd != SIOCIPFGET &&
478 cmd != SIOCIPFSET && cmd != SIOCFRENB &&
479 cmd != SIOCGETFS && cmd != SIOCGETFF)
480 return EIO;
481 }
482
483 SPL_NET(s);
484 READ_ENTER(&ipf_global);
484 if (fr_running > 0)
485 READ_ENTER(&ipf_global);
485
486 error = fr_ioctlswitch(unit, data, cmd, mode);
487 if (error != -1) {
488 RWLOCK_EXIT(&ipf_global);
489 SPL_X(s);
490 return error;
491 }
492 error = 0;

--- 16 unchanged lines hidden (view full) ---

509 error = 0;
510 else
511 error = iplattach();
512 if (error == 0)
513 fr_running = 1;
514 else
515 (void) ipldetach();
516 } else {
486
487 error = fr_ioctlswitch(unit, data, cmd, mode);
488 if (error != -1) {
489 RWLOCK_EXIT(&ipf_global);
490 SPL_X(s);
491 return error;
492 }
493 error = 0;

--- 16 unchanged lines hidden (view full) ---

510 error = 0;
511 else
512 error = iplattach();
513 if (error == 0)
514 fr_running = 1;
515 else
516 (void) ipldetach();
517 } else {
517 error = ipldetach();
518 if (fr_running <= 0)
519 error = 0;
520 else
521 error = ipldetach();
518 if (error == 0)
519 fr_running = -1;
520 }
521 }
522 break;
523 case SIOCIPFSET :
524 if (!(mode & FWRITE)) {
525 error = EPERM;

--- 96 unchanged lines hidden (view full) ---

622 frsync(NULL);
623 }
624 break;
625 default :
626 error = EINVAL;
627 break;
628 }
629
522 if (error == 0)
523 fr_running = -1;
524 }
525 }
526 break;
527 case SIOCIPFSET :
528 if (!(mode & FWRITE)) {
529 error = EPERM;

--- 96 unchanged lines hidden (view full) ---

626 frsync(NULL);
627 }
628 break;
629 default :
630 error = EINVAL;
631 break;
632 }
633
630 RWLOCK_EXIT(&ipf_global);
634 if (fr_running > 0)
635 if (mtx_owned(&(&ipf_global)->ipf_lk))
636 RWLOCK_EXIT(&ipf_global);
631 SPL_X(s);
632
633 return error;
634}
635
636
637#if 0
638void fr_forgetifp(ifp)

--- 1100 unchanged lines hidden ---
637 SPL_X(s);
638
639 return error;
640}
641
642
643#if 0
644void fr_forgetifp(ifp)

--- 1100 unchanged lines hidden ---