cvs commit: src/sys/netinet ip_carp.c ip_carp.h

Gleb Smirnoff glebius at FreeBSD.org
Tue Mar 21 14:29:49 UTC 2006


glebius     2006-03-21 14:29:48 UTC

  FreeBSD src repository

  Modified files:
    sys/netinet          ip_carp.c ip_carp.h 
  Log:
  o Introduce carp_multicast_cleanup(), which removes and frees
    multicast addresses from carp interface. [1]
  o Rewrite carpdetach(), so that it does the following things: [1]
    - Stops callouts.
    - Decrements carp_suppress_preempt, if needed.
    - Downs interface and sets CARP state to INIT.
    - Calls carp_multicast_cleanup().
    - Detaches softc from carp_if and if we are the last frees
      the carp_if.
  o Use new carpdetach() in carp_clone_destroy().
  o In carp_ifdetach() acquire the carp_if lock and cleanup all
    interfaces hanging on carp_if. [1]
  o Make carp_ifdetach() static and use EVENT(9) to call it
    from if_detach(). [2]
  o In carp_setrun() exit if the softc doesn't have a valid pointer
    to parent. [1]
  
  Obtained from:  OpenBSD [1]
  Submitted by:   Dan Lukes <dan obluda.cz> [2]
  PR:             kern/82908 [2]
  
  Revision  Changes    Path
  1.39      +101 -84   src/sys/netinet/ip_carp.c
  1.2       +0 -1      src/sys/netinet/ip_carp.h


More information about the cvs-src mailing list