Messages in this thread | | | Subject | Re: [PATCH 1/2] ptrace: don't modify flags on PTRACE_SETOPTIONS failure | From | Denys Vlasenko <> | Date | Fri, 09 Sep 2011 14:58:02 +0200 |
| |
On Fri, 2011-09-09 at 14:44 +0200, Indan Zupancic wrote: > Hello, > > On Fri, September 9, 2011 08:24, Denys Vlasenko wrote: > > It's very unlikely that there is userspace code in the wild which > > will be affected by this change: it should have the form > > > > ptrace(PTRACE_SETOPTIONS, pid, 0, PTRACE_O_BOGUSOPT) > > > > where PTRACE_O_BOGUSOPT is a constant unknown to the kernel. > > But kernel headers, naturally, don't contain any > > PTRACE_O_BOGUSOPTs, thus the only way userspace can use one > > if it defines one itself. I can't see why anyone would do such > > a thing deliberately. > > The only realistic case is when a program compiled on a newer > kernel is run on an older kernel, when it does things like > > #ifndef PTRACE_O_TRACEFORK > opts |= PTRACE_O_TRACEFORK; > #endif > > and happened to work on older kernels because it didn't check > the return value.
Well, older kernels, of course, will have *old* behavior of SETOPTIONS too! My patch will not magically propagate back in time and change behavior of old kernels :)
-- vda
| |