Re: Undefined symbols: _rtrequest
Re: Undefined symbols: _rtrequest
- Subject: Re: Undefined symbols: _rtrequest
- From: Josh Graessley <email@hidden>
- Date: Thu, 26 May 2005 10:15:04 -0700
If you're in user space, you need to use a routing socket. If you're
in the kernel, you are better off using a routing socket from the
kernel than using the rtrequest function directly. rtrequest is off
limits in 10.4.
For 10.3.x there should be two symbol kexts you can link against as
well as the kernel itself when declaring your OSBundleLibraries in
your kext's Info.plist. I can't recall the names but you should be
able to figure them out using kextstat. kextstat will list the kernel
library kexts at the top. They typically have an address, size, and
length of 0. From Tiger (10.4.1) the library list is:
1 1 0x0 0x0 0x0 com.apple.kernel (8.1.0)
2 13 0x0 0x0 0x0 com.apple.kpi.bsd (8.1.0)
3 14 0x0 0x0 0x0 com.apple.kpi.iokit (8.1.0)
4 16 0x0 0x0 0x0 com.apple.kpi.libkern
(8.1.0)
5 14 0x0 0x0 0x0 com.apple.kpi.mach (8.1.0)
6 15 0x0 0x0 0x0
com.apple.kpi.unsupported (8.1.0)
7 1 0x0 0x0 0x0
com.apple.iokit.IONVRAMFamily (8.1.0)
8 1 0x0 0x0 0x0
com.apple.driver.AppleNMI (8.1.0)
9 1 0x0 0x0 0x0
com.apple.iokit.IOSystemManagementFamily (8.1.0)
10 1 0x0 0x0 0x0
com.apple.iokit.ApplePlatformFamily (8.1.0)
11 66 0x0 0x0 0x0 com.apple.kernel.6.0
(7.9.9)
12 1 0x0 0x0 0x0 com.apple.kernel.bsd
(7.9.9)
13 1 0x0 0x0 0x0 com.apple.kernel.iokit
(7.9.9)
14 1 0x0 0x0 0x0 com.apple.kernel.libkern
(7.9.9)
15 1 0x0 0x0 0x0 com.apple.kernel.mach
(7.9.9)
The com.apple.kpi.* are the new Tiger symbol sets. com.apple.kernel.*
are the backwards compatible ones that have been stripped of
everything that isn't supported on Tiger. The goal was to allow
existing drivers using IOKit to continue to work by exporting the few
symbols that provided functionality they didn't get from IOKit.
com.apple.kernel is the kernel itself. This will give you access to
every symbol in the kernel. If you link against this, you will break
with every software update since the compatible version of the kernel
always matches the current version.
This just sort of scratches the surface.
-josh
On May 26, 2005, at 8:36 AM, Philip George wrote:
On May 26, 2005, at 10:32 AM, Justin Walker wrote:
What are you trying to do?
adding and deleting custom routes.
rtrequest() is a procedure in the kernel; it is not in any
library. In 10.4 and later, it may be off-limits (not available
via the KPI); I haven't verified this.
running 10.3.9
can you point me in the direction of instructions on how i can get
that function linked into my binary.
thanks.
- philip
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
40apple.com
This email sent to email@hidden
Attachment:
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden