> You shouldn't need to set any flags if your application is simply > sending and receiving IP packets through the tunnel.
dlpi_open() with only two arguments will not compile. > The constant DLPI_ANY_SAP should be used (its value happens to be 0, Actually there is this intersting definition: #define DLPI_ANY_SAP (uint_t)-1 But the good news is that dlpi_send() works (my packet is encapsulated)! That is, when I set flags to DLPI_NATIVE in dlpi_open(), dsi_sap = IPPROTO_ENCAP and destination address 0.0.0.0 Now I will have to see how the promiscuous read works. thank you, Rob Lainaus Sebastien Roy <Sebastien.Roy at Sun.COM>: > On Tue, 2008-05-27 at 02:57 -0700, Rob Loefman wrote: >> Hi, >> >> I still cannot find documenation about the following when the device to open >> is a tunnel (IP-in-IP or IPSEC): >> >> - which flag to use in dlpi_open() ? > > You shouldn't need to set any flags if your application is simply > sending and receiving IP packets through the tunnel. If your > application needs to mess with the outer IP headers (i.e., send and > receive them as part of the message data), then you'll need DLPI_RAW. > >> - how to set dlpi_sendinfo's dsi_sap for dlpi_send() ? > > If you're sending an IPv4 packet through the tunnel, then set the SAP to > IPPROTO_ENCAP. If you're sending an IPv6 packet through the tunnel, > then set the SAP to IPPROTO_IPv6. It looks like the design document > isn't clear about this, and I'll fix that. > >> - how to set daddrp in dlpi_send() ? > > This is the destination link-layer address you're sending to. Since > this address is pre-configured as the "tunnel destination", you can send > down 0.0.0.0, and it should work. > >> when binding using DLPI_ANY_SAP (or should it be 0?) and promiscon() with >> DL_PROMISC_SAP and tunnel devices. > > The constant DLPI_ANY_SAP should be used (its value happens to be 0, but > your application shouldn't care about that.) Did you have a question > regarding DL_PROMISC_SAP? > > -Seb > > > >
