diff options
author | markd <markd@pkgsrc.org> | 2014-06-28 04:41:55 +0000 |
---|---|---|
committer | markd <markd@pkgsrc.org> | 2014-06-28 04:41:55 +0000 |
commit | ac59229d6c880281e9fb7e148c6676f6747685db (patch) | |
tree | 8f301f60e97410fb19e3423c1292e560599448c7 /net | |
parent | bba4c52f3cb89a4b482a5a59141ed46db0b58c00 (diff) | |
download | pkgsrc-ac59229d6c880281e9fb7e148c6676f6747685db.tar.gz |
Fix an fd leak when using appledouble = v2 - from upstream.
Bump PKGREVISION
Diffstat (limited to 'net')
-rw-r--r-- | net/netatalk30/Makefile | 4 | ||||
-rw-r--r-- | net/netatalk30/distinfo | 3 | ||||
-rw-r--r-- | net/netatalk30/patches/patch-libatalk_adouble_ad_flush.c | 24 |
3 files changed, 28 insertions, 3 deletions
diff --git a/net/netatalk30/Makefile b/net/netatalk30/Makefile index cb401364e23..7056b380411 100644 --- a/net/netatalk30/Makefile +++ b/net/netatalk30/Makefile @@ -1,8 +1,8 @@ -# $NetBSD: Makefile,v 1.2 2014/06/18 09:28:16 wiz Exp $ +# $NetBSD: Makefile,v 1.3 2014/06/28 04:41:55 markd Exp $ DISTNAME= netatalk-3.0.8 PKGNAME= ${DISTNAME:C/-/30-/} -PKGREVISION= 1 +PKGREVISION= 2 CATEGORIES= net MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=netatalk/} EXTRACT_SUFX= .tar.bz2 diff --git a/net/netatalk30/distinfo b/net/netatalk30/distinfo index d222ce3f0bb..93657874784 100644 --- a/net/netatalk30/distinfo +++ b/net/netatalk30/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.1 2014/06/11 11:03:56 hauke Exp $ +$NetBSD: distinfo,v 1.2 2014/06/28 04:41:55 markd Exp $ SHA1 (netatalk-3.0.8.tar.bz2) = 4956d0991ae09e6c5336980b0c9d92afe8153f5f RMD160 (netatalk-3.0.8.tar.bz2) = 61b8b5a43985b8a5441867cb96b9de5aeba324fb @@ -14,5 +14,6 @@ SHA1 (patch-etc_afpd_quota.c) = 90025824fd513788c167108e4c388b453ab75ee6 SHA1 (patch-etc_cnid__dbd_cnid__metad.c) = 06a97387594f386d3e049ba1e25d4626ac96195f SHA1 (patch-etc_uams_uams__randnum.c) = 0226d1aa382cffea454adf6bc0dc6e6fa1800dcc SHA1 (patch-include_atalk_util.h) = 5fe41720bf82980f6d5965f76d34e1703e541047 +SHA1 (patch-libatalk_adouble_ad_flush.c) = d4df84d2786bf392a5113b4867d955098c0c1da9 SHA1 (patch-libatalk_util_getiface.c) = fe4aba6080f6308866bedb3d96ccc2b034836d3e SHA1 (patch-macros_quota-check.m4) = aa8a053b83bc4579ca0a8f66f43226ead8e79696 diff --git a/net/netatalk30/patches/patch-libatalk_adouble_ad_flush.c b/net/netatalk30/patches/patch-libatalk_adouble_ad_flush.c new file mode 100644 index 00000000000..9622099f585 --- /dev/null +++ b/net/netatalk30/patches/patch-libatalk_adouble_ad_flush.c @@ -0,0 +1,24 @@ +$NetBSD: patch-libatalk_adouble_ad_flush.c,v 1.1 2014/06/28 04:41:55 markd Exp $ + +fd leak when using appledouble = v2, netatalk bug 554 + +--- libatalk/adouble/ad_flush.c.orig 2013-04-09 12:56:18.000000000 +0000 ++++ libatalk/adouble/ad_flush.c +@@ -429,6 +429,17 @@ int ad_close(struct adouble *ad, int adf + } + + if (adflags & ADFLAGS_RF) { ++ /* HF is automatically opened when opening an RF, close it. */ ++ if ((ad->ad_vers == AD_VERSION2) && (ad_meta_fileno(ad) != -1)) { ++ if (ad->ad_meta_refcount) ++ ad->ad_meta_refcount--; ++ if (!(--ad->ad_mdp->adf_refcount)) { ++ if (close( ad_meta_fileno(ad)) < 0) ++ err = -1; ++ ad_meta_fileno(ad) = -1; ++ } ++ } ++ + if (ad->ad_reso_refcount) + if (--ad->ad_reso_refcount == 0) + adf_lock_free(ad->ad_rfp); |