MTA kicks off a fml process. It reads a message from STDIN.
The fml process reads a message once and write it onto the hard disk (write it into the incoming queue). After the queuing succeeded, the process starts to analyze a message. For this logic, the original mail is saved before main processing starts.
If the queuing fails, fml calls exit(EX_TEMPFAIL). In almost cases, exit(75). If MTA receives this exit code, MTA tries to deliver again later.
Mail::Delivery::Queue class processes the incoming queue. The queus is removed when the process ends.
Copyright (C) 1993-2017 Ken'ichi Fukamachi mail:< fukachan at fml.org >