Package: sendmail
Version: 8.14.4-2
Severity: important
Tags: patch

Hello,

sendmail currently FTBFS on hurd-i386 because of a not-uptodate config
and an inconditional occurence of the optional PATH_MAX macro. Here are
patches to fix these.

Samuel

-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (1, 
'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.36 (SMP w/2 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
--- ./include/sm/conf.h.original        2010-12-31 19:23:37.000000000 +0000
+++ ./include/sm/conf.h 2010-12-31 19:30:40.000000000 +0000
@@ -1101,15 +1101,23 @@
 
 # if defined(__GNU__) && !defined(NeXT)
 #  include <paths.h>
-#  define HASFCHMOD    1       /* has fchmod(2) call */
-#  define HASFCHOWN    1       /* has fchown(2) call */
+#  define BSD          1       /* include BSD defines */
+#  define HASSETREGID  1       /* use setregid(2) to set saved gid */
+#  ifndef REQUIRES_DIR_FSYNC
+#   define REQUIRES_DIR_FSYNC  1       /* requires fsync() on directory */
+#  endif /* REQUIRES_DIR_FSYNC */
+#  ifndef USESETEUID
+#   define USESETEUID  0       /* has it due to POSIX, but doesn't work */
+#  endif /* USESETEUID */
+#  define SM_CONF_GETOPT       0       /* need a replacement for getopt(3) */
 #  define HASUNAME     1       /* has uname(2) call */
 #  define HASUNSETENV  1       /* has unsetenv(3) call */
-#  define HAS_ST_GEN   1       /* has st_gen field in stat struct */
-#  define HASSTRERROR  1       /* has strerror(3) */
+#  define ERRLIST_PREDEFINED   1       /* don't declare sys_errlist */
 #  define GIDSET_T     gid_t
-#  define SOCKADDR_LEN_T       socklen_t
-#  define SOCKOPT_LEN_T        socklen_t
+#  define HAS_IN_H     1       /* GNU has netinet/in.h. */
+#  ifndef USE_SIGLONGJMP
+#   define USE_SIGLONGJMP      1 /* sigsetjmp needed for signal handling */
+#  endif /* ! USE_SIGLONGJMP */
 #  if (__GLIBC__ == 2 && __GLIBC_MINOR__ > 1) || __GLIBC__ > 2
 #   define LA_TYPE     LA_SUBR
 #  else /* (__GLIBC__ == 2 && __GLIBC_MINOR__ > 1) || __GLIBC__ > 2 */
@@ -1118,11 +1126,34 @@
 #   define host_self   mach_host_self
 #  endif /* (__GLIBC__ == 2 && __GLIBC_MINOR__ > 1) || __GLIBC__ > 2 */
 #  define SFS_TYPE     SFS_STATFS
+#  define SPT_PADCHAR  '\0'            /* pad process title with nulls */
+#   ifndef HASURANDOMDEV
+#    define HASURANDOMDEV 1    /* 2.0 (at least) has 
linux/drivers/char/random.c */
+#   endif /* ! HASURANDOMDEV */
+#  define HASSTRERROR  1       /* has strerror(3) */
+#  ifndef TZ_TYPE
+#   define TZ_TYPE     TZ_NONE         /* no standard for Linux */
+#  endif /* ! TZ_TYPE */
+#  ifndef _PATH_SENDMAILPID
+#   define _PATH_SENDMAILPID   "/var/run/sendmail.pid"
+#  endif /* ! _PATH_SENDMAILPID */
+#  include <sys/sysmacros.h>
+#  undef atol                  /* wounded in <stdlib.h> */
+#  if NETINET6
+#     undef IPPROTO_ICMPV6     /* linux #defines, glibc enums */
+#    if !defined(NEEDSGETIPNODE)
+     /* Have APIs in <netdb.h>, but no support in glibc */
+#     define NEEDSGETIPNODE    1
+#    endif /* (GLIBC_VERSION >= 0x201 && !defined(NEEDSGETIPNODE)) */
+#  endif /* NETINET6 */
+#  define HASFCHOWN    1       /* has fchown(2) call */
+#  define HASFCHMOD    1       /* has fchmod(2) call */
+#  define HAS_ST_GEN   1       /* has st_gen field in stat struct */
+#  define SOCKADDR_LEN_T       socklen_t
+#  define SOCKOPT_LEN_T        socklen_t
 #  define SPT_TYPE     SPT_CHANGEARGV
-#  define ERRLIST_PREDEFINED   1       /* don't declare sys_errlist */
 #  define BSD4_4_SOCKADDR      1       /* has sa_len */
 #  define SIOCGIFCONF_IS_BROKEN  1     /* SIOCGFCONF doesn't work */
-#  define HAS_IN_H     1       /* GNU has netinet/in.h. */
 /* GNU has no MAXPATHLEN; ideally the code should be changed to not use it. */
 #  define MAXPATHLEN   2048
 # endif /* defined(__GNU__) && !defined(NeXT) */
--- debian/sensible_mda/sensible-mda.c.in.original      2010-12-31 
21:52:13.000000000 +0000
+++ debian/sensible_mda/sensible-mda.c.in       2010-12-31 21:50:15.000000000 
+0000
@@ -59,7 +59,7 @@
 static void    help(void);
 static int     drop_privs(char *, uid_t, gid_t);
 static void show_privs(void);
-static unsigned char program[PATH_MAX];
+static unsigned char *program;
 
 static uid_t RealUid, RunAsUid;
 static gid_t RealGid, RunAsGid;
@@ -89,9 +89,7 @@
                str_pos++;
        else
                str_pos = argv[0];
-       (void) strncpy(program, str_pos,
-               min(strlen(str_pos), sizeof(program)-1));
-       program[sizeof(program)-1] = '\0';
+       program = strdup(str_pos);
 
        #if DEBUG
                str_len = 0;

Reply via email to