Well, I gave you all the details about my setup. Please tell me what it'll take to convince you that my setup isn't screwed (at least from my end).
-peace
man getnameinfo:
FILES /etc/hosts /etc/nsswitch.conf /etc/resolv.conf
It all mainly depends on getnameinfo() returning a fully qualified hostname so that a domain-part exists for further processing. Somewhere after getnameinfo() the hostpart will get stripped and that only works if getnameinfo() returns a fully qualified hostname and not just a unqualified name like "localhost".
So if getnameinfo returns
localhost.somedomain.com
for your locally bound imapd and
outside.somedomain.com
for your public accessible imapd everything should be fine if you have
defaultdomain: somedomain.com
Btw. did you try commenting out the servername option in your imapd.conf ? Would that change the mysql-queries to other lookups ? I just saw that you are using auxprop mysql and I remember now that auxprop mysql sets the domain to the servername for unqualified users for the lookup if you have %r somewhere in sasl_mysql_statement (that is /etc/hostname or the servername option in imapd.conf for me) ! So how does your sasl_mysql_statement config look like exactly ? Does it contain %r ? Does the value substituted for %r for _unqualified_ users match your defaultdomain :-) ? What happens if you set servername: somedomain.com (which looks incorrect but could make things work here...definetly breaks with murder however...) in imapd.conf ? At the point you are using %r there are not any unqualified users anywhere and %r gets the servername automatically for unqualified users! Will the default-servername used by cyrus be fully qualified or not (/etc/hostname I think) ? Do you have nsswitch.conf setup to use /etc/hosts ? At least there seems to not be a ptr record for the IP of toy.hudat.com in DNS but that may be ignored if getnameinfo() honours your local configuration. I bet you also ran into the auxprop mysql %r thing here just like me. I remember there was something confusing with %r and global admin/defaultdomain. At least it was my problem that days and took me hours to figure out :-)
-- Christian