From nobody@FreeBSD.org  Tue Aug  4 13:53:47 2009
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
	by hub.freebsd.org (Postfix) with ESMTP id 2657C1065676
	for <freebsd-gnats-submit@FreeBSD.org>; Tue,  4 Aug 2009 13:53:47 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from www.freebsd.org (www.freebsd.org [IPv6:2001:4f8:fff6::21])
	by mx1.freebsd.org (Postfix) with ESMTP id 0AB5A8FC13
	for <freebsd-gnats-submit@FreeBSD.org>; Tue,  4 Aug 2009 13:53:47 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from www.freebsd.org (localhost [127.0.0.1])
	by www.freebsd.org (8.14.3/8.14.3) with ESMTP id n74Drk1W083131
	for <freebsd-gnats-submit@FreeBSD.org>; Tue, 4 Aug 2009 13:53:46 GMT
	(envelope-from nobody@www.freebsd.org)
Received: (from nobody@localhost)
	by www.freebsd.org (8.14.3/8.14.3/Submit) id n74Drk3S083118;
	Tue, 4 Aug 2009 13:53:46 GMT
	(envelope-from nobody)
Message-Id: <200908041353.n74Drk3S083118@www.freebsd.org>
Date: Tue, 4 Aug 2009 13:53:46 GMT
From: Ryan Steinmetz <rpsfa@rit.edu>
To: freebsd-gnats-submit@FreeBSD.org
Subject: Update to net/freeradius2 adds experimental Oracle support
X-Send-Pr-Version: www-3.1
X-GNATS-Notify: david@wood2.org.uk

>Number:         137425
>Category:       ports
>Synopsis:       Update to net/freeradius2 adds experimental Oracle support
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    wxs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Aug 04 14:00:12 UTC 2009
>Closed-Date:    Wed Sep 09 17:08:03 UTC 2009
>Last-Modified:  Wed Sep  9 17:10:01 UTC 2009
>Originator:     Ryan Steinmetz
>Release:        Freebsd 7.2-RELEASE
>Organization:
Rochester Institute of Technology
>Environment:
FreeBSD xxx.rit.edu 7.2-RELEASE FreeBSD 7.2-RELEASE #1: Mon May  4 20:25:00 EDT 2009     root@xxx.rit.edu:/usr/obj/usr/src/sys/xxx  i386
>Description:

>How-To-Repeat:

>Fix:


Patch attached with submission follows:

diff -urN /usr/ports/net/freeradius2/Makefile freeradius2/Makefile
--- /usr/ports/net/freeradius2/Makefile	2009-07-05 19:13:59.000000000 -0400
+++ freeradius2/Makefile	2009-08-04 09:39:55.000000000 -0400
@@ -51,6 +51,7 @@
 		FIREBIRD	"With Firebird database support (EXPERIMENTAL)" off \
 		PERL		"With Perl support" on \
 		PYTHON		"With Python support" on \
+		OCI8		"With Oracle support (EXPERIMENTAL)" off \
 		RUBY		"With Ruby support (EXPERIMENTAL)" off \
 		DHCP		"With DHCP support (EXPERIMENTAL)" off \
 		EXPERIMENTAL	"Build experimental modules" off
@@ -201,6 +202,19 @@
 WITH_EXPERIMENTAL=	yes
 .endif
 
+# Oracle support is experimental under FreeBSD
+.ifdef(WITH_OCI8)
+EXTRA_PATCHES+=	files/extra-patch-exec.c
+CONFIGURE_ENV=	ORACLE_HOME="${ORACLE_HOME}"
+ORACLE_HOME?=	${LOCALBASE}/oracle8-client
+BUILD_DEPENDS+=	${ORACLE_HOME}/lib/libclntst8.a:${PORTSDIR}/databases/oracle8-client
+CONFIGURE_ARGS+=--with-oracle-home-dir=${ORACLE_HOME}/rdbms/demo
+PLIST_SUB+=	OCI8=""
+.else
+CONFIGURE_ARGS+=--without-rlm_sql_oracle
+PLIST_SUB+=	OCI8="@comment "
+.endif
+
 .ifdef(WITH_EXPERIMENTAL)
 CONFIGURE_ARGS+=--with-experimental-modules
 PLIST_SUB+=	EXPM=""
