我最近发现/etc/mail/sendmail.mc支持不是 m4语法的条目。 例如:
LOCAL_CONFIG O CipherList=HIGH
这对我来说没有意义,因为几乎所有在mc文件中默认的东西都有预期的语法(例如dnl define( )
什么types的东西需要MC文件中的m4语法,哪些不是?
Sendmail最终使用一个sendmail.cf文件。 这种语法可让您直接添加行到sendmail.cf,而无需任何macros转换。 早在过去,人们直接编辑了他们的sendmail.cf文件,而我们没有sendmail.mc文件
如果你看一下sendmail.mc生成的sendmail.cf文件(通过m4),你会看到很多:
O variable=value
线。
m4是一个macros处理器。
Sendmail实际使用的sendmail.cf文件具有自己独特的格式,与m4无关,而且对于人们来说是非常难以理解和使用的。
而是使用m4作为预处理器,从sendmail.mc文件生成 sendmail.mc文件。 在sendmail.mc中使用的macros更容易理解,并隐藏了真正configuration的大部分复杂性。