Below is a small patch for Exim 3.163. Without it, you can't transfer
x'ff' bytes over TLS on systems where "char" is by default signed (e.g.
Sparcs). I have vowed never again to write a program that uses plain
"char" types. I have been bitten by Sun too many times now.
(Steve, this is really all your fault; the broken line was originally in
your code... :-)
*** ../exim-snapshot/src/tls.c Mon Sep 25 16:38:55 2000
--- tls.c Fri Sep 29 15:31:00 2000
***************
*** 45,51 ****
static int session_timeout = 200;
static const char *sid_ctx = "exim";
! static char *ssl_xfer_buffer = NULL;
static int ssl_xfer_buffer_size = 4096;
static int ssl_xfer_buffer_lwm = 0;
static int ssl_xfer_buffer_hwm = 0;
--- 45,51 ----
static int session_timeout = 200;
static const char *sid_ctx = "exim";
! static uschar *ssl_xfer_buffer = NULL;
static int ssl_xfer_buffer_size = 4096;
static int ssl_xfer_buffer_lwm = 0;
static int ssl_xfer_buffer_hwm = 0;
--
Philip Hazel University of Cambridge Computing Service,
ph10@??? Cambridge, England. Phone: +44 1223 334714.