On 08/02/2010 10:56 PM, Lucas Zinato Carraro wrote: > Anyone knows where i can find examples and some documentation > about the Cyrus Daemon FUD? > > I find only a man page in cyrus imap source. There's not much to set up, so the man page tells you pretty much everything there is to know about fud. From a server perspective, to set it up you need to add an entry to cyrus.conf like so: fud cmd="fud" listen="fud" prefork=0 proto="udp" This assumes that you have a fud entry in /etc/services. If not, add something like: fud 4201/udp # Cyrus IMAP FUD Daemon to your /etc/services file. master will now start fud for you. > There is a specific client for fud? There might be, but nothing I'm aware of. The finger client that runs on our public machines here at CMU knows how to do fud queries, but you'll notice in the man page that you have to assign 0 rights to the anonymous user for it to work. We don't assign this right by default, so users would have to opt-in to make fud work for their mailbox. The protocol is extremely simple, so if you wanted to test fud you could use something like: #!/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 ); -- Dave McMurtrie, SPE Email Systems Team Leader Carnegie Mellon University, Computing Services ---- Cyrus Home Page: http://cyrusimap.web.cmu.edu/ Cyrus Wiki/FAQ: http://cyrusimap.web.cmu.edu/twiki List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html