The util/utilfunc.sh has a bug, when it tries to parse the /etc/hosts to verify the format

in the lines 229 and 230:

if ! cat /etc/hosts | \
230 perl -ne 'if (/^\s*\d+\.\d+\.\d+\.\d+\s+(\S+)/ && !/^\s*127\.0\.0\.1/) { my @foo = split (/\./,$1); if ($#foo == "0") {exit 11;} }';

Of course it can't guess (well, maybe it can) which one of /etc/hosts is my ip/hostname. Well I had my hosts like: localhost.localdomain localhost my.fully.qualified.name my # this is my ip machinesimplename #this is another machine machinesimplename2 #this is another machine machinesimplename3 #this is another machine

My IP does have the fully qualified name, but the other ones don't. Zimbra doesn't need them for anything, but kept complaining until I write (fake!) full hostname to everyone.