Message ID | 1521819449-27489-2-git-send-email-alexey.kodanev@oracle.com |
---|---|
State | Accepted |
Delegated to: | Alexey Kodanev |
Headers | show |
Series | sctp: add new regression test for CVE-2018-5803 | expand |
> Signed-off-by: Alexey Kodanev <alexey.kodanev@oracle.com> > --- > v2: include linux/sctp.h header and check it in the configure > configure.ac | 1 + > include/lapi/sctp.h | 29 +++++++++++++++++++++++++++++ > 2 files changed, 30 insertions(+), 0 deletions(-) > create mode 100644 include/lapi/sctp.h > diff --git a/configure.ac b/configure.ac > index 85426ad..97d643b 100644 > --- a/configure.ac > +++ b/configure.ac > @@ -44,6 +44,7 @@ AC_CHECK_HEADERS([ \ > linux/mempolicy.h \ > linux/module.h \ > linux/netlink.h \ > + linux/sctp.h \ > mm.h \ > pthread.h \ > sys/epoll.h \ > diff --git a/include/lapi/sctp.h b/include/lapi/sctp.h > new file mode 100644 > index 0000000..69adc7a > --- /dev/null > +++ b/include/lapi/sctp.h > @@ -0,0 +1,29 @@ > +/* > + * Copyright (c) 2018 Oracle and/or its affiliates. > + * > + * This program is free software: you can redistribute it and/or modify > + * it under the terms of the GNU General Public License as published by > + * the Free Software Foundation, either version 2 of the License, or > + * (at your option) any later version. > + * > + * This program is distributed in the hope that it will be useful, > + * but WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the > + * GNU General Public License for more details. > + * > + * You should have received a copy of the GNU General Public License > + * along with this program. If not, see <http://www.gnu.org/licenses/>. > + */ > + > +#ifndef LAPI_SCTP_H__ > +#define LAPI_SCTP_H__ > + > +#ifdef HAVE_LINUX_SCTP_H > +# include <linux/sctp.h> > +#endif > + > +#ifndef SCTP_SOCKOPT_BINDX_ADD > +# define SCTP_SOCKOPT_BINDX_ADD 100 > +#endif > + > +#endif /* LAPI_SCTP_H__ */ Acked-by: Petr Vorel <petr.vorel@gmail.com> BTW SCTP_SOCKOPT_BINDX_ADD is defined in both <linux/sctp.h> and <netinet/sctp.h>, so if we ever in future want to have some definitions from netinet/sctp.h, I'd be to create special file include/lapi/netinet_sctp.h (the same like include/lapi/netinet_in.h - taking that default is for "kernel/"). And we have included netinet/sctp.h in sources (utils/sctp/include/netinet/sctp.h), IMHO not good idea to have common headers in our sources. Kind regards, Petr
On 26.03.2018 13:55, Petr Vorel wrote: >> Signed-off-by: Alexey Kodanev <alexey.kodanev@oracle.com> >> --- >> v2: include linux/sctp.h header and check it in the configure Applied the patch-set. > BTW SCTP_SOCKOPT_BINDX_ADD is defined in both <linux/sctp.h> and <netinet/sctp.h>, so if we > ever in future want to have some definitions from netinet/sctp.h, I'd be to create special > file include/lapi/netinet_sctp.h (the same like include/lapi/netinet_in.h - taking that > default is for "kernel/"). > I think if we have netinet/sctp.h it should take precedences over linux/sctp.h. In OL7 it is provided by optional lksctp-tools-devel package. Thanks, Alexey > And we have included netinet/sctp.h in sources (utils/sctp/include/netinet/sctp.h), IMHO > not good idea to have common headers in our sources. > > > Kind regards, > Petr >
Hi Alexey, > > BTW SCTP_SOCKOPT_BINDX_ADD is defined in both <linux/sctp.h> and <netinet/sctp.h>, so if we > > ever in future want to have some definitions from netinet/sctp.h, I'd be to create special > > file include/lapi/netinet_sctp.h (the same like include/lapi/netinet_in.h - taking that > > default is for "kernel/"). > I think if we have netinet/sctp.h it should take precedences > over linux/sctp.h. In OL7 it is provided by optional > lksctp-tools-devel package. But linux/sctp.h has much more definitions than netinet/sctp.h and we use some kernel specific definitions (e.g. SOL_UDPLITE is just in linux/sctp.h, SOL_SCTP is in both). > Thanks, > Alexey Kind regards, Petr
diff --git a/configure.ac b/configure.ac index 85426ad..97d643b 100644 --- a/configure.ac +++ b/configure.ac @@ -44,6 +44,7 @@ AC_CHECK_HEADERS([ \ linux/mempolicy.h \ linux/module.h \ linux/netlink.h \ + linux/sctp.h \ mm.h \ pthread.h \ sys/epoll.h \ diff --git a/include/lapi/sctp.h b/include/lapi/sctp.h new file mode 100644 index 0000000..69adc7a --- /dev/null +++ b/include/lapi/sctp.h @@ -0,0 +1,29 @@ +/* + * Copyright (c) 2018 Oracle and/or its affiliates. + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see <http://www.gnu.org/licenses/>. + */ + +#ifndef LAPI_SCTP_H__ +#define LAPI_SCTP_H__ + +#ifdef HAVE_LINUX_SCTP_H +# include <linux/sctp.h> +#endif + +#ifndef SCTP_SOCKOPT_BINDX_ADD +# define SCTP_SOCKOPT_BINDX_ADD 100 +#endif + +#endif /* LAPI_SCTP_H__ */
Signed-off-by: Alexey Kodanev <alexey.kodanev@oracle.com> --- v2: include linux/sctp.h header and check it in the configure configure.ac | 1 + include/lapi/sctp.h | 29 +++++++++++++++++++++++++++++ 2 files changed, 30 insertions(+), 0 deletions(-) create mode 100644 include/lapi/sctp.h