diff options
author | johans <johans@FreeBSD.org> | 2013-04-30 03:41:36 +0800 |
---|---|---|
committer | johans <johans@FreeBSD.org> | 2013-04-30 03:41:36 +0800 |
commit | b04a2f8e7ce285e5cdf8f973d17137801cc8689a (patch) | |
tree | fb6fb929ecb136e12c4c3787f1910a664ebd8bc8 /security | |
parent | f10712cf3310dbb2c2d439144845b21b4869f202 (diff) | |
download | freebsd-ports-gnome-b04a2f8e7ce285e5cdf8f973d17137801cc8689a.tar.gz freebsd-ports-gnome-b04a2f8e7ce285e5cdf8f973d17137801cc8689a.tar.zst freebsd-ports-gnome-b04a2f8e7ce285e5cdf8f973d17137801cc8689a.zip |
Update GNU shishi to 1.0.2
Announcement http://lists.gnu.org/archive/html/info-gnu/2013-04/msg00002.html
Diffstat (limited to 'security')
-rw-r--r-- | security/shishi/Makefile | 10 | ||||
-rw-r--r-- | security/shishi/Makefile.man | 5 | ||||
-rw-r--r-- | security/shishi/distinfo | 4 | ||||
-rw-r--r-- | security/shishi/files/patch-configure | 59 | ||||
-rw-r--r-- | security/shishi/files/patch-suboptions | 256 | ||||
-rw-r--r-- | security/shishi/pkg-plist | 2 |
6 files changed, 10 insertions, 326 deletions
diff --git a/security/shishi/Makefile b/security/shishi/Makefile index 7e0199676f9f..57eb9895d4b3 100644 --- a/security/shishi/Makefile +++ b/security/shishi/Makefile @@ -1,8 +1,7 @@ # $FreeBSD$ PORTNAME= shishi -PORTVERSION= 1.0.1 -PORTREVISION= 4 +PORTVERSION= 1.0.2 CATEGORIES= security MASTER_SITES= GNU @@ -42,11 +41,6 @@ PLIST_SUB+= NLS="@comment " .include <bsd.port.pre.mk> -.if ${OSVERSION} < 800000 -CONFIGURE_ARGS+= gl_cv_func_stat_dir_slash="guessing yes" \ - gl_cv_func_stat_file_slash="guessing yes" -.endif - post-extract: @${RM} -f ${WRKSRC}/doc/shishi.info* @cd ${WRKSRC}/db/gl && ${LN} -s ../../build-aux/link-warning.h @@ -56,5 +50,7 @@ post-patch: ${WRKSRC}/db/gl/Makefile.in @${REINPLACE_CMD} -e 's:\.\./gl/libgnu.la:../db/gl/libgnu.la &:' \ ${WRKSRC}/src/Makefile.in + @${REINPLACE_CMD} -e '/^AM_CPPFLAGS/s:-I[^ ]*/gl ::g' \ + ${WRKSRC}/examples/Makefile.in .include <bsd.port.post.mk> diff --git a/security/shishi/Makefile.man b/security/shishi/Makefile.man index d5e344e7d31b..eab8be1c7476 100644 --- a/security/shishi/Makefile.man +++ b/security/shishi/Makefile.man @@ -191,6 +191,8 @@ MAN3+= shishi_authenticator_set_subkey.3 MAN3+= shishi_authenticator_subkey.3 MAN3+= shishi_authenticator_to_file.3 MAN3+= shishi_authorization_parse.3 +MAN3+= shishi_authorize_k5login.3 +MAN3+= shishi_authorize_strcmp.3 MAN3+= shishi_authorized_p.3 MAN3+= shishi_cfg.3 MAN3+= shishi_cfg_authorizationtype_set.3 @@ -420,9 +422,9 @@ MAN3+= shishi_keys_done.3 MAN3+= shishi_keys_for_localservicerealm_in_file.3 MAN3+= shishi_keys_for_server_in_file.3 MAN3+= shishi_keys_for_serverrealm_in_file.3 +MAN3+= shishi_keys_from_file.3 MAN3+= shishi_keys_from_keytab_file.3 MAN3+= shishi_keys_from_keytab_mem.3 -MAN3+= shishi_keys_from_file.3 MAN3+= shishi_keys_nth.3 MAN3+= shishi_keys_print.3 MAN3+= shishi_keys_remove.3 @@ -653,6 +655,7 @@ MAN3+= shishi_tkts_from_ccache_mem.3 MAN3+= shishi_tkts_from_file.3 MAN3+= shishi_tkts_get.3 MAN3+= shishi_tkts_get_for_clientserver.3 +MAN3+= shishi_tkts_get_for_localservicepasswd.3 MAN3+= shishi_tkts_get_for_server.3 MAN3+= shishi_tkts_get_tgs.3 MAN3+= shishi_tkts_get_tgt.3 diff --git a/security/shishi/distinfo b/security/shishi/distinfo index 4eca1a91f900..f972dc3135c1 100644 --- a/security/shishi/distinfo +++ b/security/shishi/distinfo @@ -1,2 +1,2 @@ -SHA256 (shishi-1.0.1.tar.gz) = 9d7e4738df21116422585b347ad1c985d2bafd32c8665b4c5563617573e2868d -SIZE (shishi-1.0.1.tar.gz) = 4999488 +SHA256 (shishi-1.0.2.tar.gz) = 0d9c8113feb22ee574187413c564140e3fa8c67fa4601fb073aec9cbc471580c +SIZE (shishi-1.0.2.tar.gz) = 4917167 diff --git a/security/shishi/files/patch-configure b/security/shishi/files/patch-configure deleted file mode 100644 index 5139ad56b1c0..000000000000 --- a/security/shishi/files/patch-configure +++ /dev/null @@ -1,59 +0,0 @@ -The upstream configuration is not able to properly detect -the use of "resolv.h" and res_query() on BSD systems. -As a consequence of this the built library libshishi.so -is not able to question a DNS server for SRV resources. - -http://lists.gnu.org/archive/html/help-shishi/2012-07/msg00001.html - ---- configure.bak 2012-07-17 17:41:29.000000000 +0200 -+++ configure 2012-07-17 17:48:44.000000000 +0200 -@@ -6688,10 +6688,11 @@ - - fi - --for ac_header in termios.h pwd.h syslog.h resolv.h arpa/nameser.h netinet/in6.h -+for ac_header in termios.h pwd.h syslog.h arpa/nameser.h netinet/in6.h - do : - as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` --ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default" -+ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default -+" - if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF - #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 -@@ -6701,6 +6702,15 @@ - - done - -+# Check for resolv.h -+ac_fn_c_check_header_mongrel "$LINENO" "resolv.h" "as_ac_resolv_h" "$ac_includes_default -+#include <sys/types.h> -+#include <netinet/in.h>" -+if test "x$as_ac_resolv_h" = x"yes"; then : -+ cat >>confdefs.h <<_ACEOF -+#define HAVE_RESOLV_H 1 -+_ACEOF -+fi - - # Used when creating libshishi-XX.def. - SOVERSION=`expr ${LT_CURRENT} - ${LT_AGE}` -@@ -33526,7 +33536,7 @@ - fi - - # Checks for library functions. --for ac_func in signal select ngettext gethostbyname getpwnam getuid -+for ac_func in signal select ngettext gethostbyname getpwnam getuid res_query - do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` - ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" ---- lib/resolv.c.bak 2012-02-08 13:17:44.000000000 +0100 -+++ lib/resolv.c 2012-07-17 17:41:29.000000000 +0200 -@@ -30,7 +30,7 @@ - - #include "internal.h" - --#ifdef HAVE_LIBRESOLV -+#ifdef HAVE_RES_QUERY - - /* the largest packet we'll send and receive */ - #if PACKETSZ > 1024 diff --git a/security/shishi/files/patch-suboptions b/security/shishi/files/patch-suboptions deleted file mode 100644 index 763a0972af4f..000000000000 --- a/security/shishi/files/patch-suboptions +++ /dev/null @@ -1,256 +0,0 @@ ->From c688c20e7df466a352f7263c3ec93e3e94c14e3a Mon Sep 17 00:00:00 2001 -From: Mats Erik Andersson <address@hidden> -Date: Thu, 23 Aug 2012 22:10:33 +0200 -Subject: [PATCH] Configuration parsing of suboptions. - -The library call getsubopt() is not portable -enough to rely on a catch all case `-1'. -In particular, FreeBSD was not able to parse -`kdc-realm=EX.ORG,localhost' at all. ---- - lib/cfg.c | 109 ++++++++++++++++++++++++++++++++------------------------ - lib/init.c | 5 ++- - lib/realm.c | 29 +++++++++++++++ - shishi.conf.in | 7 +++- - 4 files changed, 100 insertions(+), 50 deletions(-) - -diff --git lib/cfg.c b/lib/cfg.c -index a0e39b3..9b9414e 100644 ---- lib/cfg.c -+++ lib/cfg.c -@@ -117,7 +117,6 @@ shishi_cfg (Shishi * handle, const char *option) - char *opt = option ? xstrdup (option) : NULL; - char *p = opt; - char *value; -- char *realm = NULL; - int res; - size_t i; - -@@ -182,6 +181,10 @@ shishi_cfg (Shishi * handle, const char *option) - - case REALM_KDC_OPTION: - { -+ struct Shishi_realminfo *ri; -+ char *realm = NULL; -+ char *protstr; -+ int transport = UDP; - int add_realm = 1; - - realm = xstrdup (value); -@@ -194,6 +197,7 @@ shishi_cfg (Shishi * handle, const char *option) - free (handle->realminfos[i].kdcaddresses); - handle->realminfos[i].kdcaddresses = NULL; - handle->realminfos[i].nkdcaddresses = 0; -+ ri = &handle->realminfos[i]; - add_realm = 0; - } - break; -@@ -206,19 +210,71 @@ shishi_cfg (Shishi * handle, const char *option) - memset (&handle->realminfos[handle->nrealminfos], 0, - sizeof (handle->realminfos[handle->nrealminfos])); - handle->realminfos[handle->nrealminfos].name = realm; -+ ri = &handle->realminfos[handle->nrealminfos]; - handle->nrealminfos++; - } -+ if ((protstr = strchr (p, '/'))) -+ { -+ *protstr = '\0'; -+ protstr++; -+ if (strcasecmp (protstr, "udp") == 0) -+ transport = UDP; -+ else if (strcasecmp (protstr, "tcp") == 0) -+ transport = TCP; -+ else if (strcasecmp (protstr, "tls") == 0) -+ transport = TLS; -+ else -+ shishi_warn (handle, -+ "Ignoring unknown KDC transport: %s", -+ protstr); -+ } -+ -+ ri->kdcaddresses = xrealloc (ri->kdcaddresses, -+ (ri->nkdcaddresses + 1) * -+ sizeof (*ri->kdcaddresses)); -+ ri->kdcaddresses[ri->nkdcaddresses].transport = transport; -+ ri->kdcaddresses[ri->nkdcaddresses].hostname = xstrdup (p); -+ if ((protstr = strchr (value, ':'))) -+ { -+ *protstr = '\0'; -+ protstr++; -+ ri->kdcaddresses[ri->nkdcaddresses].port = protstr; -+ } -+ else -+ ri->kdcaddresses[ri->nkdcaddresses].port = NULL; -+ ri->nkdcaddresses++; -+ -+ p = NULL; /* Done with suboptions. */ - } - break; - - case SERVER_REALM_OPTION: - { - struct Shishi_realminfo *ri; -- ri = _shishi_realminfo_new (handle, value); -- ri->serverwildcards = xrealloc (ri->serverwildcards, -- ++ri->nserverwildcards * -- sizeof (*ri->serverwildcards)); -- ri->serverwildcards[ri->nserverwildcards - 1] = xstrdup (value); -+ char *subopts, *part, *next; -+ -+ if (!p || (*p == 0)) -+ { -+ shishi_warn (handle, "Empty server-realm for '%s'.", value); -+ break; -+ } -+ -+ ri = _shishi_realminfo_new (handle, xstrdup (value)); -+ -+ part = subopts = xstrdup (p); /* List of patterns. */ -+ while (part && *part) -+ { -+ next = strchr (part, ','); -+ if (next) -+ *(next++) = '\0'; -+ -+ ri->serverwildcards = xrealloc (ri->serverwildcards, -+ ++ri->nserverwildcards * -+ sizeof (*ri->serverwildcards)); -+ ri->serverwildcards[ri->nserverwildcards - 1] = xstrdup (part); -+ part = next; -+ } -+ p = NULL; /* Done with suboptions. */ - } - break; - -@@ -275,47 +331,6 @@ shishi_cfg (Shishi * handle, const char *option) - case -1: - if (!value) - break; -- for (i = 0; i < handle->nrealminfos; i++) -- if (realm && strcmp (handle->realminfos[i].name, realm) == 0) -- { -- struct Shishi_realminfo *ri = &handle->realminfos[i]; -- char *protstr; -- int transport = UDP; -- -- if ((protstr = strchr (value, '/'))) -- { -- *protstr = '\0'; -- protstr++; -- if (strcasecmp (protstr, "udp") == 0) -- transport = UDP; -- else if (strcasecmp (protstr, "tcp") == 0) -- transport = TCP; -- else if (strcasecmp (protstr, "tls") == 0) -- transport = TLS; -- else -- shishi_warn (handle, -- "Ignoring unknown KDC transport: %s", -- protstr); -- } -- -- ri->kdcaddresses = xrealloc (ri->kdcaddresses, -- (ri->nkdcaddresses + 1) * -- sizeof (*ri->kdcaddresses)); -- ri->kdcaddresses[ri->nkdcaddresses].transport = transport; -- ri->kdcaddresses[ri->nkdcaddresses].hostname = -- xstrdup (value); -- if ((protstr = strchr (value, ':'))) -- { -- *protstr = '\0'; -- protstr++; -- ri->kdcaddresses[ri->nkdcaddresses].port = protstr; -- } -- else -- ri->kdcaddresses[ri->nkdcaddresses].port = NULL; -- ri->nkdcaddresses++; -- } -- if (realm) -- break; - /* fall through */ - - default: -diff --git lib/init.c b/lib/init.c -index 7fb349c..8c61001 100644 ---- lib/init.c -+++ lib/init.c -@@ -175,7 +175,7 @@ shishi_done (Shishi * handle) - - if (handle->realminfos) - { -- size_t i; -+ size_t i, j; - - for (i = 0; i < handle->nrealminfos; i++) - { -@@ -183,6 +183,9 @@ shishi_done (Shishi * handle) - - free (handle->realminfos[i].kdcaddresses); - free (handle->realminfos[i].name); -+ -+ for (j = 0; j < handle->realminfos[i].nserverwildcards; j++) -+ free (handle->realminfos[i].serverwildcards[j]); - } - } - -diff --git lib/realm.c b/lib/realm.c -index b17010d..1b7c005 100644 ---- lib/realm.c -+++ lib/realm.c -@@ -111,6 +111,35 @@ shishi_realm_default_set (Shishi * handle, const char *realm) - char * - shishi_realm_for_server_file (Shishi * handle, char *server) - { -+ struct Shishi_realminfo *ri; -+ size_t i, j; -+ char *p; -+ -+ for (i = 0; i < handle->nrealminfos; i++) -+ { -+ ri = &handle->realminfos[i]; -+ -+ if (!ri->nserverwildcards) -+ continue; -+ -+ for (j = 0; j < ri->nserverwildcards; j++) -+ { -+ /* Exact server name match. */ -+ if (strcmp (server, ri->serverwildcards[j]) == 0) -+ return ri->name; -+ -+ /* Is this a tail pattern? */ -+ if (*(ri->serverwildcards[j]) != '.') -+ continue; -+ -+ /* Domain part matching. */ -+ p = server; -+ while (p = strchr (p, '.')) -+ if (strcmp (p++, ri->serverwildcards[j]) == 0) -+ return ri->name; -+ } -+ } -+ - return NULL; - } - -diff --git shishi.conf.in b/shishi.conf.in -index 98db22b..2d2c285 100644 ---- shishi.conf.in -+++ shishi.conf.in -@@ -70,8 +70,11 @@ - - # Specify realm for servers. - # Value is REALM,SERVERREGEXP[,SERVERREGEXP...] --# SERVERREGEXP is a regular expression matching servers in the realm. --# The first match is used. -+# SERVERREGEXP is a pattern used to establish membership in the -+# given realm. The pattern is either the exact name of a server, -+# or a trailing domain part expected in a qualified server name, -+# whenever the pattern commences with a period. The first match -+# found will be used in library calls. - #server-realm=JOSEFSSON.ORG,.josefsson.org - - # How long shishi waits for a response from a KDC before continuing --- -1.7.2.5 - diff --git a/security/shishi/pkg-plist b/security/shishi/pkg-plist index 31fcec117f7b..0b657ae8f093 100644 --- a/security/shishi/pkg-plist +++ b/security/shishi/pkg-plist @@ -20,13 +20,13 @@ lib/libshishi.so lib/libshishi.so.1 lib/security/pam_shishi.so lib/security/pam_shishi.la -lib/security/pam_shishi.a libdata/pkgconfig/shishi.pc %%NLS%%share/locale/en@boldquot/LC_MESSAGES/shishi.mo %%NLS%%share/locale/en@quot/LC_MESSAGES/shishi.mo %%NLS%%share/locale/fi/LC_MESSAGES/shishi.mo %%NLS%%share/locale/pl/LC_MESSAGES/shishi.mo %%NLS%%share/locale/fr/LC_MESSAGES/shishi.mo +%%NLS%%share/locale/sr/LC_MESSAGES/shishi.mo %%NLS%%share/locale/vi/LC_MESSAGES/shishi.mo %%NLS%%@dirrmtry share/locale/en@boldquot/LC_MESSAGES %%NLS%%@dirrmtry share/locale/en@boldquot |