[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

SUMMARY: sendmail 8.9.1: line breaks in headers; mailing to files



Thanks to Anthony Greene (redhat-list) and Gregory Shapiro (sendmail.org).
--------------------------------------------------------------------------

sasha> Q 1: new version inserts line breaks in headers like 'Received:', if
sasha> the line is longer than a certain ## of characters.  this is
sasha> breaking my custom scripts that are used to the old format - all on
sasha> one line header.  is there a way to tell sendmail to stop inserting
sasha> line breaks?

You can change the format of the Received header by modifying this option:

confRECEIVED_HEADER     Received:
                [$?sfrom $s $.$?_($?s$|from $.$_)
                        $.by $j ($v/$Z)$?r with $r$. id $i$?u
                        for $u; $|;
                        $.$b]
                                        The format of the Received: header
                                        in messages passed through this host.
                                        It is unwise to try to change this.

However, it's probably a good idea to fix your program to understand header
continuations.

alternatively, one can use 'formail -c' from the procmail package to
concatenate continued fields in the headers.

sasha> Q2:   enabled O DontBlameSendmail=filedeliverytosymlink,
sasha> groupwritabledirpathsafe

sasha> i have an alias that includes a symlink among other adressees, say,
sasha> /somedirectory/.current.month.  .current.month is a symlink to a
sasha> file archive.November98.  permissions on the last file are as
sasha> follows:

sasha> -rwSr--r--   1 daemon   system    archive.November98

sasha> i get an error: can't create output

sasha> with the 8.8.5 version this setup worked fine.  what am i missing?

this is an actual bug in sendmail.  below is a patch:

------- deliver.c -------
*** -   Wed Dec 31 16:00:00 1969
--- deliver.c   Mon Nov  9 20:08:25 1998
***************
*** 3280,3285 ****
--- 3280,3286 ----
                /* child -- actually write to file */
                struct stat stb;
                MCI mcibuf;
+               int err;
                volatile int oflags = O_WRONLY|O_APPEND;

                if (e->e_lockfp != NULL)
***************
*** 3303,3309 ****
                        ev = NULL;

  #ifdef HASLSTAT
!               if (lstat(filename, &stb) < 0)
  #else
                if (stat(filename, &stb) < 0)
  #endif
--- 3304,3314 ----
                        ev = NULL;

  #ifdef HASLSTAT
!               if (bitset(DBS_FILEDELIVERYTOSYMLINK, DontBlameSendmail))
!                       err = stat(filename, &stb);
!               else
!                       err = lstat(filename, &stb);
!               if (err < 0)
  #else
                if (stat(filename, &stb) < 0)
  #endif




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]