|
Message-ID: <CAGXu5jJj2of7te2bFXe5gQjv0_yPXaGyAKCJ6+uXpOMH2weCdA@mail.gmail.com> Date: Fri, 13 Jan 2017 12:38:54 -0800 From: Kees Cook <keescook@...omium.org> To: PaX Team <pageexec@...email.hu> Cc: "AKASHI, Takahiro" <takahiro.akashi@...aro.org>, Mark Rutland <mark.rutland@....com>, park jinbum <jinb.park7@...il.com>, "kernel-hardening@...ts.openwall.com" <kernel-hardening@...ts.openwall.com> Subject: Re: Introduction On Fri, Jan 13, 2017 at 11:26 AM, Kees Cook <keescook@...omium.org> wrote: > I did notice too that it seems like it doesn't notice static initializers: > > security/tomoyo/common.c: In function ‘tomoyo_load_builtin_policy’: > security/tomoyo/common.c:2745:27: note: userspace variable will be > forcibly initialized > struct tomoyo_io_buffer head = { }; > ^ > > fs/read_write.c: In function ‘new_sync_write’: > fs/read_write.c:490:15: note: userspace variable will be forcibly initialized > struct iovec iov = { .iov_base = (void __user *)buf, .iov_len = len }; > ^ If I dump the gimple, it looks like the assignments aren't being marked as CONSTRUTOR? fs/read_write.c: In function ‘new_sync_read’: fs/read_write.c:433:15: note: userspace variable will be forcibly initialized struct iovec iov = { .iov_base = buf, .iov_len = len }; ^ # .MEM_3 = VDEF <.MEM_1(D)> iov.iov_base = buf_2(D); # .MEM_5 = VDEF <.MEM_3> iov.iov_len = len_4(D); ... Hmmm -Kees -- Kees Cook Nexus Security
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.