Hi - new to the list, can't find much on this using google.
I'm trying to setup the dovecot DRAC plugin as described here:
http://wiki.dovecot.org/HowTo/PopBSMTPAndDovecot#DRAC
DRAC is installed and running using this startup command:
/usr/local/sbin/rpc.dracd -i -e 5 /etc/postfix/dracd.db
I downloaded the drac.c file linked on the above URL:
http://www.dovecot.org/patches/1.1/drac.c and built it using this command:
gcc -Wall -W -shared -fPIC -DHAVE_CONFIG_H drac.c -I/usr/include/dovecot
-L/usr/lib64/dovecot -o drac.so -ldrac
Then I copied drac.so to /usr/lib64/dovecot (this is an x86_64 SL 6.1 system -
dovecot 2.0.9) and modified my /etc/dovecot/conf.d/20-imap.conf file:
mail_plugin_dir = /usr/lib64/dovecot
mail_plugins = drac
Restart dovecot and try to login and getting these messages for ANY login
attempts:
dovecot: imap-login: Login: user=<snip>, method=PLAIN, rip=<snip>,
lip=<snip>, mpid=4018, TLS
server dovecot: imap(<snip>: Error: DRAC: IP environment not given
I traced the "IP environment not given" to the drac.c plugin file, and
the code is pretty simple:
void drac_init(void)
{
const char *ip_str;
struct ip_addr ip;
ip_str = getenv("IP");
if (ip_str == NULL)
i_error("DRAC: IP environment not given");
Is there anything special that needs to be done for getenv("IP") to
report the login IP? I tried to put getenv("RIP") for remote ip and
even getenv("USER") as well but always get NULL. Is this API only for
dovecot 1.x? If so is there a 2.0 equivalent? The rest of the plugin is very
basic...
I think this is the last step in getting this setup running. I'd have to
have this one last piece force me to run that icky perl program instead.
Thank you,
Let me know if anything else is needed.
Josh