@@ -255,7 +269,6 @@
 		--without-rlm_opendirectory \
 		--without-rlm_sql_db2 \
 		--without-rlm_sql_iodbc \
-		--without-rlm_sql_oracle \
 		--without-rlm_sql_sqlite \
 		--without-rlm_sql_sybase \
 		--with-vmps
diff -urN /usr/ports/net/freeradius2/files/extra-patch-exec.c freeradius2/files/extra-patch-exec.c
--- /usr/ports/net/freeradius2/files/extra-patch-exec.c	1969-12-31 19:00:00.000000000 -0500
+++ freeradius2/files/extra-patch-exec.c	2009-08-03 21:22:46.000000000 -0400
@@ -0,0 +1,11 @@
+--- src/main/exec.c	2008-12-05 11:37:56.000000000 -0500
++++ src/main/exec.c	2009-01-18 17:43:32.000000000 -0500
+@@ -222,6 +222,8 @@
+ 		output_pairs = NULL;
+ 	}
+
++	signal(SIGCHLD, SIG_DFL);
++
+ 	if (exec_wait) {
+ 		pid = rad_fork();	/* remember PID */
+ 	} else {
diff -urN /usr/ports/net/freeradius2/pkg-plist freeradius2/pkg-plist
--- /usr/ports/net/freeradius2/pkg-plist	2009-07-05 19:13:59.000000000 -0400
+++ freeradius2/pkg-plist	2009-08-03 20:46:59.000000000 -0400
@@ -429,6 +429,11 @@
 %%MYSQL%%%%LIBDIR%%/rlm_sql_mysql.a
 %%MYSQL%%%%LIBDIR%%/rlm_sql_mysql.la
 %%MYSQL%%%%LIBDIR%%/rlm_sql_mysql.so
+%%OCI8%%%%LIBDIR%%/rlm_sql_oracle-%%PORTVERSION%%.la
+%%OCI8%%%%LIBDIR%%/rlm_sql_oracle-%%PORTVERSION%%.so
+%%OCI8%%%%LIBDIR%%/rlm_sql_oracle.a
+%%OCI8%%%%LIBDIR%%/rlm_sql_oracle.la
+%%OCI8%%%%LIBDIR%%/rlm_sql_oracle.so
 %%PGSQL%%%%LIBDIR%%/rlm_sql_postgresql-%%PORTVERSION%%.la
 %%PGSQL%%%%LIBDIR%%/rlm_sql_postgresql-%%PORTVERSION%%.so
 %%PGSQL%%%%LIBDIR%%/rlm_sql_postgresql.a


>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->feedback 
State-Changed-By: edwin 
State-Changed-When: Tue Aug 4 14:00:23 UTC 2009 
State-Changed-Why:  
Awaiting maintainers feedback (via the GNATS Auto Assign Tool) 

http://www.freebsd.org/cgi/query-pr.cgi?pr=137425 
Responsible-Changed-From-To: freebsd-ports-bugs->wxs 
Responsible-Changed-By: wxs 
Responsible-Changed-When: Tue Aug 4 14:02:26 UTC 2009 
Responsible-Changed-Why:  
I'll take it. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=137425 

From: Edwin Groothuis <edwin@FreeBSD.org>
To: david@wood2.org.uk
Cc: bug-followup@FreeBSD.org
Subject: Re: ports/137425: Update to net/freeradius2 adds experimental Oracle support
Date: Tue, 4 Aug 2009 14:00:21 UT

 Maintainer of net/freeradius2,
 
 Please note that PR ports/137425 has just been submitted.
 
 If it contains a patch for an upgrade, an enhancement or a bug fix
 you agree on, reply to this email stating that you approve the patch
 and a committer will take care of it.
 
 The full text of the PR can be found at:
     http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/137425
 
 -- 
 Edwin Groothuis via the GNATS Auto Assign Tool
 edwin@FreeBSD.org

From: David Wood <david@wood2.org.uk>
To: bug-followup@FreeBSD.org, rpsfa@rit.edu, wxs@FreeBSD.org
Cc:  
Subject: Re: ports/137425: Update to net/freeradius2 adds experimental Oracle support
Date: Thu, 6 Aug 2009 22:57:11 +0100

 Thanks very for this, Ryan - others have mentioned Oracle support, but 
 nobody has come up with a patch before, let alone a complete patch in a 
 PR.
 
 
 There's a few things I'd like to sort out before this is committed.
 
 
 I think ORACLE is a better name for the option and plist variable than 
 the rather cryptic OCI8.
 
 
 The (EXPERIMENTAL) label in an option means that the EXPERIMENTAL switch 
 is implied by that option. I believe you are declaring Oracle support in 
 FreeRADIUS on FreeBSD to be experimental, but that you don't need 
 EXPERIMENTAL set. If so, I think we need to explain this a different 
 way, rather than overloading the (EXPERIMENTAL) label.
 
 
 Can you explain the patch to src/main/exec.c? It would be good to know 
 where it has come from (for example, is it mentioned in the 
 documentation for rlm_sql_oracle, or on bugs.freeradius.org?) and why it 
 is needed. I see what it does, but with FreeRADIUS being a security 
 critical port, I'd rather understand it fully before this is committed.
 
 I've tried to limit patches in the FreeRADIUS ports to the build system 
 only since I took over maintainership, but sometimes patches to the 
 actual code are necessary, and this seems to be one of those occasions. 
 The Debian OpenSSL debacle stands out in my mind as a demonstration of 
 the danger of single line changes to security critical code, though I 
 realise this patch doesn't touch cryptographic code.
 
 
 PORTREVISION should arguably be bumped.
 
 
 The patch as it stands is not approved, but I'm sure we can sort out the 
 minor changes to get it into shape. I'm very grateful for your 
 submission and look forward to devising an approved patch together.
 
 
 Unfortunately I'm away for most of the next two and a half weeks, but 
 I'll try to keep an eye on this PR via my laptop, especially with the 
 FreeBSD 8.0 ports freeze so close.
 
 
 With best wishes,
 
 
 
 
 David (maintainer, net/freeradius2)
 -- 
 David Wood
 david@wood2.org.uk

From: Wesley Shields <wxs@FreeBSD.org>
To: David Wood <david@wood2.org.uk>
Cc: bug-followup@FreeBSD.org, rpsfa@rit.edu
Subject: Re: ports/137425: Update to net/freeradius2 adds experimental
 Oracle support
Date: Thu, 6 Aug 2009 19:01:24 -0400

 On Thu, Aug 06, 2009 at 10:57:11PM +0100, David Wood wrote:
 > PORTREVISION should arguably be bumped.
 
 I only did a quick review of the patch before Ryan submitted it and I
 thought about this. The option defaults to off so there is no need to
 bump PORTREVISION (it doesn't affect the package and it doesn't fix a
 bug in the existing port).
 
 I leave the rest of your comments up to Ryan but want to say thank you
 for being responsive and I look forward to concluding this matter.
 
 -- WXS

From: Ryan Steinmetz <rpsfa@rit.edu>
To: David Wood <david@wood2.org.uk>
Cc: bug-followup@FreeBSD.org, wxs@FreeBSD.org
Subject: Re: ports/137425: Update to net/freeradius2 adds experimental
 Oracle support
Date: Thu, 6 Aug 2009 18:56:03 -0400

 David,
 
 I selected OCI8 as it appears to be what is used in other ports, specifically referencing the oracle 8 client that lives in ports.   There is a version 7 of the client (databases/oracle7-client) so I specifically wanted to ensure we ended up with version 8 of the client.  www/codeigniter and databases/p5-DBD-Oracle are examples of where WITH_OCI8 is used elsewhere within the ports tree.
 
 You are correct about the EXPERIMENTAL label meaning that oracle support under freebsd is experimental, not that we need the EXPERIMENTAL module set to use oracle.
 
 As for the patch to src/main/exec.c, the Oracle libraries appear to hijack various signals for some silly reason.  The hijacking of the SIGCHLD signal breaks FR's ability to use exec as intended, which is required by the mschap module as well as the exec module.  Without the patch, FR doesn't think that the process it exec'd completed successfully and, as you can imagine, this creates other issues.
 
 The Oracle documentation that I have come across in the past says "The pipe driver uses SIGCLD, also referred to as SIGCHLD, when an Oracle process dies."  Since FR actually forks() to use exec, I believe this is where the Oracle libraries cause havoc for us.
 
 The patch simply resets the sighandler back to the default before forking, which (in my testing) has resolved the issue.  Since it doesn't appear as if FR defines a special handler for SIGCHLD, I feel the default is appropriate.  There may be a more appropriate way of dealing with this, but, this seems to work.  Considering how minimal of a patch it is, I have decided to submit it as is.  However, I'd love to hear/see an alternative.
 
 I have been running FR2 with the patch to exec.c (and with oracle support) for a few months now in a production environment on three separate hosts with great success.  I have, however, seen FR segfault on exit (with the Oracle libraries loaded, which I believe happens whenever detach_modules() is called) and therefor have flagged Oracle support as being experimental.
 
 As far as PORTREVISION goes, I agree and apologize for missing that in my original patch.
 
 I will submit a new patch that addresses the EXPERIMENTAL label and PORTREVISION.
 
 Thanks,
 -r
 
 
 On (08/06/09 22:57), David Wood wrote:
 > Thanks very for this, Ryan - others have mentioned Oracle support, but 
 > nobody has come up with a patch before, let alone a complete patch in a 
 > PR.
 > 
 > 
 > There's a few things I'd like to sort out before this is committed.
 > 
 > 
 > I think ORACLE is a better name for the option and plist variable than 
 > the rather cryptic OCI8.
 > 
 > 
 > The (EXPERIMENTAL) label in an option means that the EXPERIMENTAL switch 
 > is implied by that option. I believe you are declaring Oracle support in 
 > FreeRADIUS on FreeBSD to be experimental, but that you don't need 
 > EXPERIMENTAL set. If so, I think we need to explain this a different 
 > way, rather than overloading the (EXPERIMENTAL) label.
 > 
 > 
 > Can you explain the patch to src/main/exec.c? It would be good to know 
 > where it has come from (for example, is it mentioned in the 
 > documentation for rlm_sql_oracle, or on bugs.freeradius.org?) and why it 
 > is needed. I see what it does, but with FreeRADIUS being a security 
 > critical port, I'd rather understand it fully before this is committed.
 > 
 > I've tried to limit patches in the FreeRADIUS ports to the build system 
 > only since I took over maintainership, but sometimes patches to the 
 > actual code are necessary, and this seems to be one of those occasions. 
 > The Debian OpenSSL debacle stands out in my mind as a demonstration of 
 > the danger of single line changes to security critical code, though I 
 > realise this patch doesn't touch cryptographic code.
 > 
 > 
 > PORTREVISION should arguably be bumped.
 > 
 > 
 > The patch as it stands is not approved, but I'm sure we can sort out the 
 > minor changes to get it into shape. I'm very grateful for your 
 > submission and look forward to devising an approved patch together.
 > 
 > 
 > Unfortunately I'm away for most of the next two and a half weeks, but 
 > I'll try to keep an eye on this PR via my laptop, especially with the 
 > FreeBSD 8.0 ports freeze so close.
 > 
 > 
 > With best wishes,
 > 
 > 
 > 
 > 
 > David (maintainer, net/freeradius2)
 > -- 
 > David Wood
 > david@wood2.org.uk
 
 -- 
 Ryan Steinmetz
 Lead Security/Systems Administrator
 Infrastructure Engineering
 Rochester Institute of Technology
 585.475.5663
 PGP: EF36 D45A 5CA9 28B1 A550  18CD A43C D111 7AD7 FAF2

From: Ryan Steinmetz <rpsfa@rit.edu>
To: David Wood <david@wood2.org.uk>
Cc: bug-followup@FreeBSD.org, wxs@FreeBSD.org
Subject: Re: ports/137425: Update to net/freeradius2 adds experimental
 Oracle support
Date: Thu, 6 Aug 2009 18:58:19 -0400

 --HcAYCG3uE/tztfnV
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: inline
 
 Updated patch attached.
 
 On (08/06/09 22:57), David Wood wrote:
 > Thanks very for this, Ryan - others have mentioned Oracle support, but 
 > nobody has come up with a patch before, let alone a complete patch in a 
 > PR.
 > 
 > 
 > There's a few things I'd like to sort out before this is committed.
 > 
 > 
 > I think ORACLE is a better name for the option and plist variable than 
 > the rather cryptic OCI8.
 > 
 > 
 > The (EXPERIMENTAL) label in an option means that the EXPERIMENTAL switch 
 > is implied by that option. I believe you are declaring Oracle support in 
 > FreeRADIUS on FreeBSD to be experimental, but that you don't need 
 > EXPERIMENTAL set. If so, I think we need to explain this a different 
 > way, rather than overloading the (EXPERIMENTAL) label.
 > 
 > 
 > Can you explain the patch to src/main/exec.c? It would be good to know 
 > where it has come from (for example, is it mentioned in the 
 > documentation for rlm_sql_oracle, or on bugs.freeradius.org?) and why it 
 > is needed. I see what it does, but with FreeRADIUS being a security 
 > critical port, I'd rather understand it fully before this is committed.
 > 
 > I've tried to limit patches in the FreeRADIUS ports to the build system 
 > only since I took over maintainership, but sometimes patches to the 
 > actual code are necessary, and this seems to be one of those occasions. 
 > The Debian OpenSSL debacle stands out in my mind as a demonstration of 
 > the danger of single line changes to security critical code, though I 
 > realise this patch doesn't touch cryptographic code.
 > 
 > 
 > PORTREVISION should arguably be bumped.
 > 
 > 
 > The patch as it stands is not approved, but I'm sure we can sort out the 
 > minor changes to get it into shape. I'm very grateful for your 
 > submission and look forward to devising an approved patch together.
 > 
 > 
 > Unfortunately I'm away for most of the next two and a half weeks, but 
 > I'll try to keep an eye on this PR via my laptop, especially with the 
 > FreeBSD 8.0 ports freeze so close.
 > 
 > 
 > With best wishes,
 > 
 > 
 > 
 > 
 > David (maintainer, net/freeradius2)
 > -- 
 > David Wood
 > david@wood2.org.uk
 
 -- 
 Ryan Steinmetz
 Lead Security/Systems Administrator
 Infrastructure Engineering
 Rochester Institute of Technology
 585.475.5663
 PGP: EF36 D45A 5CA9 28B1 A550  18CD A43C D111 7AD7 FAF2
 
 --HcAYCG3uE/tztfnV
 Content-Type: text/x-diff; charset=us-ascii
 Content-Disposition: attachment; filename="freeradius2-oracle2.diff"
 
 diff -urN /usr/ports/net/freeradius2/Makefile freeradius2/Makefile
 --- /usr/ports/net/freeradius2/Makefile	2009-07-05 19:13:59.000000000 -0400
 +++ freeradius2/Makefile	2009-08-06 18:50:25.000000000 -0400
 @@ -9,6 +9,7 @@
  
  PORTNAME=	freeradius
  DISTVERSION=	2.1.6
 +PORTREVISION=	1
  CATEGORIES=	net
  MASTER_SITES=	ftp://ftp.freeradius.org/pub/freeradius/%SUBDIR%/ \
  		ftp://ftp.ntua.gr/pub/net/radius/freeradius/%SUBDIR%/ \
 @@ -51,6 +52,7 @@
  		FIREBIRD	"With Firebird database support (EXPERIMENTAL)" off \
  		PERL		"With Perl support" on \
  		PYTHON		"With Python support" on \
 +		OCI8		"With Oracle support (currently experimental)" off \
  		RUBY		"With Ruby support (EXPERIMENTAL)" off \
  		DHCP		"With DHCP support (EXPERIMENTAL)" off \
  		EXPERIMENTAL	"Build experimental modules" off
 @@ -201,6 +203,19 @@
  WITH_EXPERIMENTAL=	yes
  .endif
  
 +# Oracle support is experimental under FreeBSD
 +.ifdef(WITH_OCI8)
 +EXTRA_PATCHES+=	files/extra-patch-exec.c
 +CONFIGURE_ENV=	ORACLE_HOME="${ORACLE_HOME}"
 +ORACLE_HOME?=	${LOCALBASE}/oracle8-client
 +BUILD_DEPENDS+=	${ORACLE_HOME}/lib/libclntst8.a:${PORTSDIR}/databases/oracle8-client
 +CONFIGURE_ARGS+=--with-oracle-home-dir=${ORACLE_HOME}/rdbms/demo
 +PLIST_SUB+=	OCI8=""
 +.else
 +CONFIGURE_ARGS+=--without-rlm_sql_oracle
 +PLIST_SUB+=	OCI8="@comment "
 +.endif
 +
  .ifdef(WITH_EXPERIMENTAL)
  CONFIGURE_ARGS+=--with-experimental-modules
  PLIST_SUB+=	EXPM=""
 @@ -255,7 +270,6 @@
  		--without-rlm_opendirectory \
  		--without-rlm_sql_db2 \
  		--without-rlm_sql_iodbc \
 -		--without-rlm_sql_oracle \
  		--without-rlm_sql_sqlite \
  		--without-rlm_sql_sybase \
  		--with-vmps
 diff -urN /usr/ports/net/freeradius2/files/extra-patch-exec.c freeradius2/files/extra-patch-exec.c
 --- /usr/ports/net/freeradius2/files/extra-patch-exec.c	1969-12-31 19:00:00.000000000 -0500
 +++ freeradius2/files/extra-patch-exec.c	2009-08-03 21:22:46.000000000 -0400
 @@ -0,0 +1,11 @@
 +--- src/main/exec.c	2008-12-05 11:37:56.000000000 -0500
 ++++ src/main/exec.c	2009-01-18 17:43:32.000000000 -0500
 +@@ -222,6 +222,8 @@
 + 		output_pairs = NULL;
 + 	}
 +
 ++	signal(SIGCHLD, SIG_DFL);
 ++
 + 	if (exec_wait) {
 + 		pid = rad_fork();	/* remember PID */
 + 	} else {
 diff -urN /usr/ports/net/freeradius2/pkg-plist freeradius2/pkg-plist
 --- /usr/ports/net/freeradius2/pkg-plist	2009-07-05 19:13:59.000000000 -0400
 +++ freeradius2/pkg-plist	2009-08-03 20:46:59.000000000 -0400
 @@ -429,6 +429,11 @@
  %%MYSQL%%%%LIBDIR%%/rlm_sql_mysql.a
  %%MYSQL%%%%LIBDIR%%/rlm_sql_mysql.la
  %%MYSQL%%%%LIBDIR%%/rlm_sql_mysql.so
 +%%OCI8%%%%LIBDIR%%/rlm_sql_oracle-%%PORTVERSION%%.la
 +%%OCI8%%%%LIBDIR%%/rlm_sql_oracle-%%PORTVERSION%%.so
 +%%OCI8%%%%LIBDIR%%/rlm_sql_oracle.a
 +%%OCI8%%%%LIBDIR%%/rlm_sql_oracle.la
 +%%OCI8%%%%LIBDIR%%/rlm_sql_oracle.so
  %%PGSQL%%%%LIBDIR%%/rlm_sql_postgresql-%%PORTVERSION%%.la
  %%PGSQL%%%%LIBDIR%%/rlm_sql_postgresql-%%PORTVERSION%%.so
  %%PGSQL%%%%LIBDIR%%/rlm_sql_postgresql.a
 
 --HcAYCG3uE/tztfnV--

From: Wesley Shields <wxs@FreeBSD.org>
To: Ryan Steinmetz <rpsfa@rit.edu>, David Wood <david@wood2.org.uk>
Cc: bug-followup@FreeBSD.org
Subject: Re: ports/137425: Update to net/freeradius2 adds experimental
 Oracle support
Date: Mon, 24 Aug 2009 16:05:52 -0400

 On Thu, Aug 06, 2009 at 11:30:07PM +0000, Ryan Steinmetz wrote:
 >  Updated patch attached.
 
 David,
 
 Do you have any comments on this updated patch? I'd like to see
 PORTREVISION removed for the reason I mentioned earlier: the patch adds
 an option which defaults to off so it doesn't affect the default package
 or currently installed ports.
 
 This patch has been languishing since August 6th so I'd like to bring it
 to a conclusion and get it committed. If you are not comfortable
 approving the changes to the code I'd suggest we get one of the
 upstream developers to review the proposed changes.
 
 Thanks!
 
 -- WXS

From: Ryan Steinmetz <rpsfa@rit.edu>
To: Wesley Shields <wxs@FreeBSD.org>
Cc: David Wood <david@wood2.org.uk>, bug-followup@FreeBSD.org
Subject: Re: ports/137425: Update to net/freeradius2 adds experimental
 Oracle support
Date: Wed, 2 Sep 2009 19:53:33 -0400

 --zYM0uCDKw75PZbzx
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: inline
 
 David,
 
 I've added an updated patch that is up to date in light of the libtool/libltdl updates.
 
 I've also added a 'make config' knob for enabling developer mode, which can help developers more-easily debug things using the version of FR in ports.
 
 -r
 
 On (08/24/09 16:05), Wesley Shields wrote:
 > On Thu, Aug 06, 2009 at 11:30:07PM +0000, Ryan Steinmetz wrote:
 > >  Updated patch attached.
 > 
 > David,
 > 
 > Do you have any comments on this updated patch? I'd like to see
 > PORTREVISION removed for the reason I mentioned earlier: the patch adds
 > an option which defaults to off so it doesn't affect the default package
 > or currently installed ports.
 > 
 > This patch has been languishing since August 6th so I'd like to bring it
 > to a conclusion and get it committed. If you are not comfortable
 > approving the changes to the code I'd suggest we get one of the
 > upstream developers to review the proposed changes.
 > 
 > Thanks!
 > 
 > -- WXS
 
 -- 
 Ryan Steinmetz
 Lead Security/Systems Administrator
 Infrastructure Engineering
 Rochester Institute of Technology
 585.475.5663
 PGP: EF36 D45A 5CA9 28B1 A550  18CD A43C D111 7AD7 FAF2
 
 --zYM0uCDKw75PZbzx
 Content-Type: text/plain; charset=us-ascii
 Content-Disposition: attachment; filename="fr2-oracle.diff.txt"
 
 diff -urN /usr/ports/net/freeradius2/Makefile freeradius2/Makefile
 --- /usr/ports/net/freeradius2/Makefile	2009-08-02 15:34:57.000000000 -0400
 +++ freeradius2/Makefile	2009-09-02 19:47:01.000000000 -0400
 @@ -51,6 +51,8 @@
  		FIREBIRD	"With Firebird database support (EXPERIMENTAL)" off \
  		PERL		"With Perl support" on \
  		PYTHON		"With Python support" on \
 +		OCI8		"With Oracle support (currently experimental)" off \
 +		DEVELOPER	"With developer support" off \
  		RUBY		"With Ruby support (EXPERIMENTAL)" off \
  		DHCP		"With DHCP support (EXPERIMENTAL)" off \
  		EXPERIMENTAL	"Build experimental modules" off
 @@ -201,6 +203,23 @@
  WITH_EXPERIMENTAL=	yes
  .endif
  
 +.ifdef(WITH_DEVELOPER)
 +CONFIGURE_ARGS+=	--enable-developer
 +.endif
 +
 +# Oracle support is experimental under FreeBSD
 +.ifdef(WITH_OCI8)
 +EXTRA_PATCHES+=	files/extra-patch-exec.c
 +CONFIGURE_ENV=	ORACLE_HOME="${ORACLE_HOME}"
 +ORACLE_HOME?=	${LOCALBASE}/oracle8-client
 +BUILD_DEPENDS+=	${ORACLE_HOME}/lib/libclntst8.a:${PORTSDIR}/databases/oracle8-client
 +CONFIGURE_ARGS+=--with-oracle-home-dir=${ORACLE_HOME}/rdbms/demo
 +PLIST_SUB+=	OCI8=""
 +.else
 +CONFIGURE_ARGS+=--without-rlm_sql_oracle
 +PLIST_SUB+=	OCI8="@comment "
 +.endif
 +
  .ifdef(WITH_EXPERIMENTAL)
  CONFIGURE_ARGS+=--with-experimental-modules
  PLIST_SUB+=	EXPM=""
 @@ -255,7 +274,6 @@
  		--without-rlm_opendirectory \
  		--without-rlm_sql_db2 \
  		--without-rlm_sql_iodbc \
 -		--without-rlm_sql_oracle \
  		--without-rlm_sql_sqlite \
  		--without-rlm_sql_sybase \
  		--with-vmps
 diff -urN /usr/ports/net/freeradius2/files/extra-patch-exec.c freeradius2/files/extra-patch-exec.c
 --- /usr/ports/net/freeradius2/files/extra-patch-exec.c	1969-12-31 19:00:00.000000000 -0500
 +++ freeradius2/files/extra-patch-exec.c	2009-08-03 21:22:46.000000000 -0400
 @@ -0,0 +1,11 @@
 +--- src/main/exec.c	2008-12-05 11:37:56.000000000 -0500
 ++++ src/main/exec.c	2009-01-18 17:43:32.000000000 -0500
 +@@ -222,6 +222,8 @@
 + 		output_pairs = NULL;
 + 	}
 +
 ++	signal(SIGCHLD, SIG_DFL);
 ++
 + 	if (exec_wait) {
 + 		pid = rad_fork();	/* remember PID */
 + 	} else {
 diff -urN /usr/ports/net/freeradius2/pkg-plist freeradius2/pkg-plist
 --- /usr/ports/net/freeradius2/pkg-plist	2009-07-05 19:13:59.000000000 -0400
 +++ freeradius2/pkg-plist	2009-08-03 20:46:59.000000000 -0400
 @@ -429,6 +429,11 @@
  %%MYSQL%%%%LIBDIR%%/rlm_sql_mysql.a
  %%MYSQL%%%%LIBDIR%%/rlm_sql_mysql.la
  %%MYSQL%%%%LIBDIR%%/rlm_sql_mysql.so
 +%%OCI8%%%%LIBDIR%%/rlm_sql_oracle-%%PORTVERSION%%.la
 +%%OCI8%%%%LIBDIR%%/rlm_sql_oracle-%%PORTVERSION%%.so
 +%%OCI8%%%%LIBDIR%%/rlm_sql_oracle.a
 +%%OCI8%%%%LIBDIR%%/rlm_sql_oracle.la
 +%%OCI8%%%%LIBDIR%%/rlm_sql_oracle.so
  %%PGSQL%%%%LIBDIR%%/rlm_sql_postgresql-%%PORTVERSION%%.la
  %%PGSQL%%%%LIBDIR%%/rlm_sql_postgresql-%%PORTVERSION%%.so
  %%PGSQL%%%%LIBDIR%%/rlm_sql_postgresql.a
 
 --zYM0uCDKw75PZbzx--
State-Changed-From-To: feedback->closed 
State-Changed-By: wxs 
State-Changed-When: Wed Sep 9 17:08:02 UTC 2009 
State-Changed-Why:  
Committed. Thanks! 

http://www.freebsd.org/cgi/query-pr.cgi?pr=137425 

From: dfilter@FreeBSD.ORG (dfilter service)
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/137425: commit references a PR
Date: Wed,  9 Sep 2009 17:02:44 +0000 (UTC)

 wxs         2009-09-09 17:02:31 UTC
 
   FreeBSD ports repository
 
   Modified files:
     net/freeradius2      Makefile pkg-plist 
   Added files:
     net/freeradius2/files extra-patch-exec.c 
   Log:
   - Add support for Oracle and debugging options (both off by default).
   
   PR:             ports/137425
   Submitted by:   Ryan Steinmetz <rpsfa@rit.edu>
   Approved by:    maintainer timeout
   
   Revision  Changes    Path
   1.79      +19 -1     ports/net/freeradius2/Makefile
   1.1       +11 -0     ports/net/freeradius2/files/extra-patch-exec.c (new)
   1.40      +5 -0      ports/net/freeradius2/pkg-plist
 _______________________________________________
 cvs-all@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/cvs-all
 To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
 
>Unformatted:
