The configuration variable server_name is used in email code, for example to generate message ids. If "Force server URL settings:" is disabled (which it is by default) then server_name can be left empty. This leads to incorrect message ids lacking a host part. As the server_name used for the URL might even be different from the hostname sending the email the function gethostname() would ideally be used. But it is only available in PHP >= 5.3.0. So an alternative is required that does not use server_name. We also need to review all other code for uses of these configuration variables which might be empty.