diff options
Diffstat (limited to 'dev-ruby/ruby-tcpwrap/files')
-rw-r--r-- | dev-ruby/ruby-tcpwrap/files/ruby-tcpwrap-0.6-ruby19.patch | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/dev-ruby/ruby-tcpwrap/files/ruby-tcpwrap-0.6-ruby19.patch b/dev-ruby/ruby-tcpwrap/files/ruby-tcpwrap-0.6-ruby19.patch new file mode 100644 index 000000000000..3f30d592a22c --- /dev/null +++ b/dev-ruby/ruby-tcpwrap/files/ruby-tcpwrap-0.6-ruby19.patch @@ -0,0 +1,83 @@ +diff -Naur ruby-tcpwrap.orig//tcpwrap.c ruby-tcpwrap//tcpwrap.c +--- ruby-tcpwrap.orig//tcpwrap.c 2003-08-20 12:30:10.000000000 +0900 ++++ ruby-tcpwrap//tcpwrap.c 2010-05-28 08:08:49.000000000 +0900 +@@ -25,7 +25,11 @@ + */ + + #include "ruby.h" ++#ifdef HAVE_RUBY_IO_H ++#include "ruby/io.h" ++#else + #include "rubyio.h" ++#endif + #include <sys/types.h> + #include <sys/socket.h> + #include <netinet/in.h> +@@ -46,6 +50,10 @@ + + #define DEFAULT_RFC1413_QUERY_TIMEOUT 30 + ++#ifndef RSTRING_PTR ++#define RSTRING_PTR(str) RSTRING(str)->ptr ++#endif ++ + int allow_severity = 0; + int deny_severity = 0; + +@@ -101,7 +109,7 @@ + tcp_wrapper_t *tcpd; + VALUE sock; + int sockfd; +- OpenFile *fptr; ++ rb_io_t *fptr; + struct sockaddr_storage addr; + char client_name[NI_MAXHOST] = STRING_UNKNOWN; + char client_addr[NI_MAXHOST] = STRING_UNKNOWN; +@@ -113,7 +121,11 @@ + again: + sock = rb_funcall(tcpd->server, rb_intern("accept"), 0); + GetOpenFile(sock, fptr); ++#ifdef HAVE_RUBY_IO_H ++ sockfd = fileno(fptr->fd); ++#else + sockfd = fileno(fptr->f); ++#endif + if (getpeername(sockfd, (struct sockaddr*) &addr, &len) < 0) + rb_sys_fail("getpeername(2)"); + error = getnameinfo((struct sockaddr*) &addr, len, +@@ -132,7 +144,7 @@ + if (tcpd->ident_lookup) + client_user = ident_id(sockfd, tcpd->ident_timeout); + #endif +- if (!hosts_ctl(RSTRING(tcpd->daemon)->ptr, ++ if (!hosts_ctl(RSTRING_PTR(tcpd->daemon), + client_name, + client_addr, + (client_user == NULL) ? STRING_UNKNOWN : client_user)) { +@@ -157,7 +169,7 @@ + static char hosts_allow[MAXPATHLEN]; + + Check_SafeStr(s); +- snprintf(hosts_allow, sizeof(hosts_allow), "%s", RSTRING(s)->ptr); ++ snprintf(hosts_allow, sizeof(hosts_allow), "%s", RSTRING_PTR(s)); + if(access(hosts_allow, R_OK) < 0) + rb_warning("cannot read %s", hosts_allow); + hosts_allow_table = hosts_allow; +@@ -177,7 +189,7 @@ + static char hosts_deny[MAXPATHLEN]; + + Check_SafeStr(s); +- snprintf(hosts_deny, sizeof(hosts_deny), "%s", RSTRING(s)->ptr); ++ snprintf(hosts_deny, sizeof(hosts_deny), "%s", RSTRING_PTR(s)); + if(access(hosts_deny, R_OK) < 0) + rb_warning("cannot read %s", hosts_deny); + hosts_deny_table = hosts_deny; +@@ -196,7 +208,7 @@ + { + if(NIL_P(s)) return STRING_UNKNOWN; + Check_Type(s, T_STRING); +- return RSTRING(s)->ptr; ++ return RSTRING_PTR(s); + } + + static VALUE |