rebase patches on top of v12.0.2

and drop IPv6 segfault patch, applied upstream
This commit is contained in:
Fabian Grünbichler 2017-04-26 10:19:03 +02:00
parent 26e5b1e4ef
commit dfb65868e2
7 changed files with 24 additions and 335 deletions

View File

@ -1,7 +1,7 @@
From ba9af8745b542dd4c76a8205f58ee8b828602865 Mon Sep 17 00:00:00 2001
From f12b07be40d9cb909ef7b03c9168a274bfd13086 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
Date: Mon, 20 Mar 2017 09:12:50 +0100
Subject: [PATCH 1/6] update changelog
Subject: [PATCH 1/5] update changelog
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@ -12,10 +12,13 @@ Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
1 file changed, 32 insertions(+)
diff --git a/debian/changelog b/debian/changelog
index e7ab154..0935ea6 100644
index adf0b98..b366685 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,9 +1,41 @@
@@ -4,12 +4,44 @@ ceph (12.0.2-1) stable; urgency=medium
-- Ceph Release Team <ceph-maintainers@ceph.com> Thu, 20 Apr 2017 19:59:57 +0000
+ceph (12.0.1-pve1) stable; urgency=medium
+
+ * revert dropping of boost build dependencies

View File

@ -1,7 +1,7 @@
From d77d3431209484bc107609a3326f67149ddd7924 Mon Sep 17 00:00:00 2001
From b56cf191f690b1ce3f1f0723fc09c634be6c81d8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
Date: Mon, 20 Mar 2017 09:16:06 +0100
Subject: [PATCH 2/6] build with system boost
Subject: [PATCH 2/5] build with system boost
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@ -12,7 +12,7 @@ Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
1 file changed, 1 insertion(+)
diff --git a/debian/rules b/debian/rules
index d529fdc..61efec4 100755
index f8fb811..3810602 100755
--- a/debian/rules
+++ b/debian/rules
@@ -11,6 +11,7 @@ extraopts += -DWITH_CEPHFS_JAVA=ON
@ -20,9 +20,9 @@ index d529fdc..61efec4 100755
extraopts += -DCMAKE_INSTALL_LIBEXECDIR=/usr/lib
extraopts += -DCMAKE_INSTALL_SYSCONFDIR=/etc
+extraopts += -DWITH_SYSTEM_BOOST=ON
ifeq ($(DEB_HOST_ARCH), armel)
# armel supports ARMv4t or above instructions sets.
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
extraopts += -DBOOST_J=$(NUMJOBS)
--
2.1.4

View File

