1FUD(8) Cyrus IMAP FUD(8)
2
3
4
6 fud - Cyrus IMAP documentation
7
8 Provide information about user mailboxes
9
11 fud [ -C config-file ] [ -U uses ] [ -T timeout ] [ -D ]
12
14 fud is a long lived datagram daemon started from master that provides
15 information about when a user last read their mail, when mail last ar‐
16 rived in a user’s mailbox, and how many messages are recent for that
17 user.
18
19 fud reads its configuration options out of the imapd.conf(5) file un‐
20 less specified otherwise by -C.
21
22 fud will automatically proxy any and all FUD requests to the appropri‐
23 ate backend server if it is running on a Cyrus Murder frontend machine.
24
25 To set up the FUD daemon, add this to your cyrus.conf:
26
27 fud cmd="fud" listen="fud" prefork=1 proto="udp"
28
29 and to /etc/services:
30
31 fud 4201/udp # Cyrus IMAP FUD Daemon
32
33 Client
34 There is no specific FUD client. This shows how one might access FUD.
35
36 #!/usr/bin/perl
37
38 use Socket;
39
40 print( "Enter fud hostname: " );
41 $hostname = <>;
42 chomp( $hostname );
43
44 print( "Enter username to query: " );
45 $username = <>;
46 chomp( $username );
47
48 socket( FUD, PF_INET, SOCK_DGRAM, getprotobyname( "udp" ) )
49 or die( "failed to create udp socket: $!" );
50
51 $ipaddr = inet_aton( $hostname );
52 $portaddr = sockaddr_in( '4201', $ipaddr );
53
54 $fud_query = $username . '|user.' . $username;
55
56 send( FUD, "$fud_query", 0, $portaddr ) == length( $fud_query )
57 or die( "failed to send fud query: $!" );
58
59 recv( FUD, $fud_response, 512, 0 )
60 or die( "recv() failed: $!" );
61
62 print( "FUD responded: $fud_response\n" );
63
64 exit( 0 );
65
67 -C config-file
68 Use the specified configuration file config-file rather than the
69 default imapd.conf(5).
70
71 -U uses
72 The maximum number of times that the process should be used for
73 new connections before shutting down. The default is 250.
74
75 -T timeout
76 The number of seconds that the process will wait for a new con‐
77 nection before shutting down. Note that a value of 0 (zero)
78 will disable the timeout. The default is 60.
79
80 -D Run external debugger specified in debug_command.
81
83 /etc/imapd.conf, /etc/cyrus.conf
84
86 Though not really a bug, fud will silently ignore any requests that it
87 does not consider valid.
88
89 Also not really a bug, fud requires that the anonymous user has the 0
90 (zero) right on the mailbox in question. This is only a “bug” because
91 0 is not a standard IMAP ACL bit.
92
93 fud is an experimental interface meant to provide information to build
94 a finger-like service around. Eventually it should be superseded by a
95 more standards-based protocol.
96
98 imapd.conf(5), cyrus.conf(5)
99
101 The Cyrus Team, Nic Bernstein (Onlight)
102
104 1993-2018, The Cyrus Team
105
106
107
108
1093.4.4 June 27, 2022 FUD(8)