tags 218624 +pending
tags 318516 +pending
thanks

Hi,

I have uploaded an NMU to DELAYED/3-day which fixed #218624 and #318516.
If you plan to fix those bugs yourself, just upload during the next
three days.

This is NMU changelog entry:

 krb4 (1.2.2-11.3) unstable; urgency=low
 .
   * Non-maintainer upload.
   * Fix FTBFS on Hurd, added 037_hurd_ftbfs and added --disable-afs-support
     to configure options for GNU/Hurd. (Closes: #218624)
   * Fix FTBFS on Linux/gcc-4.0, added 038_gcc4_ftbfs. (Closes: #318516)

The NMU interdiff is attached.


cheers,

Michael

-- 
Michael Banck
Debian Developer
[EMAIL PROTECTED]
http://www.advogato.org/person/mbanck/diary.html
diff -Naur krb4-1.2.2/debian/changelog krb4-1.2.2.foo/debian/changelog
--- krb4-1.2.2/debian/changelog 2005-08-19 23:12:11.081997312 +0200
+++ krb4-1.2.2.foo/debian/changelog     2005-08-19 22:59:34.000000000 +0200
@@ -1,3 +1,12 @@
+krb4 (1.2.2-11.3) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Fix FTBFS on Hurd, added 037_hurd_ftbfs and added --disable-afs-support 
+    to configure options for GNU/Hurd. (Closes: #218624)
+  * Fix FTBFS on Linux/gcc-4.0, added 038_gcc4_ftbfs. (Closes: #318516)
+
+ -- Michael Banck <[EMAIL PROTECTED]>  Fri, 19 Aug 2005 22:52:10 +0200
+
 krb4 (1.2.2-11.2) unstable; urgency=high
 
   * Non-maintainer upload.
diff -Naur krb4-1.2.2/debian/patches/037_hurd_ftbfs 
krb4-1.2.2.foo/debian/patches/037_hurd_ftbfs
--- krb4-1.2.2/debian/patches/037_hurd_ftbfs    1970-01-01 01:00:00.000000000 
+0100
+++ krb4-1.2.2.foo/debian/patches/037_hurd_ftbfs        2005-08-19 
22:51:46.000000000 +0200
@@ -0,0 +1,254 @@
+diff -Naur krb4-1.2.2.orig/appl/bsd/login_access.c 
krb4-1.2.2/appl/bsd/login_access.c
+--- krb4-1.2.2.orig/appl/bsd/login_access.c    2001-06-04 16:08:39.000000000 
+0200
++++ krb4-1.2.2/appl/bsd/login_access.c 2004-06-14 21:01:05.000000000 +0200
+@@ -165,12 +165,12 @@
+ 
+ static char *myhostname(void)
+ {
+-    static char name[MAXHOSTNAMELEN + 1] = "";
++    static char name[MaxHostNameLen + 1] = "";
+ 
+     if (name[0] == 0) {
+       gethostname(name, sizeof(name));
+-      name[MAXHOSTNAMELEN] = 0;
++      name[MaxHostNameLen] = 0;
+     }
+     return (name);
+ }
+
+diff -Naur krb4-1.2.2.orig/appl/bsd/rshd.c krb4-1.2.2/appl/bsd/rshd.c
+--- krb4-1.2.2.orig/appl/bsd/rshd.c    2005-08-07 21:33:29.953382816 +0200
++++ krb4-1.2.2/appl/bsd/rshd.c 2005-08-07 21:33:54.104711256 +0200
+@@ -172,20 +172,48 @@
+ char  *envinit[] =
+ {homedir, shell, path, username, 0};
+ 
+-static void
+-xgetstr(char *buf, int cnt, char *err)
++static char *
++xgetstr(const char *err)
+ {
+-    char c;
++  size_t buf_len = 100;
++  char *buf = malloc (buf_len), *end = buf;
+ 
+-    do {
+-      if (read(STDIN_FILENO, &c, 1) != 1)
+-          exit(1);
+-      *buf++ = c;
+-      if (--cnt == 0) {
+-          error("%s too long\n", err);
+-          exit(1);
++  if (! buf)
++    {
++      error ("Out of space reading %s\n", err);
++      exit (1);
++    }
++
++  do
++    {
++      /* Oh this is efficient, oh yes.  [But what can be done?] */
++      int rd = read (STDIN_FILENO, end, 1);
++      if (rd <= 0)
++      {
++        if (rd == 0)
++          error ("EOF reading %s\n", err);
++        else
++          perror (err);
++        exit (1);
+       }
+-    } while (c != 0);
++
++      end += rd;
++      if ((buf + buf_len - end) < (buf_len >> 3))
++      {
++        /* Not very much room left in our buffer, grow it. */
++        size_t end_offs = end - buf;
++        buf_len += buf_len;
++        buf = realloc (buf, buf_len);
++        if (! buf)
++          {
++            error ("Out of space reading %s\n", err);
++            exit (1);
++          }
++        end = buf + end_offs;
++      }
++    } while (*(end - 1));
++
++  return buf;
+ }
+ 
+ static void
+@@ -199,7 +227,7 @@
+     const char *errorhost = "";
+     char *errorstr;
+     char *cp, sig, buf[DES_RW_MAXWRITE];
+-    char cmdbuf[NCARGS+1], locuser[16], remuser[16];
++    char *cmdbuf, *locuser, *remuser;
+     char remotehost[2 * MaxHostNameLen + 1];
+     uid_t uid;
+     char shell_path[MAXPATHLEN];
+@@ -328,10 +356,10 @@
+           exit(1);
+       }
+     } else
+-      xgetstr(remuser, sizeof(remuser), "remuser");
++      remuser = xgetstr("remuser");
+ 
+-    xgetstr(locuser, sizeof(locuser), "locuser");
+-    xgetstr(cmdbuf, sizeof(cmdbuf), "command");
++    locuser = xgetstr("locuser");
++    cmdbuf = xgetstr("command");
+     setpwent();
+     pwd = k_getpwnam(locuser);
+     if (pwd == NULL) {
+diff -ur krb4-1.2.2.orig/appl/ftp/ftpd/ls.c krb4-1.2.2/appl/ftp/ftpd/ls.c
+--- krb4-1.2.2.orig/appl/ftp/ftpd/ls.c 2002-08-22 04:31:03.000000000 -0400
++++ krb4-1.2.2/appl/ftp/ftpd/ls.c      2005-08-07 10:34:21.000000000 -0400
+@@ -371,14 +371,14 @@
+  * have to fetch them.
+  */
+ 
+-#ifdef KRB4
++#if defined(KRB4) && !defined(NO_AFS)
+ static int do_the_afs_dance = 1;
+ #endif
+ 
+ static int
+ lstat_file (const char *file, struct stat *sb)
+ {
+-#ifdef KRB4
++#if defined(KRB4) && !defined(NO_AFS)
+     if (do_the_afs_dance &&
+       k_hasafs() 
+       && strcmp(file, ".")
+diff -ur krb4-1.2.2.orig/configure krb4-1.2.2/configure
+--- krb4-1.2.2.orig/configure  2005-08-07 10:45:06.000000000 -0400
++++ krb4-1.2.2/configure       2005-08-07 09:25:35.000000000 -0400
+@@ -41771,7 +41771,7 @@
+ 
+ fi;
+ 
+-if test "$enabls_afs_support" = no; then
++if test "$enable_afs_support" = no; then
+ 
+ cat >>confdefs.h <<\_ACEOF
+ #define NO_AFS 1
+diff -ur krb4-1.2.2.orig/configure.in krb4-1.2.2/configure.in
+--- krb4-1.2.2.orig/configure.in       2003-03-16 23:01:50.000000000 -0500
++++ krb4-1.2.2/configure.in    2005-08-07 09:24:32.000000000 -0400
+@@ -175,7 +175,7 @@
+       AC_HELP_STRING([--disable-afs-support],
+               [if you don't want support for AFS]))
+ 
+-if test "$enabls_afs_support" = no; then
++if test "$enable_afs_support" = no; then
+       AC_DEFINE(NO_AFS, 1, [Define if you don't wan't support for AFS.])
+ fi
+ 
+diff -ur krb4-1.2.2.orig/kuser/klist.c krb4-1.2.2/kuser/klist.c
+--- krb4-1.2.2.orig/kuser/klist.c      2002-06-28 13:40:49.000000000 -0400
++++ krb4-1.2.2/kuser/klist.c   2005-08-07 10:18:07.000000000 -0400
+@@ -235,6 +235,7 @@
+ static void
+ display_tokens(void)
+ {
++#ifndef NO_AFS
+     u_int32_t i;
+     unsigned char t[128];
+     struct ViceIoctl parms;
+@@ -285,6 +286,7 @@
+           printf(" (%d)", ct.AuthHandle);
+       putchar('\n');
+     }
++#endif
+ }
+ 
+ static void
+diff -ur krb4-1.2.2.orig/lib/kafs/afssys.c krb4-1.2.2/lib/kafs/afssys.c
+--- krb4-1.2.2.orig/lib/kafs/afssys.c  2000-07-08 08:06:03.000000000 -0400
++++ krb4-1.2.2/lib/kafs/afssys.c       2005-08-07 09:52:23.000000000 -0400
+@@ -169,20 +169,28 @@
+ int
+ k_afs_cell_of_file(const char *path, char *cell, int len)
+ {
++#ifndef NO_AFS
+     struct ViceIoctl parms;
+     parms.in = NULL;
+     parms.in_size = 0;
+     parms.out = cell;
+     parms.out_size = len;
+     return k_pioctl((char*)path, VIOC_FILE_CELL_NAME, &parms, 1);
++#else
++    return -1;
++#endif
+ }
+ 
+ int
+ k_unlog(void)
+ {
++#ifndef NO_AFS
+     struct ViceIoctl parms;
+     memset(&parms, 0, sizeof(parms));
+     return k_pioctl(0, VIOCUNLOG, &parms, 0);
++#else
++    return -1;
++#endif
+ }
+ 
+ int
+diff -ur krb4-1.2.2.orig/lib/kafs/common.c krb4-1.2.2/lib/kafs/common.c
+--- krb4-1.2.2.orig/lib/kafs/common.c  2002-05-30 22:43:51.000000000 -0400
++++ krb4-1.2.2/lib/kafs/common.c       2005-08-07 09:54:18.000000000 -0400
+@@ -59,6 +59,7 @@
+ int
+ kafs_settoken(const char *cell, uid_t uid, CREDENTIALS *c)
+ {
++#ifndef NO_AFS
+     struct ViceIoctl parms;
+     struct ClearToken ct;
+     int32_t sizeof_x;
+@@ -136,6 +137,9 @@
+     parms.out_size = 0;
+     ret = k_pioctl(0, VIOCSETTOK, &parms, 0);
+     return ret;
++#else
++    return -1;
++#endif
+ }
+ 
+ /* Try to get a db-server for an AFS cell from a AFSDB record */
+diff -Naur krb4-1.2.2.orig/lib/roken/getaddrinfo_hostspec.c 
krb4-1.2.2/lib/roken/getaddrinfo_hostspec.c
+--- krb4-1.2.2.orig/lib/roken/getaddrinfo_hostspec.c   2000-07-15 
14:50:32.000000000 +0200
++++ krb4-1.2.2/lib/roken/getaddrinfo_hostspec.c        2004-06-14 
20:55:15.000000000 +0200
+@@ -48,9 +48,9 @@
+ {
+     const char *p;
+     char portstr[NI_MAXSERV];
+-    char host[MAXHOSTNAMELEN];
++    char *host;
+     struct addrinfo hints;
+-    int hostspec_len;
++    int hostspec_len, res;
+ 
+     struct hst {
+       const char *prefix;
+@@ -91,8 +91,16 @@
+     }
+     snprintf (portstr, sizeof(portstr), "%u", port);
+     
+-    snprintf (host, sizeof(host), "%.*s", hostspec_len, hostspec);
+-    return getaddrinfo (host, portstr, &hints, ai);
++    host = malloc(hostspec_len);
++    if (host == NULL) {
++      res = EAI_MEMORY;
++    } else {
++      snprintf (host, hostspec_len, "%.*s", hostspec_len, hostspec);
++      res = getaddrinfo (host, portstr, &hints, ai);
++      free (host);
++    }
++    
++    return res;
+ }
+ 
+ int
diff -Naur krb4-1.2.2/debian/patches/038_gcc4_ftbfs 
krb4-1.2.2.foo/debian/patches/038_gcc4_ftbfs
--- krb4-1.2.2/debian/patches/038_gcc4_ftbfs    1970-01-01 01:00:00.000000000 
+0100
+++ krb4-1.2.2.foo/debian/patches/038_gcc4_ftbfs        2005-08-19 
22:50:50.000000000 +0200
@@ -0,0 +1,13 @@
+diff -Nru3 ./krb4-1.2.2/appl/bsd/forkpty.c 
../build-tree.new/krb4-1.2.2/appl/bsd/forkpty.c
+--- ./krb4-1.2.2/appl/bsd/forkpty.c    2001-08-25 20:42:05.000000000 -0700
++++ ../build-tree.new/krb4-1.2.2/appl/bsd/forkpty.c    2005-08-16 
13:15:42.000000000 -0700
+@@ -68,7 +68,6 @@
+ #endif
+ 
+ #ifndef HAVE_REVOKE
+-static
+ int
+ revoke(const char *line)
+ {
+
+
diff -Naur krb4-1.2.2/debian/rules krb4-1.2.2.foo/debian/rules
--- krb4-1.2.2/debian/rules     2005-08-19 23:12:11.706902312 +0200
+++ krb4-1.2.2.foo/debian/rules 2005-08-19 22:51:46.000000000 +0200
@@ -62,6 +62,13 @@
  awk '{if (match($$0,/\.so\.[0-9]+$$/)) print substr($$0,RSTART+4)}'`
 
 
+# The Hurd doesn't have AFS.
+DEB_HOST_GNU_SYSTEM := $(shell dpkg-architecture -qDEB_HOST_GNU_SYSTEM)
+ifeq ($(DEB_HOST_GNU_SYSTEM),gnu)
+DISABLE_AFS = --disable-afs-support
+else
+DISABLE_AFS =
+endif
 
 # Uncomment this to turn on verbose mode.
 # export DH_VERBOSE=1
@@ -101,7 +108,8 @@
                 --with-db-dir=/var/lib/kerberos                        \
                 --with-cracklib=/usr/lib                               \
                 --with-dictpath=/var/cache/cracklib/cracklib_dict      \
-                --with-mailspool=/var/spool/mail 
+                --with-mailspool=/var/spool/mail \
+                $(DISABLE_AFS)
 
        # Add here commands to compile the package.
        $(MAKE) -C $(BUILD_TREE)

Reply via email to