Name
SM_...
Synopsis
Beginning with V8.12, the per-operating-system compile-time macros
were removed from the sendmail/conf.h file, and
were moved into the include/sm/conf.h file. In
addition to moving them, they were also all prefixed with the
characters SM_.
These compile-time macros are most certainly defined correctly for your operating system. In the rare event you are porting sendmail to a new operating system, you might need to tune these on a selective basis:
- SM_CONF_BROKEN_SIZE_T
On most systems, the
size_ttype is defined as anunsignedvariable. When porting, if that is not the case on your system, define this compile-time macro:APPENDDEF(`confENVDEF', `-DSM_CONF_BROKEN_SIZE_T=1')
- SM_CONF_BROKEN_STRTOD
The sendmail program uses printf(3) and scanf(3) with double-precision conversions, which will cause them to return improper results on some operating systems. When porting, if your operating system returns improper results, you can define this compile-time macro:
APPENDDEF(`confENVDEF', `-DSM_CONF_BROKEN_STRTOD=1')
See libsm/t-float.c to discover how to detect if this is needed.
- SM_CONF_GETOPT
The sendmail program, and all its companion programs, use the getopt(3) routine to parse command-line arguments. When porting, if your compiler library lacks a getopt(3) routine, define this compile-time macro with a value of zero:
APPENDDEF(`confENVDEF', `-DSM_CONF_GETOPT=0')
- SM_CONF_LDAP_MEMFREE
When porting, if your LDAP library includes the ldap_memfree(3) routine, you can define this ...