When installing amavis with postfix the script /usr/sbin/amavis is suid postfix. This breaks virusscanning with clamav and maybe other virusscanners. After a lot of digging around I came up with why: In postfix's master.cf you define that the user that should run the amavis script is 'amavis', however since the script is suid postfix and the script sets umask to 0077 all files created by the script is unreadable by external programs ran from within the script (as they regain uid amavis).
What is the full name of the amavis package you are using? There are two similarly named ones. "amavis" is an antiquated package. You should consider using "amavisd-new", also in portage and actively maintained. If you are talking about amavisd-new, then this is a more complex issue. The running users of various viruscanners, amavisd-new, postfix, and their corresponding work directories is dependent on the filtering system the user chooses to implement. There are a few contributions and other bug reports surrounding this issue. I'll try to make an effort to consolidate these Bugs into something that can be discussed.
Please see discussion in Bug 48786.
Due to lack of maintainership, and to the fact that amavis has been a dead project for quite some time, it has been removed from Portage. Sorry.