Re: OSBundleLibraries & Kernel symbols sharing
Re: OSBundleLibraries & Kernel symbols sharing
- Subject: Re: OSBundleLibraries & Kernel symbols sharing
- From: Dean Reece <email@hidden>
- Date: Tue, 8 Feb 2005 09:12:21 -0800
You've just about got it. You just need to add an
"OSBundleCompatibleVersion" property into A. It's value will be in the
same format as the "CFBundleIdentifier" property. Taken together,
these two properties form a binary compatibility version-range. The
presence of this property makes kext A a library kext that is
acceptable as a library for any other kext (B) asking for a version
between "OSBundleCompatibleVersion" and "CFBundleIdentifier",
inclusive.
Have a look at any of the IOKit Family kexts for an example of this, or
have a look at
http://developer.apple.com/documentation/DeviceDrivers/Conceptual/
IOKitFundamentals/Families/chapter_7_section_3.html#//apple_ref/doc/
uid/TP0000017/TPXREF104 for a brief discussion of this mechanism.
Cheers,
- Dean
On Feb 8, 2005, at 03:43, Stephane Sudre wrote:
I'm seeing something strange as I thought what I wanted to do was
possible but doesn't actually like to be.
I have 2 Kernel Extensions A and B.
Kernel Extension A is loaded first and is requiring usual stuff in
OSBundleLibraries.
Kernel Extension B is defining one of the function of A with an extern
and is including the Bundle Identifier and Version of A in the
OSBundleLibraries section of the Info.plist.
Now when I load B after A, this does not work as it's said that no
correct version for A was found.
Is it not possible to use symbols from a kext in another kext as long
as you help the kext loader knows where they can be found?
I was wondering if this was not linked to the fact that I'm using the
default version 1.0.0d1 from the Kernel Extension template but I don't
really think this is the reason.
The function I'm trying to reference is not set as static or
__private_extern__ in A.
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-kernel mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
email@hidden
This email sent to email@hidden
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-kernel mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden