|
Message-ID: <alpine.LRH.2.20.1607302322310.19247@s1.palsenberg.com> Date: Sat, 30 Jul 2016 23:24:17 +0200 (CEST) From: Igmar Palsenberg <igmar@...senberg.com> To: musl@...ts.openwall.com Subject: Re: abort() fails to terminate PID 1 process > > > does not imply "calling a function whose behavior is well-defined can > > > legitimately lead to runaway code execution if the pid is 1". > > > > But doesn't "bevavior is well-defined" also imply that that function > > behaves as it should ? If it doesn't, doesn't the "well-defined" no longer > > apply ? I call it UB in this case. > > "Behavior is well-defined" means the specification tells what it does > and does not leave it implementation-defined, unspecified, or > undefined -- neither by explicitly saying so, nor by omission. Yeah, indeed. Sending signals is pretty well defined I assume. > > The standard also says a process can't ignore a SIGKILL, but on pid 1, it > > has no effect. I pretty much call that UB myself. > > You keep using that word. I do not think it means what you think it > means. > > If anything what you're arguing is that the Linux kernel has a bug, > since the behavior of raising SIGKILL is specified and Linux does not > do what the spec says (for pid 1). That does not mean it's undefined > but rather that the implementation is behaving contrary to the defined > behavior. I wouldn't call it a bug, since it's documented behaviour. I have no idea how to call this to be honest, assuming that it even has a formal name. Igmar
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.