HAS...

Has specific system-call support Port, edit sendmail/conf.h

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

HASCLOSEFROM

closefrom(3)

HASFCHMOD

fchmod(2)

HASFCHOWN

fchown(2)

HASFDWALK

fdwalk(3)

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 ...

Get sendmail, 4th Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.