@ -1,7 +1,7 @@
From e0c71b6fcd2908094f2d42311a1c5549dda2d448 Mon Sep 17 00:00:00 2001
From 927fa850b146575bcb31c85c00fc75df321c5a7c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
Date: Tue, 21 Mar 2017 07:47:08 +0100
Subject: [PATCH 3/6] ceph-detect-init: support Debian Stretch
Subject: [PATCH 3/5] ceph-detect-init: support Debian Stretch
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@ -12,10 +12,10 @@ Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
1 file changed, 1 insertion(+)
diff --git a/src/ceph-detect-init/ceph_detect_init/__init__.py b/src/ceph-detect-init/ceph_detect_init/__init__.py
index 9abc421..a7f7beb 100644
index 78374be..21e60c8 100644
--- a/src/ceph-detect-init/ceph_detect_init/__init__.py
+++ b/src/ceph-detect-init/ceph_detect_init/__init__.py
@@ -139,6 +139,7 @@ def platform_information():
@@ -142,6 +142,7 @@ def platform_information():
# this could be an empty string in Debian
if not codename and 'debian' in distro_lower:
debian_codenames = {

View File

@ -1,7 +1,7 @@
From 0362a74b5e615235de81c027ac456d9e0a9a1279 Mon Sep 17 00:00:00 2001
From cf2641af1f3e3c86e7a6cfdadd8967b837b88893 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
Date: Wed, 22 Mar 2017 09:00:34 +0100
Subject: [PATCH 4/6] enable systemd targets by default
Subject: [PATCH 4/5] enable systemd targets by default
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
@ -12,10 +12,10 @@ Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
1 file changed, 3 insertions(+)
diff --git a/debian/rules b/debian/rules
index 61efec4..93158d2 100755
index 3810602..9c1b33c 100755
--- a/debian/rules
+++ b/debian/rules
@@ -120,6 +120,9 @@ override_dh_installinit:
@@ -124,6 +124,9 @@ override_dh_installinit:
dh_installinit -p ceph-base --name ceph --no-start
dh_installinit -p radosgw --no-start

View File

@ -1,7 +1,7 @@
From 13ff68ad79668008e637bf75e83ace835248e8e8 Mon Sep 17 00:00:00 2001
From ead28414be9eca9c6c09b702bbda27a4c2fbe65b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
Date: Wed, 29 Mar 2017 09:10:54 +0200
Subject: [PATCH 6/6] Revert "debian: drop boost build dependencies"
Subject: [PATCH 5/5] Revert "debian: drop boost build dependencies"
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

View File

@ -1,313 +0,0 @@
From 4858648bf48d110c960cd4a0261056805827b527 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fabian=20Gr=C3=BCnbichler?= <f.gruenbichler@proxmox.com>
Date: Wed, 22 Mar 2017 16:13:50 +0100
Subject: [PATCH 5/6] use sockaddr_storage for IPv6 compat
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
---
src/include/ipaddr.h | 2 +-
src/common/ipaddr.cc | 6 ++---
src/common/pick_address.cc | 4 ++--
src/test/test_ipaddr.cc | 60 +++++++++++++++++++++++++++++-----------------
4 files changed, 44 insertions(+), 28 deletions(-)
diff --git a/src/include/ipaddr.h b/src/include/ipaddr.h
index cac13d6..bf1a083 100644
--- a/src/include/ipaddr.h
+++ b/src/include/ipaddr.h
@@ -16,6 +16,6 @@ const struct sockaddr *find_ip_in_subnet(const struct ifaddrs *addrs,
unsigned int prefix_len);
-bool parse_network(const char *s, struct sockaddr *network, unsigned int *prefix_len);
+bool parse_network(const char *s, struct sockaddr_storage *network, unsigned int *prefix_len);
#endif
diff --git a/src/common/ipaddr.cc b/src/common/ipaddr.cc
index 72fe7de..a7dedf2 100644
--- a/src/common/ipaddr.cc
+++ b/src/common/ipaddr.cc
@@ -110,7 +110,7 @@ const struct sockaddr *find_ip_in_subnet(const struct ifaddrs *addrs,
}
-bool parse_network(const char *s, struct sockaddr *network, unsigned int *prefix_len) {
+bool parse_network(const char *s, struct sockaddr_storage *network, unsigned int *prefix_len) {
char *slash = strchr((char*)s, '/');
if (!slash) {
// no slash
@@ -144,14 +144,14 @@ bool parse_network(const char *s, struct sockaddr *network, unsigned int *prefix
int ok;
ok = inet_pton(AF_INET, addr, &((struct sockaddr_in*)network)->sin_addr);
if (ok) {
- network->sa_family = AF_INET;
+ network->ss_family = AF_INET;
return true;
}
// try parsing as ipv6
ok = inet_pton(AF_INET6, addr, &((struct sockaddr_in6*)network)->sin6_addr);
if (ok) {
- network->sa_family = AF_INET6;
+ network->ss_family = AF_INET6;
return true;
}
diff --git a/src/common/pick_address.cc b/src/common/pick_address.cc
index 06d58e4..5f910d5 100644
--- a/src/common/pick_address.cc
+++ b/src/common/pick_address.cc
@@ -32,7 +32,7 @@ static const struct sockaddr *find_ip_in_subnet_list(CephContext *cct,
get_str_list(networks, nets);
for(std::list<string>::iterator s = nets.begin(); s != nets.end(); ++s) {
- struct sockaddr net;
+ struct sockaddr_storage net;
unsigned int prefix_len;
if (!parse_network(s->c_str(), &net, &prefix_len)) {
@@ -40,7 +40,7 @@ static const struct sockaddr *find_ip_in_subnet_list(CephContext *cct,
exit(1);
}
- const struct sockaddr *found = find_ip_in_subnet(ifa, &net, prefix_len);
+ const struct sockaddr *found = find_ip_in_subnet(ifa, (struct sockaddr *) &net, prefix_len);
if (found)
return found;
}
diff --git a/src/test/test_ipaddr.cc b/src/test/test_ipaddr.cc
index 9a3d43e..716094d 100644
--- a/src/test/test_ipaddr.cc
+++ b/src/test/test_ipaddr.cc
@@ -256,7 +256,7 @@ TEST(CommonIPAddr, TestV6_PrefixZero)
TEST(CommonIPAddr, ParseNetwork_Empty)
{
- struct sockaddr network;
+ struct sockaddr_storage network;
unsigned int prefix_len;
bool ok;
@@ -266,7 +266,7 @@ TEST(CommonIPAddr, ParseNetwork_Empty)
TEST(CommonIPAddr, ParseNetwork_Bad_Junk)
{
- struct sockaddr network;
+ struct sockaddr_storage network;
unsigned int prefix_len;
bool ok;
@@ -276,27 +276,27 @@ TEST(CommonIPAddr, ParseNetwork_Bad_Junk)
TEST(CommonIPAddr, ParseNetwork_Bad_SlashNum)
{
- struct sockaddr network;
+ struct sockaddr_storage network;
unsigned int prefix_len;
bool ok;
- ok = parse_network("/24", (struct sockaddr*)&network, &prefix_len);
+ ok = parse_network("/24", &network, &prefix_len);
ASSERT_EQ(ok, false);
}
TEST(CommonIPAddr, ParseNetwork_Bad_Slash)
{
- struct sockaddr network;
+ struct sockaddr_storage network;
unsigned int prefix_len;
bool ok;
- ok = parse_network("/", (struct sockaddr*)&network, &prefix_len);
+ ok = parse_network("/", &network, &prefix_len);
ASSERT_EQ(ok, false);
}
TEST(CommonIPAddr, ParseNetwork_Bad_IPv4)
{
- struct sockaddr network;
+ struct sockaddr_storage network;
unsigned int prefix_len;
bool ok;
@@ -306,7 +306,7 @@ TEST(CommonIPAddr, ParseNetwork_Bad_IPv4)
TEST(CommonIPAddr, ParseNetwork_Bad_IPv4Slash)
{
- struct sockaddr network;
+ struct sockaddr_storage network;
unsigned int prefix_len;
bool ok;
@@ -316,7 +316,7 @@ TEST(CommonIPAddr, ParseNetwork_Bad_IPv4Slash)
TEST(CommonIPAddr, ParseNetwork_Bad_IPv4SlashNegative)
{
- struct sockaddr network;
+ struct sockaddr_storage network;
unsigned int prefix_len;
bool ok;
@@ -326,7 +326,7 @@ TEST(CommonIPAddr, ParseNetwork_Bad_IPv4SlashNegative)
TEST(CommonIPAddr, ParseNetwork_Bad_IPv4SlashJunk)
{
- struct sockaddr network;
+ struct sockaddr_storage network;
unsigned int prefix_len;
bool ok;
@@ -336,7 +336,7 @@ TEST(CommonIPAddr, ParseNetwork_Bad_IPv4SlashJunk)
TEST(CommonIPAddr, ParseNetwork_Bad_IPv6)
{
- struct sockaddr network;
+ struct sockaddr_storage network;
unsigned int prefix_len;
bool ok;
@@ -346,7 +346,7 @@ TEST(CommonIPAddr, ParseNetwork_Bad_IPv6)
TEST(CommonIPAddr, ParseNetwork_Bad_IPv6Slash)
{
- struct sockaddr network;
+ struct sockaddr_storage network;
unsigned int prefix_len;
bool ok;
@@ -356,7 +356,7 @@ TEST(CommonIPAddr, ParseNetwork_Bad_IPv6Slash)
TEST(CommonIPAddr, ParseNetwork_Bad_IPv6SlashNegative)
{
- struct sockaddr network;
+ struct sockaddr_storage network;
unsigned int prefix_len;
bool ok;
@@ -366,7 +366,7 @@ TEST(CommonIPAddr, ParseNetwork_Bad_IPv6SlashNegative)
TEST(CommonIPAddr, ParseNetwork_Bad_IPv6SlashJunk)
{
- struct sockaddr network;
+ struct sockaddr_storage network;
unsigned int prefix_len;
bool ok;
@@ -377,10 +377,12 @@ TEST(CommonIPAddr, ParseNetwork_Bad_IPv6SlashJunk)
TEST(CommonIPAddr, ParseNetwork_IPv4_0)
{
struct sockaddr_in network;
+ struct sockaddr_storage net_storage;
unsigned int prefix_len;
bool ok;
- ok = parse_network("123.123.123.123/0", (struct sockaddr*)&network, &prefix_len);
+ ok = parse_network("123.123.123.123/0", &net_storage, &prefix_len);
+ network = *(struct sockaddr_in *) &net_storage;
ASSERT_EQ(ok, true);
ASSERT_EQ(0U, prefix_len);
ASSERT_EQ(AF_INET, network.sin_family);
@@ -393,10 +395,12 @@ TEST(CommonIPAddr, ParseNetwork_IPv4_0)
TEST(CommonIPAddr, ParseNetwork_IPv4_13)
{
struct sockaddr_in network;
+ struct sockaddr_storage net_storage;
unsigned int prefix_len;
bool ok;
- ok = parse_network("123.123.123.123/13", (struct sockaddr*)&network, &prefix_len);
+ ok = parse_network("123.123.123.123/13", &net_storage, &prefix_len);
+ network = *(struct sockaddr_in *) &net_storage;
ASSERT_EQ(ok, true);
ASSERT_EQ(13U, prefix_len);
ASSERT_EQ(AF_INET, network.sin_family);
@@ -409,10 +413,12 @@ TEST(CommonIPAddr, ParseNetwork_IPv4_13)
TEST(CommonIPAddr, ParseNetwork_IPv4_32)
{
struct sockaddr_in network;
+ struct sockaddr_storage net_storage;
unsigned int prefix_len;
bool ok;
- ok = parse_network("123.123.123.123/32", (struct sockaddr*)&network, &prefix_len);
+ ok = parse_network("123.123.123.123/32", &net_storage, &prefix_len);
+ network = *(struct sockaddr_in *) &net_storage;
ASSERT_EQ(ok, true);
ASSERT_EQ(32U, prefix_len);
ASSERT_EQ(AF_INET, network.sin_family);
@@ -425,10 +431,12 @@ TEST(CommonIPAddr, ParseNetwork_IPv4_32)
TEST(CommonIPAddr, ParseNetwork_IPv4_42)
{
struct sockaddr_in network;
+ struct sockaddr_storage net_storage;
unsigned int prefix_len;
bool ok;
- ok = parse_network("123.123.123.123/42", (struct sockaddr*)&network, &prefix_len);
+ ok = parse_network("123.123.123.123/42", &net_storage, &prefix_len);
+ network = *(struct sockaddr_in *) &net_storage;
ASSERT_EQ(ok, true);
ASSERT_EQ(42U, prefix_len);
ASSERT_EQ(AF_INET, network.sin_family);
@@ -441,10 +449,12 @@ TEST(CommonIPAddr, ParseNetwork_IPv4_42)
TEST(CommonIPAddr, ParseNetwork_IPv6_0)
{
struct sockaddr_in6 network;
+ struct sockaddr_storage net_storage;
unsigned int prefix_len;
bool ok;
- ok = parse_network("2001:1234:5678:90ab::dead:beef/0", (struct sockaddr*)&network, &prefix_len);
+ ok = parse_network("2001:1234:5678:90ab::dead:beef/0", &net_storage, &prefix_len);
+ network = *(struct sockaddr_in6 *) &net_storage;
ASSERT_EQ(ok, true);
ASSERT_EQ(0U, prefix_len);
ASSERT_EQ(AF_INET6, network.sin6_family);
@@ -457,10 +467,12 @@ TEST(CommonIPAddr, ParseNetwork_IPv6_0)
TEST(CommonIPAddr, ParseNetwork_IPv6_67)
{
struct sockaddr_in6 network;
+ struct sockaddr_storage net_storage;
unsigned int prefix_len;
bool ok;
- ok = parse_network("2001:1234:5678:90ab::dead:beef/67", (struct sockaddr*)&network, &prefix_len);
+ ok = parse_network("2001:1234:5678:90ab::dead:beef/67", &net_storage, &prefix_len);
+ network = *(struct sockaddr_in6 *) &net_storage;
ASSERT_EQ(ok, true);
ASSERT_EQ(67U, prefix_len);
ASSERT_EQ(AF_INET6, network.sin6_family);
@@ -473,10 +485,12 @@ TEST(CommonIPAddr, ParseNetwork_IPv6_67)
TEST(CommonIPAddr, ParseNetwork_IPv6_128)
{
struct sockaddr_in6 network;
+ struct sockaddr_storage net_storage;
unsigned int prefix_len;
bool ok;
- ok = parse_network("2001:1234:5678:90ab::dead:beef/128", (struct sockaddr*)&network, &prefix_len);
+ ok = parse_network("2001:1234:5678:90ab::dead:beef/128", &net_storage, &prefix_len);
+ network = *(struct sockaddr_in6 *) &net_storage;
ASSERT_EQ(ok, true);
ASSERT_EQ(128U, prefix_len);
ASSERT_EQ(AF_INET6, network.sin6_family);
@@ -489,10 +503,12 @@ TEST(CommonIPAddr, ParseNetwork_IPv6_128)
TEST(CommonIPAddr, ParseNetwork_IPv6_9000)
{
struct sockaddr_in6 network;
+ struct sockaddr_storage net_storage;
unsigned int prefix_len;
bool ok;
- ok = parse_network("2001:1234:5678:90ab::dead:beef/9000", (struct sockaddr*)&network, &prefix_len);
+ ok = parse_network("2001:1234:5678:90ab::dead:beef/9000", &net_storage, &prefix_len);
+ network = *(struct sockaddr_in6 *) &net_storage;
ASSERT_EQ(ok, true);
ASSERT_EQ(9000U, prefix_len);
ASSERT_EQ(AF_INET6, network.sin6_family);
--
2.1.4

View File

@ -2,5 +2,4 @@
0002-build-with-system-boost.patch
0003-ceph-detect-init-support-Debian-Stretch.patch
0004-enable-systemd-targets-by-default.patch
0005-use-sockaddr_storage-for-IPv6-compat.patch
0006-Revert-debian-drop-boost-build-dependencies.patch
0005-Revert-debian-drop-boost-build-dependencies.patch