Paul Jakma
2018-02-19 21:53:21 UTC
A brown paper release, to fix an error causing asserts in daemons. See
bug#975 ( https://bugzilla.quagga.net/show_bug.cgi?id=975). With thanks
to Sergey Popov, Andreas Nilsson and Xiami. The release is available
from the Savannah project download directory:
https://download.savannah.gnu.org/releases/quagga/
Summary of changes:
* lib: Fix assert in thread_add_unuse if thread_execute was used
* lib: Avoid re-definition of IPPROTO_IP with some versions of Linux
Full changelog:
commit 9d7a49f6090b6106ee9ecad4687167b2e60d98c3
Author: Paul Jakma <***@jakma.org>
Date: Mon Feb 19 20:55:20 2018 +0000
lib: Fix assert in thread_add_unuse if thread_execute was used
* thread.c: (thread_call) thread_execute passes in a dummy thread,
on its stack, with a NULL thread master. Those shouldn't be added
to the unuse list or thread_add_unuse rightly asserts.
Fix this very dumb bug.
See https://bugzilla.quagga.net/show_bug.cgi?id=975
With thanks to Sergey Popov, ***@pinkbyte.ru, and Andreas Nilsson,
***@resilans.se, for help with diagnosis and testing.
commit fed50218deeaef4d996d25c45b1aa56fe5e337c4
Author: Xiami <***@vip.qq.com>
Date: Sun Feb 4 16:35:42 2018 +0000
lib: Avoid re-definition of IPPROTO_IP with some versions of Linux
* Starting from linux-4.11 [commit
bcb41c6bced1ee778d23c53a6b4807fb08cf5540], linux/mroute.h includes
linux/in.h , that makes gcc roar a lot of things like "error:
redeclaration of enumerator 'IPPROTO_IP'" when compiling quagga-1.2.2
lib/zebra.h includes sys/capability.h first, then includes
netinet/in.h . In sys/capability.h, it includes linux/xattr.h, and
that includes linux/libc-compat.h . Since at that time netinet/in.h is
not included yet, _NETINET_IN_H is not defined, causing libc-compat.h
set __UAPI_DEF_IN_IPPROTO to 1. Then, a include of netinet/in.h
defines IPPROTO_IP. Later a include of linux/mroute.h includes
linux/in.h. Because __UAPI_DEF_IN_IPPROTO is set to non zero,
IPPROTO_IP is redeclared.
* lib/zebra.h: Move the privs/capabilities include block to after the
network block.
regards,
bug#975 ( https://bugzilla.quagga.net/show_bug.cgi?id=975). With thanks
to Sergey Popov, Andreas Nilsson and Xiami. The release is available
from the Savannah project download directory:
https://download.savannah.gnu.org/releases/quagga/
Summary of changes:
* lib: Fix assert in thread_add_unuse if thread_execute was used
* lib: Avoid re-definition of IPPROTO_IP with some versions of Linux
Full changelog:
commit 9d7a49f6090b6106ee9ecad4687167b2e60d98c3
Author: Paul Jakma <***@jakma.org>
Date: Mon Feb 19 20:55:20 2018 +0000
lib: Fix assert in thread_add_unuse if thread_execute was used
* thread.c: (thread_call) thread_execute passes in a dummy thread,
on its stack, with a NULL thread master. Those shouldn't be added
to the unuse list or thread_add_unuse rightly asserts.
Fix this very dumb bug.
See https://bugzilla.quagga.net/show_bug.cgi?id=975
With thanks to Sergey Popov, ***@pinkbyte.ru, and Andreas Nilsson,
***@resilans.se, for help with diagnosis and testing.
commit fed50218deeaef4d996d25c45b1aa56fe5e337c4
Author: Xiami <***@vip.qq.com>
Date: Sun Feb 4 16:35:42 2018 +0000
lib: Avoid re-definition of IPPROTO_IP with some versions of Linux
* Starting from linux-4.11 [commit
bcb41c6bced1ee778d23c53a6b4807fb08cf5540], linux/mroute.h includes
linux/in.h , that makes gcc roar a lot of things like "error:
redeclaration of enumerator 'IPPROTO_IP'" when compiling quagga-1.2.2
lib/zebra.h includes sys/capability.h first, then includes
netinet/in.h . In sys/capability.h, it includes linux/xattr.h, and
that includes linux/libc-compat.h . Since at that time netinet/in.h is
not included yet, _NETINET_IN_H is not defined, causing libc-compat.h
set __UAPI_DEF_IN_IPPROTO to 1. Then, a include of netinet/in.h
defines IPPROTO_IP. Later a include of linux/mroute.h includes
linux/in.h. Because __UAPI_DEF_IN_IPPROTO is set to non zero,
IPPROTO_IP is redeclared.
* lib/zebra.h: Move the privs/capabilities include block to after the
network block.
regards,
--
Paul Jakma | ***@jakma.org | @pjakma | Key ID: 0xD86BF79464A2FF6A
Fortune:
Humor in the Court:
Q: Are you qualified to give a urine sample?
A: Yes, I have been since early childhood.
Paul Jakma | ***@jakma.org | @pjakma | Key ID: 0xD86BF79464A2FF6A
Fortune:
Humor in the Court:
Q: Are you qualified to give a urine sample?
A: Yes, I have been since early childhood.