[DRE-commits] [ruby-raindrops] 03/05: remove unneeded patch
Hleb Valoshka
tsfgnu-guest at moszumanska.debian.org
Sun Apr 6 18:49:53 UTC 2014
This is an automated email from the git hooks/post-receive script.
tsfgnu-guest pushed a commit to branch master
in repository ruby-raindrops.
commit 2ce2d3779ef0795c137df94aac1bf8d1e0251241
Author: Hleb Valoshka <375gnu at gmail.com>
Date: Sun Apr 6 21:40:11 2014 +0300
remove unneeded patch
---
...0003-Remove-Scope-IDs-from-IPv6-addresses.patch | 78 ----------------------
debian/patches/series | 1 -
2 files changed, 79 deletions(-)
diff --git a/debian/patches/0003-Remove-Scope-IDs-from-IPv6-addresses.patch b/debian/patches/0003-Remove-Scope-IDs-from-IPv6-addresses.patch
deleted file mode 100644
index 6bfad0f..0000000
--- a/debian/patches/0003-Remove-Scope-IDs-from-IPv6-addresses.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-From: Hleb Valoshka <375gnu at gmail.com>
-Date: Thu, 12 Sep 2013 16:31:13 +0300
-Subject: Remove Scope IDs from IPv6 addresses.
-
- Scoped ipv6 addresses are defined in rfc4007.
- Ruby doesn't support them yet and it's unknown whether it will
- (see http://bugs.ruby-lang.org/issues/8464).
- So we just remove scope ids.
-
- Tested with MRI and Rubinius.
----
- ext/raindrops/linux_inet_diag.c | 41 +++++++++++++++++++++++++++++++++++++++--
- 1 file changed, 39 insertions(+), 2 deletions(-)
-
-diff --git a/ext/raindrops/linux_inet_diag.c b/ext/raindrops/linux_inet_diag.c
-index cd4a876..7b5bae1 100644
---- a/ext/raindrops/linux_inet_diag.c
-+++ b/ext/raindrops/linux_inet_diag.c
-@@ -134,12 +134,49 @@ static int st_free_data(st_data_t key, st_data_t value, st_data_t ignored)
- return ST_DELETE;
- }
-
-+/*
-+ * call-seq:
-+ * remove_scope_id(ip_address)
-+ *
-+ * Returns copy of IP address with Scope ID removed,
-+ * if address has it (only IPv6 actually may have it).
-+ */
-+static VALUE remove_scope_id(const char *addr)
-+{
-+ VALUE rv = rb_str_new2(addr);
-+ long len = RSTRING_LEN(rv);
-+ char *ptr = RSTRING_PTR(rv);
-+ char *pct = memchr(ptr, '%', len);
-+
-+ /*
-+ * remove scoped portion
-+ * Ruby equivalent: rv.sub!(/%([^\]]*)\]/, "]")
-+ */
-+ if (pct) {
-+ size_t newlen = pct - ptr;
-+ char *rbracket = memchr(pct, ']', len - newlen);
-+
-+ if (rbracket) {
-+ size_t move = len - (rbracket - ptr);
-+
-+ memmove(pct, rbracket, move);
-+ newlen += move;
-+
-+ rb_str_set_len(rv, newlen);
-+ } else {
-+ rb_raise(rb_eArgError,
-+ "']' not found in IPv6 addr=%s", ptr);
-+ }
-+ }
-+ return rv;
-+}
-+
- static int st_to_hash(st_data_t key, st_data_t value, VALUE hash)
- {
- struct listen_stats *stats = (struct listen_stats *)value;
-
- if (stats->listener_p) {
-- VALUE k = rb_str_new2((const char *)key);
-+ VALUE k = remove_scope_id((const char *)key);
- VALUE v = rb_listen_stats(stats);
-
- OBJ_FREEZE(k);
-@@ -153,7 +190,7 @@ static int st_AND_hash(st_data_t key, st_data_t value, VALUE hash)
- struct listen_stats *stats = (struct listen_stats *)value;
-
- if (stats->listener_p) {
-- VALUE k = rb_str_new2((const char *)key);
-+ VALUE k = remove_scope_id((const char *)key);
-
- if (rb_hash_lookup(hash, k) == Qtrue) {
- VALUE v = rb_listen_stats(stats);
diff --git a/debian/patches/series b/debian/patches/series
index a47820e..6675fc3 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,4 +1,3 @@
0001-Test-suite-fix-for-IPv6.patch
0002-Invoke-unix_listener_stats-conditionally.patch
-0003-Remove-Scope-IDs-from-IPv6-addresses.patch
0004-Disable-tests-which-require-inet_diag-or-tcp_diag-ke.patch
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-ruby-extras/ruby-raindrops.git
More information about the Pkg-ruby-extras-commits
mailing list