Re: Need to gain access to unexported symbols
site_archiver@lists.apple.com Delivered-To: darwin-kernel@lists.apple.com Dear Shantonu Best regards, Platon Fomichev<pfomichev@elverils.com> On Jul 13, 2010, at 9:00 PM, Shantonu Sen wrote: What version of Mac OS X are you targeting, and what architecture? Shantonu On Jul 13, 2010, at 9:09 AM, Platon Fomichev wrote: Good day, everyone Thanks in advance. Platon Fomichev _______________________________________________ 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/ssen%40apple.com _______________________________________________ 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... Thanks for your answer. I am targeting exclusively Leopard i386 10.5.6. Sad to say I won't be able to have a custom kernel - this should be a stock kernel with a specifically tied kext to it. I was not aware of pf.c!! This is great - this will help us immensely! But as you see I immediately checked the code and it is full of unexported calls like 'zone_change'. This again returns us to the question what are other ways to get access to unexported symbols. P.S. I immediately got hold of latest SL and whooops 'map pf' and 'man pfctl' returns nothing. Also where can I find pfctl code in SL? Can you shed some light on PF in SL - how can I enable it, how can I check it, etc. If you build your own kernel, you can add whatever symbols you like to the exports list. Just to be sure, you're aware of <http://opensource.apple.com/ source/xnu/xnu-1504.7.4/bsd/net/pf.c> right? Our team is porting OpenBSD PF filter to OS X and the progress so far is good. However we're battling with lots of 'hidden' symbols we need access to. Yes we know this is kernel tied stuff, but the project is supposed to be kernel-tied as closely as possible, so this is OK. We need access to some functions like in_pcblookup* funcs and some primitive ones like _boottime_sec(). The question is simple - we can't link against these functions like _boottime_sec() because they are not exported from Kernel and kextload complains. Can you suggest me the way to workaround this - I just always can't copy-paste parts of the kernel (like I do now!) to implement some funcs. Yes, I understand this is hack, but for now we need a prototype to show to the customer - if it will be successfull I hope they will try to push Apple to help us, but without workaround my hands are tight. Let's start with simple - very simple func _boottime_sec() - it's not exported - how can I still link with it? This email sent to ssen@apple.com This email sent to site_archiver@lists.apple.com
participants (1)
-
Platon Fomichev