Name

HAS...

Synopsis

Macros that begin with HAS tell sendmail whether your system supports (has) certain system-library routines or variables. In general, you should need to define or undefine the compile-time macros shown in Table 3-3 only if you are porting sendmail to a new system. In that instance you should also read sendmail/README for the latest information and pitfalls.

Each of these is turned on or off with an assignment of 1 or 0:

APPENDDEF(`confENVDEF', `-DHASSETSID=1')  turn on
APPENDDEF(`confENVDEF', `-DHASSETSID=0')turn off

“Turning on” tells sendmail that your site has support for this system call (setsid(2) in this instance). “Turning off” tells sendmail to work around the lack of that support. When porting to a new system, you can test with one of the preceding confENVDEF statements and, if successful, put a permanent porting entry into sendmail/conf.h.

Table 3-3. HAS... compile-time macros for specific system-call support

Compile-time macro

System call

HASFCHMOD

fchmod(2)

HASFCHOWN

fchown(2)

HASFLOCK

flock(2)

HASGETDTABLESIZE

getdtablesize(2)

HASGETUSERSHELL

getusershell(3)

HASINITGROUPS

initgroups(3)

HASLSTAT

lstat(2)

HASNICE

nice(2)

HASRANDOM

random(3)

HASRRESVPORT

rresvport(3)

HASSETREUID

setreuid(2)

HASSETREGID

setregid(2)

HASSETRESGID

setresgid(2)

HASSETREUID

setreuid(2)

HASSETRLIMIT

setrlimit(2)

HASSETSID

setsid(2)

HASSETUSERCONTEXT

setusercontext(3)

HASSETVBUF

setvbuf(3)

HASSIGSETMASK

sigsetmask(2)

HASSNPRINTF

snprintf ...

Get Sendmail, 3rd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.