mirror of
https://git.FreeBSD.org/ports.git
synced 2024-11-23 00:43:28 +00:00
- Fix build with ruby19 [1]
- Remove DEPRECATED and EXPIRATION_DATE - Convert to new LIB_DEPENDS format - Convert to new options framework - Simplify DOC_EN and DOC_JA installation Obtained from: NetBSD [1]
This commit is contained in:
parent
0c5b073227
commit
7da387fd79
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=327290
@ -13,16 +13,15 @@ DIST_SUBDIR= ruby
|
||||
MAINTAINER= ruby@FreeBSD.org
|
||||
COMMENT= TCP wrappers library for Ruby
|
||||
|
||||
DEPRECATED= Does not work with Ruby 1.9
|
||||
EXPIRATION_DATE= 2013-05-02
|
||||
LIB_DEPENDS= libident.so:${PORTSDIR}/security/libident
|
||||
|
||||
LIB_DEPENDS= ident.0:${PORTSDIR}/security/libident
|
||||
OPTIONS_DEFINE= DOCS
|
||||
|
||||
USE_RUBY= yes
|
||||
USE_RUBY_EXTCONF= yes
|
||||
|
||||
WRKSRC= ${WRKDIR}/ruby-${PORTNAME}
|
||||
CONFIGURE_ARGS= --with-libwrap-dir="/usr" \
|
||||
CONFIGURE_ARGS= --with-libwrap-dir=/usr \
|
||||
--with-ident-dir="${LOCALBASE}"
|
||||
|
||||
INSTALL_TARGET= site-install
|
||||
@ -30,21 +29,15 @@ INSTALL_TARGET= site-install
|
||||
DOCS_EN= README.en doc/tcpwrap.html.en
|
||||
DOCS_JA= README.ja doc/tcpwrap.html.ja
|
||||
|
||||
.include <bsd.port.options.mk>
|
||||
|
||||
post-install:
|
||||
.if !defined(NOPORTDOCS)
|
||||
.if ${PORT_OPTIONS:MDOCS}
|
||||
${MKDIR} ${RUBY_MODEXAMPLESDIR}
|
||||
${INSTALL_DATA} ${WRKSRC}/sample/echod.rb ${RUBY_MODEXAMPLESDIR}/
|
||||
${MKDIR} ${RUBY_MODDOCDIR}/ja
|
||||
.for f in ${DOCS_EN}
|
||||
${INSTALL_DATA} ${WRKSRC}/${f} ${RUBY_MODDOCDIR}/
|
||||
.endfor
|
||||
.for f in ${DOCS_JA}
|
||||
${INSTALL_DATA} ${WRKSRC}/${f} ${RUBY_MODDOCDIR}/ja/
|
||||
.endfor
|
||||
cd ${WRKSRC}/ && ${INSTALL_DATA} ${DOCS_EN} ${RUBY_MODDOCDIR}/
|
||||
cd ${WRKSRC}/ && ${INSTALL_DATA} ${DOCS_JA} ${RUBY_MODDOCDIR}/ja/
|
||||
.endif
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
.if ${RUBY_VER} == 1.9
|
||||
BROKEN= does not build with ruby 1.9
|
||||
.endif
|
||||
.include <bsd.port.post.mk>
|
||||
.include <bsd.port.mk>
|
||||
|
73
security/ruby-tcpwrap/files/patch-tcpwrap.c
Normal file
73
security/ruby-tcpwrap/files/patch-tcpwrap.c
Normal file
@ -0,0 +1,73 @@
|
||||
--- tcpwrap.c.orig 2003-08-20 03:30:10.000000000 +0000
|
||||
+++ tcpwrap.c
|
||||
@@ -25,7 +25,12 @@
|
||||
*/
|
||||
|
||||
#include "ruby.h"
|
||||
+#ifdef HAVE_RUBY_IO_H /* Ruby 1.9 and later */
|
||||
+#include "ruby/io.h"
|
||||
+#else /* Ruby 1.8.x */
|
||||
#include "rubyio.h"
|
||||
+#define rb_io_stdio_file(iot) ((iot)->f)
|
||||
+#endif
|
||||
#include <sys/types.h>
|
||||
#include <sys/socket.h>
|
||||
#include <netinet/in.h>
|
||||
@@ -101,7 +106,7 @@ static VALUE tcpd_accept(VALUE self)
|
||||
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 +118,7 @@ static VALUE tcpd_accept(VALUE self)
|
||||
again:
|
||||
sock = rb_funcall(tcpd->server, rb_intern("accept"), 0);
|
||||
GetOpenFile(sock, fptr);
|
||||
- sockfd = fileno(fptr->f);
|
||||
+ sockfd = fileno(rb_io_stdio_file(fptr));
|
||||
if (getpeername(sockfd, (struct sockaddr*) &addr, &len) < 0)
|
||||
rb_sys_fail("getpeername(2)");
|
||||
error = getnameinfo((struct sockaddr*) &addr, len,
|
||||
@@ -132,7 +137,7 @@ static VALUE tcpd_accept(VALUE self)
|
||||
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)) {
|
||||
@@ -156,8 +161,8 @@ tcpd_s_set_hosts_allow(VALUE self, VALUE
|
||||
{
|
||||
static char hosts_allow[MAXPATHLEN];
|
||||
|
||||
- Check_SafeStr(s);
|
||||
- snprintf(hosts_allow, sizeof(hosts_allow), "%s", RSTRING(s)->ptr);
|
||||
+ SafeStringValue(s);
|
||||
+ 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;
|
||||
@@ -176,8 +181,8 @@ tcpd_s_set_hosts_deny(VALUE self, VALUE
|
||||
{
|
||||
static char hosts_deny[MAXPATHLEN];
|
||||
|
||||
- Check_SafeStr(s);
|
||||
- snprintf(hosts_deny, sizeof(hosts_deny), "%s", RSTRING(s)->ptr);
|
||||
+ SafeStringValue(s);
|
||||
+ 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 +201,7 @@ str_to_ctlstr(VALUE s)
|
||||
{
|
||||
if(NIL_P(s)) return STRING_UNKNOWN;
|
||||
Check_Type(s, T_STRING);
|
||||
- return RSTRING(s)->ptr;
|
||||
+ return RSTRING_PTR(s);
|
||||
}
|
||||
|
||||
static VALUE
|
Loading…
Reference in New Issue
Block a user