Re: Passing up per-socket data from NKE
site_archiver@lists.apple.com Delivered-To: darwin-kernel@lists.apple.com User-agent: Thunderbird 2.0.0.16 (Windows/20080708)
Off topic perhaps, but if you've solved the issue of making sure a socket doesn't get detached while you're calling sock_xyz() from your kext (outside a sflt callback), I'd be interested in finding out how. http://lists.apple.com/archives/darwin-kernel/2010/Jul/msg00031.html http://lists.apple.com/archives/Macnetworkprog/2006/Dec/msg00057.html
Joe L. SIOCGIFKPI sounds like an interface ioctl, which the socket level filter may not be receiving. And looking at where the ioctl call ends up (the IOCGROUP for SIOCGIFKPI is 'i' for 'interface'): ioctl soioctl /* Call the socket filter's ioctl handler for most ioctls */ if (IOCGROUP(cmd) != 'i' && IOCGROUP(cmd) != 'r') { ... } ... ifioctllocked ifioctl ifp = ifunit(ifr->ifr_name); if (ifp == 0) return ENXIO; ... if (cmd == SIOCSIFKPI) {... } ... ifnet_ioctl(...) it looks like that SIOCSIFKPI is strictly handled by interface code (and filters). You can just use getsockopt instead, for a SOL_SOCKET option. I can provide some example code but it should be straightforward. Off topic perhaps, but if you've solved the issue of making sure a socket doesn't get detached while you're calling sock_xyz() from your kext (outside a sflt callback), I'd be interested in finding out how. HTH, Bogdan ioctl(tcpSocket, SIOCGIFKPI, &myreq); The last call is failing with ENXIO, and I never see the ioctl() come through. _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-kernel/joe.lowe%40pismotechnic... _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-kernel/site_archiver%40lists.a... This seems related to sock_retain and sock_release not being public kernel exports. Bogdan Harjoc wrote: On Sat, Sep 4, 2010 at 2:07 PM, Matt Slot <apple_lists@mattslot.com> wrote: This email sent to joe.lowe@pismotechnic.com This email sent to site_archiver@lists.apple.com
participants (1)
-
Joe Lowe