[Debian-ha-commits] [pcs] 01/01: Document quilt patches

Valentin Vidic vvidic-guest at moszumanska.debian.org
Fri Jun 17 14:17:23 UTC 2016


This is an automated email from the git hooks/post-receive script.

vvidic-guest pushed a commit to branch master
in repository pcs.

commit 915d518bee55c257c38a1e2e7664aad8277e5ec0
Author: Valentin Vidic <Valentin.Vidic at CARNet.hr>
Date:   Fri Jun 17 16:16:34 2016 +0200

    Document quilt patches
---
 debian/patches/0006-Replace-orderedhash.patch | 15 +++++++++
 debian/patches/0007-Fix-IPv6-bind.patch       | 44 ++++++++++++++++++++++++++-
 debian/patches/series                         |  2 +-
 3 files changed, 59 insertions(+), 2 deletions(-)

diff --git a/debian/patches/0006-Replace-orderedhash.patch b/debian/patches/0006-Replace-orderedhash.patch
index 40d4e8d..c7605db 100644
--- a/debian/patches/0006-Replace-orderedhash.patch
+++ b/debian/patches/0006-Replace-orderedhash.patch
@@ -1,3 +1,18 @@
+Description: Replace orderedhash gem with active_support
+ Gem orderedhash <https://rubygems.org/gems/orderedhash/>
+ has several problems:
+ * not packaged in Debian (so not used by some other software)
+ * does not look maintained (last version 0.0.6 is from 2008)
+ * no license file included (just one mention of public domain
+   in a source file)
+ .
+ On the other hand, replacement active_support gem is rather
+ popular (albeit somewhat big) and does not experience any of
+ these problems.
+Author: Valentin Vidic <Valentin.Vidic at CARNet.hr>
+Last-Update: 2017-06-17
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
 --- a/pcsd/config.rb
 +++ b/pcsd/config.rb
 @@ -1,5 +1,5 @@
diff --git a/debian/patches/0007-Fix-IPv6-bind.patch b/debian/patches/0007-Fix-IPv6-bind.patch
index 45ba703..224d1c7 100644
--- a/debian/patches/0007-Fix-IPv6-bind.patch
+++ b/debian/patches/0007-Fix-IPv6-bind.patch
@@ -1,6 +1,48 @@
+Description: PCSD web interface listens only on IPv6
+ The problem seems to be in the change to `WEBrick::Utils::create_listeners`
+ introduced in ruby 2.1:
+ .
+ https://github.com/ruby/ruby/commit/b1f493dcd1092fe17cccec998e175516ed5c6e47
+ .
+ A small example program calling this function can prove this:
+   WEBrick::Utils::create_listeners("::", 2000)
+ .
+ This is the strace output for CentOS7 with ruby 2.0:
+   socket(PF_INET6, SOCK_STREAM|SOCK_CLOEXEC, IPPROTO_TCP) = 7
+   fcntl(7, F_GETFD)                       = 0x1 (flags FD_CLOEXEC)
+   fstat(7, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0
+   fstat(7, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0
+   setsockopt(7, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0
+   bind(7, {sa_family=AF_INET6, sin6_port=htons(2000), inet_pton(AF_INET6, "::", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, 28) = 0
+   listen(7, 128)                          = 0
+ .
+ On ruby 2.1 and newer the same program executes this:
+   socket(PF_INET6, SOCK_STREAM|SOCK_CLOEXEC, IPPROTO_TCP) = 7
+   fcntl(7, F_GETFD)                       = 0x1 (flags FD_CLOEXEC)
+   fstat(7, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0
+   fstat(7, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0
+   fstat(7, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0
+   fstat(7, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0
+   getsockname(7, {sa_family=AF_INET6, sin6_port=htons(0), inet_pton(AF_INET6, "::", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, [28]) = 0
+   setsockopt(7, SOL_IPV6, IPV6_V6ONLY, [1], 4) = 0
+   getsockname(7, {sa_family=AF_INET6, sin6_port=htons(0), inet_pton(AF_INET6, "::", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, [28]) = 0
+   setsockopt(7, SOL_SOCKET, SO_REUSEADDR, [1], 4) = 0
+   bind(7, {sa_family=AF_INET6, sin6_port=htons(2000), inet_pton(AF_INET6, "::", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, 28) = 0
+   listen(7, 128)                          = 0
+ .
+ The problem is caused by the IPV6_V6ONLY socket option being set:
+   setsockopt(7, SOL_IPV6, IPV6_V6ONLY, [1], 4) = 0
+ .
+ On ruby 2.1 using ``nil`` in place of ``::`` has the same effect so
+ this ruby version check is added to the bind code in pcsd.
+Author: Valentin Vidic <Valentin.Vidic at CARNet.hr>
+Bug: https://github.com/ClusterLabs/pcs/issues/51
+Last-Update: 2016-06-17
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
 --- a/pcsd/ssl.rb
 +++ b/pcsd/ssl.rb
-@@ -106,6 +106,10 @@
+@@ -105,6 +105,10 @@
    end
  end
  
diff --git a/debian/patches/series b/debian/patches/series
index 06491b1..04aed0f 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,6 +1,6 @@
-0007-Fix-IPv6-bind.patch
 0001-Remove-Gemlock.file-on-Debian.patch
 0002-Remove-require-in-pcsd-ssl.rb.patch
 0004-Remove-pcsd-test-.gitignore-file.patch
 0005-settings.py
 0006-Replace-orderedhash.patch
+0007-Fix-IPv6-bind.patch

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-ha/pcs.git



More information about the Debian-HA-Commits mailing list