Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 18 May 1998 13:11:11 -0700 (PDT)
From:      Julian Elischer <julian@whistle.com>
To:        Luigi Rizzo <luigi@labinfo.iet.unipi.it>
Cc:        current@FreeBSD.ORG
Subject:   Re: struct ifnet handling...
Message-ID:  <Pine.BSF.3.95.980518125606.18931C-100000@current1.whistle.com>
In-Reply-To: <199805181458.QAA07273@labinfo.iet.unipi.it>

next in thread | previous in thread | raw e-mail | index | archive | help

NO
I have reference counting patches checked in in a branch
called WHISTLE_NET_BRANCH_1
(e.g. check out the cvs log for if.c, route.c and a few others.)
It's absolutly needed for dynamic interfaces (endpoints)

julian
 
On Mon, 18 May 1998, Luigi Rizzo wrote:

> While trying to optimise interface matches in the firewall code (see
> below), i noticed that there is no if_detach() call. This would be
> consistent with the absence of reference counts for the "struct
> ifnet" . Can i safely assume that this will continue to be true
> in the future ?
> 
> The reason i am interested in this: currently, interface names in the
> firewall code are done using strncmp(). However, if interfaces are
> never deallocated, one can
>   1) make sure that two interface with the same name also have the
>      same pointer in if_name (this actually already happens, since the
>      code to initialize it is the same e.g.
> 
> 	ifp->if_name = "tun" ;
> 
>      but i realized that after writing the 10 lines or so to implement
>      it).
> 
>   2) when adding ipfw rules, match the string passed as the interface
>      name with some of the if_name fields (possibly returning an error
>      if the name does not match any of the existing ones) and replace
>      the string with a pointer to the same string as used in struct
>      ifnet.
> 
> When this is done, matching interface names requires only a pointer
> comparison (and furthermore, a NULL pointer can be used as an
> indication that no interface match is required).
> 
> Comments ?
> 
> 	cheers
> 	luigi
> -----------------------------+--------------------------------------
> Luigi Rizzo                  |  Dip. di Ingegneria dell'Informazione
> email: luigi@iet.unipi.it    |  Universita' di Pisa
> tel: +39-50-568533           |  via Diotisalvi 2, 56126 PISA (Italy)
> fax: +39-50-568522           |  http://www.iet.unipi.it/~luigi/
> _____________________________|______________________________________
> 
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-current" in the body of the message
> 


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.3.95.980518125606.18931C-100000>