From: Al Viro <viro@xxxxxxxxxxxxxxxxxx> Date: Sat, 23 Jun 2018 23:21:07 +0100 > BTW, I wonder if the life would be simpler with do_ipv6_setsockopt() doing > the copy-in and verifying ipv6_optlen(*hdr) <= newoptlen; that would've > simplified ipv6_renew_option{,s}() quite a bit and completely eliminated > ipv6_renew_options_kern()... I agree that this makes things a lot simpler. One thing that drives me crazy though is this inherit stuff: > + ipv6_renew_option(newtype == IPV6_HOPOPTS ? newopt : > + opt ? opt->hopopt : NULL, Why don't we pass the type into ipv6_renew_option() and have it do this pointer dance instead? That's going to definitely be easier to read. I don't know enough about this code to give feedback about the option length handling wrt. copies, sorry. _______________________________________________ Selinux mailing list Selinux@xxxxxxxxxxxxx To unsubscribe, send email to Selinux-leave@xxxxxxxxxxxxx. To get help, send an email containing "help" to Selinux-request@xxxxxxxxxxxxx.