ports/115944: [patch] net/citrix_ica - add support for non-standard root certificates

Edwin Groothuis edwin at mavetju.org
Thu Aug 30 13:30:02 UTC 2007


>Number:         115944
>Category:       ports
>Synopsis:       [patch] net/citrix_ica - add support for non-standard root certificates
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Thu Aug 30 13:30:01 GMT 2007
>Closed-Date:
>Last-Modified:
>Originator:     Edwin Groothuis
>Release:        FreeBSD 6.2-RELEASE-p4 i386
>Organization:
-
>Environment:
System: FreeBSD k7.mavetju 6.2-RELEASE-p4 FreeBSD 6.2-RELEASE-p4 #0: Thu Apr 26 17:55:55 UTC 2007 root at i386-builder.daemonology.net:/usr/obj/usr/src/sys/SMP i386


>Description:

Our Citrix server is using an Equinox signed certifate. Citrix
doesn't support this root certificate by default. When installing
this certificate into the keystore, the installed package will not
deinstall cleanly. When reinstalling it, it complains that
/usr/local/ICAclient already exist (because it didn't deinstall
cleanly)

This patch gives the possibility to install extra certificates by
setting the variable ICA_CERTS in /etc/make.conf.

>How-To-Repeat:
>Fix:

? work
Index: Makefile
===================================================================
RCS file: /home/pcvs/ports/net/citrix_ica/Makefile,v
retrieving revision 1.49
diff -u -r1.49 Makefile
--- Makefile	23 Aug 2007 04:00:01 -0000	1.49
+++ Makefile	30 Aug 2007 13:18:46 -0000
@@ -26,6 +27,14 @@
 
 CDIR=		${PREFIX}/ICAClient
 BINDIR=		${PREFIX}/bin
+CERTDIR=	${CDIR}/keystore/cacerts
+
+PLIST_SUB=	MOZILLA_HOME=${MOZILLA_HOME}
+.if defined(ICA_CERTS)
+PLIST_SUB+=	HAVE_ICA_CERTS="" ICA_CERTS="${ICA_CERTS}" CERTDIR="${CERTDIR}"
+.else
+PLIST_SUB+=	HAVE_ICA_CERTS="@comment "
+.endif
 
 NSCP=	${LOCALBASE}/libexec/netscape \
 	${LOCALBASE}/libexec/netscape-linux \
@@ -35,8 +44,6 @@
 	${LOCALBASE}/lib/netscape-linux \
 	${MOZILLA_HOME}
 
-PLIST_SUB=	MOZILLA_HOME=${MOZILLA_HOME}
-
 .include <bsd.port.pre.mk>
 
 .if exists(${PREFIX}/bin/kde-config)
@@ -60,6 +67,18 @@
 	@${FALSE}
 .endif
 
+.if defined(ICA_CERTS)
+pre-fetch:
+.for f in ${ICA_CERTS}
+	@echo "Checking ${f}"
+.if !exists(${DISTDIR}/${f})
+	@echo "Cert ${f} not found."
+	@exit 1
+.endif
+.endfor
+.endif
+
+
 do-install:
 	@if (test -d "${CDIR}") ; \
 	then \
@@ -80,4 +99,10 @@
 	${INSTALL_SCRIPT} ${WRKSRC}/wfica.x ${PREFIX}/bin/wfica
 # XXX: This is missing a "${BRANDELF} -t Linux <executables>".
 
+.if defined(ICA_CERTS)
+.for f in ${ICA_CERTS}
+	${INSTALL_DATA} ${DISTDIR}/${f} ${CERTDIR}
+.endfor
+.endif
+
 .include <bsd.port.post.mk>
Index: pkg-descr
===================================================================
RCS file: /home/pcvs/ports/net/citrix_ica/pkg-descr,v
retrieving revision 1.4
diff -u -r1.4 pkg-descr
--- pkg-descr	17 Jun 2006 09:58:51 -0000	1.4
+++ pkg-descr	30 Aug 2007 13:18:46 -0000
@@ -10,4 +10,15 @@
 are powerful management and configuration tools and faster, more
 flexible printing.
 
+
+If your Citrix server does not have one of the supplied root-certificates,
+you can copy the certificate to /usr/ports/distfiles and add the
+following line to your /etc/make.conf:
+
+	ICA_CERTS=mycert.crt
+
+It will then automatically be installed and removed with the normal
+FreeBSD package tools.
+
+
 WWW: http://www.citrix.com/English/ps2/products/product.asp?contentID=186
Index: pkg-plist
===================================================================
RCS file: /home/pcvs/ports/net/citrix_ica/pkg-plist,v
retrieving revision 1.11
diff -u -r1.11 pkg-plist
--- pkg-plist	20 Mar 2007 18:42:24 -0000	1.11
+++ pkg-plist	30 Aug 2007 13:18:46 -0000
@@ -98,6 +98,7 @@
 ICAClient/keystore/cacerts/GTECTGlobalRoot.crt
 ICAClient/keystore/cacerts/Pcs3ss_v4.crt
 ICAClient/keystore/cacerts/SecureServer.crt
+%%HAVE_ICA_CERTS%%@unexec for f in %%ICA_CERTS%%; do rm %%CERTDIR%%/${f}; done
 ICAClient/libctxssl.so
 ICAClient/nls/en/UTF-8/Wfcmgr
 ICAClient/nls/en/UTF-8/Wfica
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list