Index: trunk/aclocal.m4
===================================================================
--- trunk/aclocal.m4	(revision 237)
+++ trunk/aclocal.m4	(revision 238)
@@ -2064,4 +2064,38 @@
 ])# AC_PROG_LD_GNU
 
+# SH_STRFTIME_Z
+# -------------
+# check whether strftime supports %z
+AC_DEFUN([SH_STRFTIME_Z],
+[
+AC_MSG_CHECKING([whether strftime supports %z])
+AC_TRY_RUN([
+#include <time.h>
+#include <string.h>
+int main()
+{
+   struct tm tm;
+   char tt[64];
+   memset(&tm, 0, sizeof(tm));
+   strftime(tt, sizeof(tt), "%z", &tm);
+
+   if (strlen(tt) != 5) return 1;
+   return 0;
+}
+],
+[
+AC_MSG_RESULT([yes])
+AC_DEFINE(HAVE_STRFTIME_Z, 1, [strftime supports %z])
+],
+[
+AC_MSG_RESULT([no])
+],[
+AC_MSG_RESULT([no])
+])])
+
+
+
+
+
 dnl *-*wedit:notab*-*  Please keep this as the last line.
 
Index: trunk/configure.ac
===================================================================
--- trunk/configure.ac	(revision 237)
+++ trunk/configure.ac	(revision 238)
@@ -376,4 +376,5 @@
 AC_CHECK_FUNCS(vsnprintf, [SL_CHECK_VSNPRINTF])
 AC_CHECK_MLOCK
+SH_STRFTIME_Z
 
 AC_MSG_CHECKING(how to get filesystem type)
Index: trunk/docs/Changelog
===================================================================
--- trunk/docs/Changelog	(revision 237)
+++ trunk/docs/Changelog	(revision 238)
@@ -1,3 +1,6 @@
 2.5.7:
+	* If available, use %z to print timezone as hour offset from GMT
+	  in email date headers (problem reported by NP, solution suggested
+	  by TimB).
 	* eliminate C99-style comments (problem reported by
 	  venkat)
Index: trunk/src/sh_mail.c
===================================================================
--- trunk/src/sh_mail.c	(revision 237)
+++ trunk/src/sh_mail.c	(revision 238)
@@ -1264,5 +1264,10 @@
   my_tm   = localtime(&my_time);
 #endif
+
+#if defined(HAVE_STRFTIME_Z)
+  (void)    strftime(my_tbuf, 127, _("%a, %d %b %Y %H:%M:%S %z"), my_tm);
+#else
   (void)    strftime(my_tbuf, 127, _("%a, %d %b %Y %H:%M:%S %Z"), my_tm);
+#endif
 
   TPT(( 0, FIL__, __LINE__,  _("msg=<From: <%s>%c%cTo: <%s>%c%cDate: %s>%c%c"),
