tag:blogger.com,1999:blog-3540073447780295551.post5167965002534516106..comments2020-10-06T05:12:47.130+08:00Comments on networkpx Project Blog: Experiment: An alternative way to extract hidden symbolsKennyTM~http://www.blogger.com/profile/13952454490450371593noreply@blogger.comBlogger2125tag:blogger.com,1999:blog-3540073447780295551.post-31941007002483105862009-05-29T09:12:18.323+08:002009-05-29T09:12:18.323+08:00@saurik:
Thanks for comment. I don't mean to dire...@saurik:<br /><br />Thanks for comment. I don't mean to direct you but I don't know how to call that so I just use "saurik's solution" :) <br /><br />I read from the MacThemes comments that you've replaced nlist's backend, and I haven't studies your and Apple's code in detail except the fat architecture part, so it causes confusion. I've edited the post a bit to reflect the truth.<br /><br />And by "only works on ARM" I mean MSHookFunction() only works on ARM.<br /><br />For the bus error, it's the code in http://pastie.org/485348, lines 299 -- 320. I have the comments that explains the cases the cause the errors.<br /><br />And yes, you can use it as you like. For the Apple license, I think the pastie is too old that I cannot edit any more, so maybe you can stick it in. But I wonder if it's OK to include APSL 2 in BSD code.KennyTM~https://www.blogger.com/profile/13952454490450371593noreply@blogger.comtag:blogger.com,1999:blog-3540073447780295551.post-83609488313796033982009-05-29T06:38:47.291+08:002009-05-29T06:38:47.291+08:00I found this post very confusing and somewhat unco...I found this post very confusing and somewhat unconstructive :(.<br /><br />For the record, I didn't reimplement nlist(): the code I have in MobileSubstrate's trunk is the official Apple code (from Apple's website, with Apple's license at the top) for nlist() with the minimal possible modifications to make it use a memory map rather than seeking through files.<br /><br />As far as I can tell, there is nothing ARM-specific about Apple's code (which I definitely got from a source that tends to not have anything of interest for ARM in it). I include an ARM header file, but only to get a definition that Apple's original general code seemed to require and I didn't know the more general header to include to get it.<br /><br />I didn't do it "in 3.0". In fact, the version of MobileSubstrate that includes this enhancement doesn't even work on 3.x yet (and definitely didn't when I coded it), as I chose to insert it with MSHookFunction() (it will just immediately crash and get killed if you try to use it), so the one .deb I offer for it only works on 2.x.<br /><br />Finally, I will say that I haven't even released this to anyone but a few people on a forum (macthemes2) yet, so while I'm not surprised there might be a few bus errors, the fact that I didn't modify the underlying premise of how Apple's code works means I'm quite surprised that it is failing... are you willing to tell me where the bus errors occurred?<br /><br />Considering this post is so specifically directed at being better than "saurik's solution", it would be really awesome if it were a little more constructive, given that MobileSubstrate is open source (and if you had wanted to provide this nlist to it I would have been more than happy to include it).<br /><br />(On that note, do you mind if I use this? It is licensed in a way that I can use, but I'd prefer asking first. Also, there's a comment that mentions that you got code from my version: you might should include Apple's copyright notice and license on your file, as that's what "my" code is.)Jay Freeman (saurik)https://www.blogger.com/profile/16244482001921942234noreply@blogger.com