Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Mon, 21 Sep 2015 21:39:50 +0000
From: Vasileios Kalintiris <Vasileios.Kalintiris@...tec.com>
To: "musl@...ts.openwall.com" <musl@...ts.openwall.com>
Subject: RE: [PATCH] Define and use the __ptrace_request enumeration
 type in ptrace.

Hi Rich,

Thank you for taking the time to look into this.

> Is there a particular problem you're trying to solve here?

I tried to compile LLDB with musl and I found two places where
the __ptrace_request type is being used:

http://reviews.llvm.org/diffusion/L/browse/lldb/trunk/source/Plugins/Process/Linux/NativeProcessLinux.cpp;248212$3161

> Generally enum is avoided in musl unless it's mandated as part of an
> interface definition.

I based my patch on the definition provided by ptrace(2) on my Linux distro,
thinking that this is the "correct" function prototype that we should provide.

> As written, I think the patch would also be a regression that would break
> apps which test for header/library support of a particular PTRACE_* command
> using #ifdef.

I do understand your concerns, I suppose that fixing this from the LLDB side
will solve the mis-compilation problem and will keep us from introducing a
regression to other apps from musl.

Out of curiosity, what is the general implementation choice in this case in
other C libraries? I'm asking because discovering GLIBC and handing it as a
special case would be easy through the __GLIBC__ macro. However, musl doesn't
provide any such macro (and other C libraries probably).

Thanks,
Vasileios

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.