fud¶
Provide information about user mailboxes
Synopsis¶
fud [ -C config-file ] [ -U uses ] [ -T timeout ] [ -D ]
Description¶
fud is a long lived datagram daemon started from master that provides information about when a user last read their mail, when mail last arrived in a user’s mailbox, and how many messages are recent for that user.
fud reads its configuration options out of the imapd.conf(5) file unless specified otherwise by -C.
fud will automatically proxy any and all FUD requests to the appropriate backend server if it is running on a Cyrus Murder frontend machine.
To set up the FUD daemon, add this to your cyrus.conf:
fud cmd="fud" listen="fud" prefork=1 proto="udp"
and to /etc/services:
fud 4201/udp # Cyrus IMAP FUD Daemon
Client¶
There is no specific FUD client. This shows how one might access FUD.
#!/usr/bin/perl
use Socket;
print( "Enter fud hostname: " );
$hostname = <>;
chomp( $hostname );
print( "Enter username to query: " );
$username = <>;
chomp( $username );
socket( FUD, PF_INET, SOCK_DGRAM, getprotobyname( "udp" ) )
or die( "failed to create udp socket: $!" );
$ipaddr = inet_aton( $hostname );
$portaddr = sockaddr_in( '4201', $ipaddr );
$fud_query = $username . '|user.' . $username;
send( FUD, "$fud_query", 0, $portaddr ) == length( $fud_query )
or die( "failed to send fud query: $!" );
recv( FUD, $fud_response, 512, 0 )
or die( "recv() failed: $!" );
print( "FUD responded: $fud_response\n" );
exit( 0 );
Options¶
-
-C
config-file
¶ Use the specified configuration file config-file rather than the default imapd.conf(5).
-
-U
uses
¶ The maximum number of times that the process should be used for new connections before shutting down. The default is 250.
-
-T
timeout
¶ The number of seconds that the process will wait for a new connection before shutting down. Note that a value of 0 (zero) will disable the timeout. The default is 60.
-
-D
¶
Run external debugger specified in debug_command.
Files¶
/etc/imapd.conf, /etc/cyrus.conf
Bugs¶
Though not really a bug, fud will silently ignore any requests that it does not consider valid.
Also not really a bug, fud requires that the anonymous user has the 0 (zero) right on the mailbox in question. This is only a “bug” because 0 is not a standard IMAP ACL bit.
fud is an experimental interface meant to provide information to build a finger-like service around. Eventually it should be superseded by a more standards-based protocol.