• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Finding the use of a private API
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Finding the use of a private API


  • Subject: Re: Finding the use of a private API
  • From: Roland King <email@hidden>
  • Date: Tue, 17 Mar 2015 07:55:32 +0800

> On 17 Mar 2015, at 07:47, Rick Mann <email@hidden> wrote:
>
>
>> otool -t -V APP > /tmp/longFileOfDisassembly
>>
>> vi the file and look for _dsyrk_ instances, they should be in comments like ## symbol stub for _dsyrk_
>>
>> scan backwards to find what routine you’re in, should be a couple of screenfuls up at most.
>>
>> Obviously better using a debug version of the code :)
>
> I tried that. I get this:
>
> $ otool -tV MyApp | edit
> otool(49911,0x7fff7f1cd300) malloc: *** error for object 0x6b2db0: pointer being freed was not allocated
> *** set a breakpoint in malloc_error_break to debug
>
> But it does generate a couple million lines of output before crashing. I can find only one reference:
>
> 00175308	f3c4e972	blx	0x5395f0 @ symbol stub for: _dsyrk_
>
> But nothing more. There doesn't seem to be any debug info (despite this being a debug build; the dSYM is separate, dunno how to incorporate that).
>

How nice when the system tools crash. I won’t ask why the dSYM file is separate but you won’t get far without it and you can’t tell otool to use a separate one (AFAIK)

What’s in the output above that - it should at least tell you what routine it’s decompiling.

If you can’t run on the binary itself then you could try running on any .o file which grep claims contains the symbol you’re looking for, including if necessary all the stuff making up the .a file.

Oh you said in the original "we’ve identified every potential use of this symbol”, did you mean in your app code or every potential use in the library as well? If the former but not the latter, you’re not linking with -ObjC or -all_load are you, thus dragging the entire library in.
_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden


References: 
 >Finding the use of a private API (From: Rick Mann <email@hidden>)
 >Re: Finding the use of a private API (From: Wim Lewis <email@hidden>)
 >Re: Finding the use of a private API (From: Rick Mann <email@hidden>)
 >Re: Finding the use of a private API (From: Roland King <email@hidden>)
 >Re: Finding the use of a private API (From: Rick Mann <email@hidden>)

  • Prev by Date: Re: Finding the use of a private API
  • Next by Date: Re: Finding the use of a private API
  • Previous by thread: Re: Finding the use of a private API
  • Next by thread: Re: Finding the use of a private API
  • Index(es):
    • Date
    • Thread