From owner-freebsd-ports@FreeBSD.ORG Sat Jun 8 14:47:07 2013 Return-Path: Delivered-To: ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 6FBCD1058 for ; Sat, 8 Jun 2013 14:47:07 +0000 (UTC) (envelope-from koobs.freebsd@gmail.com) Received: from mail-pd0-f177.google.com (mail-pd0-f177.google.com [209.85.192.177]) by mx1.freebsd.org (Postfix) with ESMTP id 473D01EFE for ; Sat, 8 Jun 2013 14:47:06 +0000 (UTC) Received: by mail-pd0-f177.google.com with SMTP id p10so395016pdj.22 for ; Sat, 08 Jun 2013 07:47:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=message-id:date:from:reply-to:user-agent:mime-version:to:cc:subject :references:in-reply-to:x-enigmail-version:content-type; bh=u3f6/27b5Cs2+PtxYREcqgETvCqeBxp94BfAg+CJycU=; b=loom0kMbjA+pW9f4jSJXevyUdo251XzKxzBT0wl8HLkppF3GU1vTKDWgrJxCaS4PCP 8bT4kVSwULH1uWItTpIEEZHx0+tz6Ll87oRIZpqKAp4EbaLPBI9bBorJrw1qgYw0HEZc TdNj8tr94ZUwJwyiPSV8WLW2dOhfU6BNxg/U61/N3DPJmQDilqEa3x5D54TYZrWRYR5q 3C2XgINwHkrNP34rsOtB7egH70yAYoMvPWRqx1YXQtXRpnC2AvjIvto0H3YHypAU2Yqr 1ZQMeUjishRSvlnVEJn4jTg0DrJSqGeCs0ocYgw6T9EX93LB9wgToDXbZfzf5PJTwOxR x6xA== X-Received: by 10.66.121.234 with SMTP id ln10mr7009219pab.129.1370702825379; Sat, 08 Jun 2013 07:47:05 -0700 (PDT) Received: from [192.168.1.7] (ppp59-167-128-11.static.internode.on.net. [59.167.128.11]) by mx.google.com with ESMTPSA id rn7sm3309035pbc.12.2013.06.08.07.47.02 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sat, 08 Jun 2013 07:47:04 -0700 (PDT) Message-ID: <51B343D6.9030405@FreeBSD.org> Date: Sun, 09 Jun 2013 00:46:46 +1000 From: Kubilay Kocak User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130509 Thunderbird/17.0.6 MIME-Version: 1.0 To: Janet Sullivan Subject: Re: REWARD for working pam_mount References: <0a9ae9e0df704d13b643ee26d487e73a@BY2PR07MB043.namprd07.prod.outlook.com> <51B2C43F.5010300@FreeBSD.org> <61141aebb22640d3938f63745330df14@BY2PR07MB043.namprd07.prod.outlook.com> In-Reply-To: <61141aebb22640d3938f63745330df14@BY2PR07MB043.namprd07.prod.outlook.com> X-Enigmail-Version: 1.5.1 Content-Type: multipart/mixed; boundary="------------010302060204020902080004" Cc: "ports@freebsd.org" X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: koobs@FreeBSD.org List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 08 Jun 2013 14:47:07 -0000 This is a multi-part message in MIME format. --------------010302060204020902080004 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit On 9/06/2013 12:33 AM, Janet Sullivan wrote: > Thank you for the quick turnaround. I'll make a donation to the foundation in your honor. :-) > > I am having problems with the patch, however, part of it is rejected, as seen below. > > (/usr/ports/sysutils/pam_mount) .oO Sat Jun 08 07:30 AM Oo. > [co1gnsntxw01] (root)## patch < pam_mount-fix-libHX.patch > Hmm... Looks like a unified diff to me... > The text leading up to this was: > -------------------------- > |Index: Makefile > |=================================================================== > |--- Makefile (revision 320195) > |+++ Makefile (working copy) > -------------------------- > Patching file Makefile using Plan A... > Hunk #1 failed at 14. > 1 out of 1 hunks failed--saving rejects to Makefile.rej > Hmm... The next patch looks like a unified diff to me... > The text leading up to this was: > -------------------------- > |Index: files/patch-commit335500 > |=================================================================== > |--- files/patch-commit335500 (revision 0) > |+++ files/patch-commit335500 (working copy) > -------------------------- > (Creating file files/patch-commit335500...) > Patching file files/patch-commit335500 using Plan A... > Hunk #1 succeeded at 1. > Hmm... Ignoring the trailing garbage. > done > > -----Original Message----- > From: Kubilay Kocak [mailto:koobs.freebsd@gmail.com] > Sent: Friday, June 7, 2013 10:42 PM > To: Janet Sullivan > Cc: ports@freebsd.org > Subject: Re: REWARD for working pam_mount > > On 8/06/2013 1:57 PM, Janet Sullivan wrote: >> The /usr/ports/sysutils/pam_mount port is broken, because it's >> expecting an older version of libHX. I'd really like to have a >> working pam_mount, and am willing to paypal US $50 over to the first >> person who gets it working. I'm not subscribed to the list, so >> please email me directly to claim the prize. > > Janet, > > Your offer is commendable but unnecessary :) > > Try this patch I just created (cherry picked from upstream), and let me know how it goes. You'll want to apply it to the pam_mount port directory. > > There's also something you can do to ensure pam_mount will work going > forward: > > I had to backport the fix because the new pam_mount 2.13 version requires libmount. Let upstream know that FreeBSD doesn't have libmount, and request they make it optional and configurable (--without-libmount configure option for example), even if it disables certain functionality. > > If it works for you, let me know so I can commit the change, and feel free to consider donating to the FreeBSD Foundation instead > > Koobs > You're welcome Janet For the Makefile, all you want to change is: -LIB_DEPENDS= HX.27:${PORTSDIR}/lang/libhx +LIB_DEPENDS= HX:${PORTSDIR}/lang/libhx If that doesn't work for you, I've also attached a second version of the patch Let me know how you go Koobs --------------010302060204020902080004 Content-Type: text/plain; charset=windows-1252; name="pam_mount-fix-libHX-v2.patch" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="pam_mount-fix-libHX-v2.patch" ===> Generating patch ===> Viewing diff with more diff -ruN /usr/ports/sysutils/pam_mount/Makefile ./Makefile --- /usr/ports/sysutils/pam_mount/Makefile 2012-11-17 17:01:40.000000000 +1100 +++ ./Makefile 2013-06-08 14:23:04.506365111 +1000 @@ -3,7 +3,7 @@ # Date created: 14 October 2010 # Whom: gahr # -# $FreeBSD: ports/sysutils/pam_mount/Makefile,v 1.11 2012/11/17 06:01:40 svnexp Exp $ +# $FreeBSD: head/sysutils/pam_mount/Makefile 300897 2012-07-14 14:29:18Z beat $ # PORTNAME= pam_mount @@ -14,7 +14,7 @@ MAINTAINER= gahr@FreeBSD.org COMMENT= A PAM that can mount volumes for a user session -LIB_DEPENDS= HX.27:${PORTSDIR}/lang/libhx +LIB_DEPENDS= HX:${PORTSDIR}/lang/libhx USE_GNOME= pkgconfig libxml2 USE_PERL5= yes diff -ruN /usr/ports/sysutils/pam_mount/files/patch-commit335500 ./files/patch-commit335500 --- /usr/ports/sysutils/pam_mount/files/patch-commit335500 1970-01-01 10:00:00.000000000 +1000 +++ ./files/patch-commit335500 2013-06-08 15:30:41.045578737 +1000 @@ -0,0 +1,144 @@ +# Patch for commit 33550036cb0c9311c9dc4da9b3b359435319420e (pam-mount) +# Log: src: update for libHX 3.12 +# Authored by: Jan Engelhardt 2011-12-02 + +--- ./configure.ac.orig 2011-10-06 22:48:08.000000000 +1100 ++++ ./configure.ac 2013-06-08 14:52:22.855624000 +1000 +@@ -63,7 +63,7 @@ + AM_CONDITIONAL([HAVE_MDIO], [test "x$ac_cv_header_sys_mdioctl_h" = "xyes"]) + AM_CONDITIONAL([HAVE_VND], [test "x$ac_cv_header_dev_vndvar_h" = "xyes"]) + +-PKG_CHECK_MODULES([libHX], [libHX >= 3.10.1]) ++PKG_CHECK_MODULES([libHX], [libHX >= 3.12]) + PKG_CHECK_MODULES([libxml], [libxml-2.0 >= 2.6]) + + AC_ARG_WITH( +--- ./src/autoloop.c.orig 2011-10-06 22:48:08.000000000 +1100 ++++ ./src/autoloop.c 2013-06-08 14:45:47.846247000 +1000 +@@ -54,7 +54,8 @@ + HXOPT_AUTOHELP, + HXOPT_TABLEEND, + }; +- if (HX_getopt(options_table, argc, argv, HXOPT_USAGEONERR) <= 0) ++ if (HX_getopt(options_table, argc, argv, HXOPT_USAGEONERR) != ++ HXOPT_ERR_SUCCESS) + return false; + if (*argc != 2) { + fprintf(stderr, "Usage: %s file\n", HX_basename(**argv)); +--- ./src/ehd.c.orig 2011-10-06 22:48:08.000000000 +1100 ++++ ./src/ehd.c 2013-06-08 14:46:27.566540000 +1000 +@@ -526,7 +526,8 @@ + HXOPT_TABLEEND, + }; + +- if (HX_getopt(options_table, argc, argv, HXOPT_USAGEONERR) <= 0) ++ if (HX_getopt(options_table, argc, argv, HXOPT_USAGEONERR) != ++ HXOPT_ERR_SUCCESS) + return false; + + pg->interactive = isatty(fileno(stdin)); +--- ./src/misc.c.orig 2011-10-06 22:48:08.000000000 +1100 ++++ ./src/misc.c 2013-06-08 14:47:27.515576000 +1000 +@@ -159,7 +159,7 @@ + { + char *filled; + +- if (HXformat2_aprintf(vinfo, &filled, arg) == 0) ++ if (HXformat_aprintf(vinfo, &filled, arg) == 0) + /* + * This case may happen with e.g. %(before="-o" OPTIONS) where + * OPTIONS is empty. And options expanding to nothing are +--- ./src/mount.c.orig 2011-10-06 22:48:08.000000000 +1100 ++++ ./src/mount.c 2013-06-08 14:47:54.655610000 +1000 +@@ -487,7 +487,7 @@ + string = HXmc_meminit(NULL, 0); + + for (i = config->command[CMD_FSCK]->first; i != NULL; i = i->next) { +- if (HXformat2_aprintf(vinfo, ¤t, i->ptr) > 0) { ++ if (HXformat_aprintf(vinfo, ¤t, i->ptr) > 0) { + HXmc_strcat(&string, current); + HXmc_strcat(&string, " "); + } +--- ./src/mtab.c.orig 2011-10-06 22:48:08.000000000 +1100 ++++ ./src/mtab.c 2013-06-08 14:48:18.965526000 +1000 +@@ -138,7 +138,7 @@ + l0g("HX_dirname: %s\n", strerror(errno)); + return -errno; + } +- ret = HX_mkdir(dirname); ++ ret = HX_mkdir(dirname, S_IRUGO | S_IXUGO | S_IWUSR); + free(dirname); + if (ret < 0) { + l0g("HX_mkdir: %s\n", strerror(-ret)); +--- ./src/mtcrypt.c.orig 2011-10-06 22:48:08.000000000 +1100 ++++ ./src/mtcrypt.c 2013-06-08 14:49:23.036264000 +1000 +@@ -185,7 +185,8 @@ + bool kfpt; + int ret; + +- if (HX_getopt(options_table, argc, argv, HXOPT_USAGEONERR) <= 0) ++ if (HX_getopt(options_table, argc, argv, HXOPT_USAGEONERR) != ++ HXOPT_ERR_SUCCESS) + return false; + + pmtlog_path[PMTLOG_DBG][PMTLOG_STDERR] = Debug; +@@ -508,7 +509,8 @@ + }; + int ret; + +- if (HX_getopt(options_table, argc, argv, HXOPT_USAGEONERR) <= 0) ++ if (HX_getopt(options_table, argc, argv, HXOPT_USAGEONERR) != ++ HXOPT_ERR_SUCCESS) + return false; + + pmtlog_path[PMTLOG_DBG][PMTLOG_STDERR] = Debug; +--- ./src/pam_mount.h 2011-10-06 22:48:08.000000000 +1100 ++++ ./src/pam_mount.h 2013-06-08 14:50:03.445549000 +1000 +@@ -15,12 +15,6 @@ + # define EXPORT_SYMBOL + #endif + +-#ifndef S_IRXG +-# define S_IRXG (S_IRGRP | S_IXGRP) +-#endif +-#ifndef S_IRXO +-# define S_IRXO (S_IROTH | S_IXOTH) +-#endif + #define sizeof_z(x) (sizeof(x) - 1) + + /* +--- ./src/pmvarrun.c.orig 2011-10-06 22:48:08.000000000 +1100 ++++ ./src/pmvarrun.c 2013-06-08 14:51:23.506567000 +1000 +@@ -296,10 +296,11 @@ + */ + static int create_var_run(void) + { ++ static const unsigned int mode = S_IRUGO | S_IXUGO | S_IWUSR; + int ret; + + w4rn("creating " VAR_RUN_PMT); +- if (HX_mkdir(VAR_RUN_PMT) < 0) { ++ if (HX_mkdir(VAR_RUN_PMT, mode) < 0) { + ret = -errno; + l0g("unable to create " VAR_RUN_PMT ": %s\n", strerror(errno)); + return ret; +@@ -314,7 +315,7 @@ + * 0755: `su` creates file group owned by user and then releases root + * permissions. User needs to be able to access file on logout. + */ +- if (chmod(VAR_RUN_PMT, S_IRWXU | S_IRXG | S_IRXO) < 0) { ++ if (chmod(VAR_RUN_PMT, mode) < 0) { + ret = -errno; + l0g("unable to chmod " VAR_RUN_PMT ": %s\n", strerror(errno)); + return ret; +--- ./src/rdconf1.c.orig 2011-10-06 22:48:08.000000000 +1100 ++++ ./src/rdconf1.c 2013-06-08 14:51:47.165542000 +1000 +@@ -126,7 +126,7 @@ + + if (*dest_pptr == NULL) + return true; +- HXformat2_aprintf(vinfo, &tmp, *dest_pptr); ++ HXformat_aprintf(vinfo, &tmp, *dest_pptr); + *dest_pptr = xstrdup(tmp); + HXmc_free(tmp); + return true; ===> Done --------------010302060204020902080004--