(Cc'ing Kais, as he's the case owner)

On Thu, 2008-10-30 at 14:17 -0400, Sebastien Roy wrote:
> I'll re-send updates to the text in a moment.

Here is the updated text based on Meem's input.  It's a bit lengthy for
a spec update, but I don't believe that it would change anyone's vote on
the case.

1. Additions for libdlpi.so

   The approved spec contained the following text:

      Moreover, in order to shield applications from the details of
      accessing these and other upcoming DLPI devices proposed by
      Clearview, we will be proposing a public libdlpi.so library as
      part of an upcoming case.

   That case was PSARC 2006/436, and the dlpi_open() function is the
   function that shields applications from the details of DLPI device
   access.  Two new dlpi_open() flags are being included with this
   case to implement this:

   DLPI_DEVIPNET        Causes dlpi_open() to only open DLPI style-1
                        devices from the /dev/ipnet directory.

   DLPI_IPNETINFO       Causes dlpi_open() to issue a DLIPNETINFO
                        ioctl to the DLPI device after opening it,
                        thereby enabling the inclusion of
                        dl_ipnetinfo_t headers in front of received
                        packets from /dev/ipnet or /dev/lo0 devices.

   A new libdlpi error code, DLPI_EIPNETINFONOTSUP, is also included.
   The dlpi_open() function fails with this error if the
   DLPI_IPNETINFO flag was set but the device opened doesn't support
   the DLIOCIPNETINFO ioctl.

2. Miscelaneous Symbol Name Changes

   Original Interface     New Interface                 Comment
   -----------------------------------------------------------------------
   DL_IOC_IPNET_INFO      DLIOCIPNETINFO                <sys/dlpi.h>
   struct dl_ipnet_info   dl_ipnetinfo_t                <sys/dlpi.h>
   net_getlif_flags()     net_getlifflags()             <sys/neti.h>
   ips_register_hook()    ipobs_register_hook()         (Project Private)
   ips_unregister_hook()  ipobs_unregister_hook()       (Project Private)
   zoneid                 zone                          snoop keyword
   PRIV_IP_OBSERVABILITY  PRIV_NET_OBSERVABILITY

3. <inet/ipnet.h> is not Committed

   As approved, the <inet/ipnet.h> was a Committed interface because
   it contained the Committed DL_IOC_IPNET_INFO ioctl, the
   dl_ipnet_info header, and the DL_IPNETINFO_VERSION constant.  These
   are moved to <sys/dlpi.h> (and renamed in some cases, see section
   2), and <inet/ipnet.h> is now an implementation detail (Not An
   Interface).

4. Omissions

   The project also did not need to introduce the NE_SET_ZONE NIC
   event as originally anticipated, so this is no longer included in
   this case.

-Seb



Reply via email to