offering limited pop access

Wesley Craig wes at umich.edu
Thu Oct 30 13:33:39 EDT 2008


On 30 Oct 2008, at 12:34, Andrew Morgan wrote:
> I always thought the service name for options was whatever service  
> name you put in cyrus.conf.  It would be the first column in the  
> SERVICES section, such as:
>
>   imap     cmd="/usr/local/cyrus/bin/imapd" listen="imap"  
> prefork=10 maxchild=1500
>   imaps    cmd="/usr/local/cyrus/bin/imapd -s" listen="imaps"  
> prefork=10 maxchild=1500
>   pop3    cmd="/usr/local/cyrus/bin/pop3d" listen="pop3" prefork=3
>   pop3s   cmd="/usr/local/cyrus/bin/pop3d -s" listen="pop3s" prefork=1
>
> In this example, the service names are imap, imaps, pop3, and pop3s.

Maybe... I'm looking at imap/pop3d.c around line 156:

static struct protocol_t pop3_protocol =
{ "pop3", "pop",
   { 0, "+OK " },
   { "CAPA", NULL, ".", NULL,
     { { "SASL ", CAPA_AUTH },
       { "STLS", CAPA_STARTTLS },
       { NULL, 0 } } },
   { "STLS", "+OK", "-ERR", 0 },
   { "AUTH", 255, 0, "+OK", "-ERR", "+ ", "*", NULL, 0 },
   { "NOOP", NULL, "+OK" },
   { "QUIT", NULL, "+OK" }
};

and imap/protocol.h:

struct protocol_t {
     const char *service;        /* INET service name */
     const char *sasl_service;   /* SASL service name */
     struct banner_t banner;
     struct capa_cmd_t capa_cmd;
     struct tls_cmd_t tls_cmd;
     struct sasl_cmd_t sasl_cmd;
     struct simple_cmd_t ping_cmd;
     struct simple_cmd_t logout_cmd;
};

Perhaps pop3_protocol->sasl_service is not what's used for  
constructing the line.  I haven't actually tried it, I'm just reading  
the code...

:wes


More information about the Info-cyrus mailing list