ISC_PLATFORM_USEBACKTRACE

Hal Murray hmurray at megapathdsl.net
Wed May 31 07:12:21 UTC 2017


>> Is there a way to get gdb to turn them into symbols?
> Nope, not with gdb.

google says that print /a <expression> should do what I want.

It seems to work for me, but my PCs are way smaller than your hex numbers.  
Please poke around a bit and see if you can get it to print anything sensible.

(gdb) print main
$6 = {int (int, char **)} 0x1c6bc <main>
(gdb) print 0x1c6c0
$7 = 116416
(gdb) print /a 0x1c6c0
$8 = 0x1c6c0 <main+4>
(gdb) 


devel at ntpsec.org said:
> Pretty unlikely you are running a binary different from the binary you have
> in front of you.  :-) 

I was thinking of the case where we are trying to debug a version that gets 
shipped by a distro and has the symbols stripped.  We can build another ntpd, 
but it might not have the same options or the same c compiler.  But if all 
that EPOCH/DATE stuff works, maybe we really can reproduce it.


> So I wanted to see what backtrace() did with a seccomp fault, but now I see
> that even though I have seccomp in my kernel, and compiled in, that I can
> not trigger a seccomp fault, even if I remove syscalls that I know ntpd
> uses... 

It's probably something simple.

grep for seccomp in your log file.  There should be something like:
  27 May 15:12:45 ntpd[662]: sandbox: seccomp enabled.

Check your config.h for
  #define HAVE_SECCOMP_H 1

You need --enable-seccomp
That needs libseccomp-devel or whatever your distro calls it, but waf should 
crash if it can't find it.



-- 
These are my opinions.  I hate spam.





More information about the devel mailing list