[packages/hesiod] - updated to 3.2.1 - removed obsolete patches (all issues fixed upstream)
qboosh
qboosh at pld-linux.org
Mon Jun 16 21:30:48 CEST 2014
commit ecd1c769eb72141c41c9c706f10f1f233b2b08b0
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Mon Jun 16 21:34:42 2014 +0200
- updated to 3.2.1
- removed obsolete patches (all issues fixed upstream)
hesiod-3.0.2-env.patch | 27 -------------------
hesiod-3.0.2-shlib.patch | 50 -----------------------------------
hesiod-3.0.2-str.patch | 68 ------------------------------------------------
hesiod-ac.patch | 11 --------
hesiod.spec | 54 ++++++++++++++++----------------------
5 files changed, 22 insertions(+), 188 deletions(-)
---
diff --git a/hesiod.spec b/hesiod.spec
index 3255d01..64635a1 100644
--- a/hesiod.spec
+++ b/hesiod.spec
@@ -1,17 +1,14 @@
Summary: Hesiod libraries and sample programs
Summary(pl.UTF-8): Biblioteki i programy przykładowe do hesiod
Name: hesiod
-Version: 3.0.2
-Release: 15
-License: MIT
+Version: 3.2.1
+Release: 1
+License: BSD
Group: Libraries
Source0: ftp://athena-dist.mit.edu/pub/ATHENA/hesiod/%{name}-%{version}.tar.gz
-# Source0-md5: 0362311e80fb1e029a1588cbbd09ad57
-Patch0: %{name}-3.0.2-shlib.patch
-Patch1: %{name}-3.0.2-env.patch
-Patch2: %{name}-3.0.2-str.patch
-Patch3: %{name}-ac.patch
-BuildRequires: autoconf
+# Source0-md5: d8fe6d7d081c9c14d5d3d8a466998eeb
+BuildRequires: libidn-devel
+BuildRequires: sed >= 4.0
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
@@ -34,6 +31,7 @@ Summary: Headers and development documentation for Hesiod
Summary(pl.UTF-8): Pliki nagłówkowe i dokumentacja programisty do hesiod
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
+Requires: libidn-devel
%description devel
This package contains the header files required for building programs
@@ -57,31 +55,21 @@ Ten pakiet zawiera statyczną wersję biblioteki Hesiod.
%prep
%setup -q
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
-
-for manpage in *.3; do
- if grep -q '^\.so man3/hesiod.3' $manpage ; then
- echo .so hesiod.3 > $manpage
- elif grep -q '^\.so man3/hesiod_getmailhost.3' $manpage ; then
- echo .so hesiod_getmailhost.3 > $manpage
- elif grep -q '^\.so man3/hesiod_getpwnam.3' $manpage ; then
- echo .so hesiod_getpwnam.3 > $manpage
- elif grep -q '^\.so man3/hesiod_getservbyname.3' $manpage ; then
- echo .so hesiod_getservbyname.3 > $manpage
- fi
-done
+
+grep -l '^\.so man3/' man/*.3 | xargs %{__sed} -i -e '1s,man3/,,;2,$d'
%build
-%{__autoconf}
%configure
%{__make}
%install
rm -rf $RPM_BUILD_ROOT
-%makeinstall
+
+%{__make} install \
+ DESTDIR=$RPM_BUILD_ROOT
+
+# obsoleted by pkg-config
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/libhesiod.la
%clean
rm -rf $RPM_BUILD_ROOT
@@ -91,17 +79,19 @@ rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc README NEWS
+%doc COPYING NEWS README
%attr(755,root,root) %{_bindir}/hesinfo
-%attr(755,root,root) %{_libdir}/libhesiod.so.*
-%{_mandir}/man1/*
-%{_mandir}/man5/*
+%attr(755,root,root) %{_libdir}/libhesiod.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libhesiod.so.0
+%{_mandir}/man1/hesinfo.1*
+%{_mandir}/man5/hesiod.conf.5*
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libhesiod.so
%{_includedir}/hesiod.h
-%{_mandir}/man3/*
+%{_pkgconfigdir}/hesiod.pc
+%{_mandir}/man3/hesiod*.3*
%files static
%defattr(644,root,root,755)
diff --git a/hesiod-3.0.2-env.patch b/hesiod-3.0.2-env.patch
deleted file mode 100644
index 444cc3b..0000000
--- a/hesiod-3.0.2-env.patch
+++ /dev/null
@@ -1,27 +0,0 @@
-Ignore environment variables in setuid or setgid programs.
---- hesiod-3.0.2/hesiod.c Wed Oct 3 14:53:37 2001
-+++ hesiod-3.0.2/hesiod.c Wed Oct 3 14:55:02 2001
-@@ -52,6 +52,7 @@
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
-+#include <unistd.h>
- #include <ctype.h>
- #include "hesiod.h"
- #include "hesiod_p.h"
-@@ -79,13 +80,13 @@
- if (ctx)
- {
- *context = ctx;
-- configname = getenv("HESIOD_CONFIG");
-+ configname = ((getuid() == geteuid()) && (getgid() == getegid())) ? getenv("HESIOD_CONFIG") : NULL;
- if (!configname)
- configname = SYSCONFDIR "/hesiod.conf";
- if (read_config_file(ctx, configname) >= 0)
- {
- /* The default rhs can be overridden by an environment variable. */
-- p = getenv("HES_DOMAIN");
-+ p = ((getuid() == geteuid()) && (getgid() == getegid())) ? getenv("HES_DOMAIN") : NULL;
- if (p)
- {
- if (ctx->rhs)
diff --git a/hesiod-3.0.2-shlib.patch b/hesiod-3.0.2-shlib.patch
deleted file mode 100644
index 128db5a..0000000
--- a/hesiod-3.0.2-shlib.patch
+++ /dev/null
@@ -1,50 +0,0 @@
---- hesiod-3.0.2/Makefile.in Fri Oct 5 15:43:35 2001
-+++ hesiod-3.0.2/Makefile.in Fri Oct 5 15:47:42 2001
-@@ -21,20 +21,24 @@
- CFLAGS=@CFLAGS@
- LDFLAGS=@LDFLAGS@
- LIBS=@LIBS@
--ALL_CFLAGS=-I. -DSYSCONFDIR=\"${sysconfdir}\" ${CPPFLAGS} ${CFLAGS}
-+ALL_CFLAGS=-I. -DSYSCONFDIR=\"${sysconfdir}\" ${CPPFLAGS} ${CFLAGS} -fPIC
- OBJS=hesiod.o hesmailhost.o hespwnam.o hesservbyname.o hescompat.o
-+SOVERSION=0
-
--all: libhesiod.a hesinfo hestest
-+all: libhesiod.a hesinfo hestest libhesiod.so.$(SOVERSION)
-+
-+libhesiod.so.$(SOVERSION): ${OBJS}
-+ $(LD) -G -o $@ -soname=$@ ${OBJS} ${LIBS} -lc
-
- libhesiod.a: ${OBJS}
- ar cru $@ ${OBJS}
- ${RANLIB} $@
-
--hesinfo: hesinfo.o libhesiod.a
-- ${CC} ${LDFLAGS} -o $@ hesinfo.o libhesiod.a ${LIBS}
-+hesinfo: hesinfo.o libhesiod.so.$(SOVERSION)
-+ ${CC} ${LDFLAGS} -o $@ hesinfo.o libhesiod.so.$(SOVERSION) ${LIBS}
-
--hestest: hestest.o libhesiod.a
-- ${CC} ${LDFLAGS} -o $@ hestest.o libhesiod.a ${LIBS}
-+hestest: hestest.o libhesiod.so.$(SOVERSION)
-+ ${CC} ${LDFLAGS} -o $@ hestest.o libhesiod.so.$(SOVERSION) ${LIBS}
-
- ${OBJS}: hesiod.h resscan.h
-
-@@ -42,6 +46,7 @@
- ${CC} -c ${ALL_CFLAGS} $<
-
- check:
-+ LD_LIBRARY_PATH="`pwd`":"$(LD_LIBRARY_PATH)" \
- HESIOD_CONFIG=${srcdir}/hesiod.config.sample \
- ./hestest ${srcdir}/hestest.conf
-
-@@ -55,6 +60,8 @@
- ${INSTALL} -c -m 644 libhesiod.a ${DESTDIR}${libdir}
- ${RANLIB} ${DESTDIR}${libdir}/libhesiod.a
- chmod u-w ${DESTDIR}${libdir}/libhesiod.a
-+ ${INSTALL} -c -m 755 libhesiod.so.$(SOVERSION) ${DESTDIR}${libdir}
-+ ln -s libhesiod.so.$(SOVERSION) ${DESTDIR}${libdir}/libhesiod.so
- ${INSTALL_PROGRAM} -c -m 555 hesinfo ${DESTDIR}${lbindir}
- ${INSTALL} -c -m 444 ${srcdir}/hesiod.h ${DESTDIR}${includedir}
- ${INSTALL} -c -m 444 ${srcdir}/hesinfo.1 ${DESTDIR}${mandir}/man1
diff --git a/hesiod-3.0.2-str.patch b/hesiod-3.0.2-str.patch
deleted file mode 100644
index a763e53..0000000
--- a/hesiod-3.0.2-str.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-There are a few places where untrusted information could cause problems.
-There's a bug in the configuration file parser that might result in an
-LHS= modifying the rhs setting.
-The case-insensitive comparison routine is probably called safely (with the
-second argument at least as long as the first), but it looks weird.
---- hesiod-3.0.2/hesiod.c Wed Oct 3 15:16:17 2001
-+++ hesiod-3.0.2/hesiod.c Wed Oct 3 15:33:41 2001
-@@ -138,7 +138,8 @@
- const char *rhs;
- int len;
-
-- strcpy(bindname, name);
-+ strncpy(bindname, name, sizeof(bindname) - 1);
-+ bindname[sizeof(bindname) - 1] = 0;
-
- /* Find the right right hand side to use, possibly truncating bindname. */
- p = strchr(bindname, '@');
-@@ -288,7 +289,7 @@
-
- if (cistrcmp(key, "lhs") == 0 || cistrcmp(key, "rhs") == 0)
- {
-- which = (strcmp(key, "lhs") == 0) ? &ctx->lhs : &ctx->rhs;
-+ which = (cistrcmp(key, "lhs") == 0) ? &ctx->lhs : &ctx->rhs;
- *which = malloc(strlen(data) + 1);
- if (!*which)
- {
-@@ -462,7 +463,7 @@
-
- static int cistrcmp(const char *s1, const char *s2)
- {
-- while (*s1 && tolower(*s1) == tolower(*s2))
-+ while (*s1 && *s2 && tolower(*s1) == tolower(*s2))
- {
- s1++;
- s2++;
---- hesiod-3.0.2/hespwnam.c Wed Oct 3 15:29:40 2001
-+++ hesiod-3.0.2/hespwnam.c Wed Oct 3 15:29:43 2001
-@@ -39,9 +39,16 @@
-
- struct passwd *hesiod_getpwuid(void *context, uid_t uid)
- {
-- char uidstr[16];
-+ char uidstr[32];
-
-- sprintf(uidstr, "%d", uid);
-- return getpwcommon(context, uidstr, 1);
-+ if (snprintf(uidstr, sizeof(uidstr), "%ld", (long)uid) < sizeof(uidstr))
-+ {
-+ return getpwcommon(context, uidstr, 1);
-+ }
-+ else
-+ {
-+ errno = ERANGE;
-+ return NULL;
-+ }
- }
-
---- hesiod-3.0.2/hesservbyname.c Wed Oct 3 15:33:25 2001
-+++ hesiod-3.0.2/hesservbyname.c Wed Oct 3 15:33:22 2001
-@@ -188,7 +188,7 @@
-
- static int cistrcmp(const char *s1, const char *s2)
- {
-- while (*s1 && tolower(*s1) == tolower(*s2))
-+ while (*s1 && *s2 && tolower(*s1) == tolower(*s2))
- {
- s1++;
- s2++;
diff --git a/hesiod-ac.patch b/hesiod-ac.patch
deleted file mode 100644
index f13e9cb..0000000
--- a/hesiod-ac.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- hesiod-3.0.2/configure.in.orig 1996-12-08 21:27:59.000000000 +0000
-+++ hesiod-3.0.2/configure.in 2008-11-14 11:02:22.000000000 +0000
-@@ -14,7 +14,7 @@
- AC_EGREP_HEADER(pw_change, pwd.h, AC_DEFINE(HAVE_PW_CHANGE))
- AC_EGREP_HEADER(pw_expire, pwd.h, AC_DEFINE(HAVE_PW_EXPIRE))
-
--AC_CHECK_FUNC(res_mkquery, :, [AC_CHECK_LIB(resolv, res_mkquery)])
-+AC_SEARCH_LIBS([res_mkquery], [resolv],,[AC_SEARCH_LIBS([__res_mkquery], [resolv])])
- AC_CHECK_FUNCS(strerror_r)
-
- AC_CONFIG_HEADER(config.h)
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/hesiod.git/commitdiff/ecd1c769eb72141c41c9c706f10f1f233b2b08b0
More information about the pld-cvs-commit
mailing list