Timsieved valid commands
Ken Murchison
ken at oceana.com
Tue Nov 19 21:46:06 EST 2002
Su Li wrote:
>
> Thanks a lot Mark and Ken,
>
> I am writing a C++ client to log into Sieve 2000 port. Can you send me the C++/C code for base64 encode? So what I need to do to login to Sieve should be like:
You should use the SASL library to to the authentication so you can
handle any available mechanism. The imtest.c program that comes with
Cyrus is a good example of a SASL client - it handles SSL/TLS and SASL
for IMAP, POP3, SMTP, LMTP, NNTP, MANAGESIEVE and MUPDATE.
>
> C: AUTHENTICATE "PLAIN" {21+}
> C: <base64 encoded authname and username>
> S: password?
> C: <base64 encode password>
> S: OK loged in
>
> Is that right?
>
> I really appreciate if you can help me out here.
>
> Thanks,
>
> Su
>
>
>
> The PLAIN authentication method seems to be defined in rfc2595.txt.
>
> The example given for ACAP in the rfc is:
> C: a003 AUTHENTICATE "PLAIN" {21+}
> C: <NUL>tim<NUL>tanstaaftanstaaf
> S: a003 OK CRAM-MD5 password initialized
>
> From this it appears that you can't use PLAIN via telnet because you can't
> enter a <NUL> character (at least I don't know how it would be done).
>
> I've been able to telnet to the timsieved by enabling the LOGIN authentication
> mechanism. However you'll have to be able to convert username and password to
> base64 inorder to use it.
>
> I do have C++ source for a b64echo which I can post if anyone wants it.
>
> Sieve commands are defined in:
> cyrus-imapd-x.y.z/doc/sieve-protocol.html
>
> Regards,
> Mark Keasling <mark at air.co.jp>
--
Kenneth Murchison Oceana Matrix Ltd.
Software Engineer 21 Princeton Place
716-662-8973 x26 Orchard Park, NY 14127
--PGP Public Key-- http://www.oceana.com/~ken/ksm.pgp
More information about the Info-cyrus
mailing list