imap4r1.h   imap4r1.h 
/* ======================================================================== /* ========================================================================
* Copyright 1988-2006 University of Washington * Copyright 1988-2007 University of Washington
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
* You may obtain a copy of the License at * You may obtain a copy of the License at
* *
* http://www.apache.org/licenses/LICENSE-2.0 * http://www.apache.org/licenses/LICENSE-2.0
* *
* *
* ======================================================================== * ========================================================================
*/ */
skipping to change at line 26 skipping to change at line 26
* *
* Author: Mark Crispin * Author: Mark Crispin
* Networks and Distributed Computing * Networks and Distributed Computing
* Computing & Communications * Computing & Communications
* University of Washington * University of Washington
* Administration Building, AG-44 * Administration Building, AG-44
* Seattle, WA 98195 * Seattle, WA 98195
* Internet: MRC@CAC.Washington.EDU * Internet: MRC@CAC.Washington.EDU
* *
* Date: 14 October 1988 * Date: 14 October 1988
* Last Edited: 6 December 2006 * Last Edited: 5 June 2007
*/ */
/* This include file is provided for applications which need to look under /* This include file is provided for applications which need to look under
* the covers at the IMAP driver and in particular want to do different * the covers at the IMAP driver and in particular want to do different
* operations depending upon the IMAP server's protocol level and * operations depending upon the IMAP server's protocol level and
* capabilities. It is NOT included in the normal c-client.h application * capabilities. It is NOT included in the normal c-client.h application
* export, and most applications do NOT need the definitions in this file. * export, and most applications do NOT need the definitions in this file.
* *
* As of October 15, 2003, it is believed that: * As of October 15, 2003, it is believed that:
* *
skipping to change at line 82 skipping to change at line 82
/* server disallows LOGIN command (RFC 2595) */ /* server disallows LOGIN command (RFC 2595) */
unsigned int logindisabled : 1; unsigned int logindisabled : 1;
unsigned int id : 1; /* server has ID (RFC 2971) */ unsigned int id : 1; /* server has ID (RFC 2971) */
unsigned int children : 1; /* server has CHILDREN (RFC 3348) */ unsigned int children : 1; /* server has CHILDREN (RFC 3348) */
unsigned int multiappend : 1; /* server has multi-APPEND (RFC 3502 ) ;*/ unsigned int multiappend : 1; /* server has multi-APPEND (RFC 3502 ) ;*/
unsigned int binary : 1; /* server has BINARY (RFC 3516) */ unsigned int binary : 1; /* server has BINARY (RFC 3516) */
unsigned int unselect : 1; /* server has UNSELECT */ unsigned int unselect : 1; /* server has UNSELECT */
unsigned int sasl_ir : 1; /* server has SASL-IR initial response */ unsigned int sasl_ir : 1; /* server has SASL-IR initial response */
unsigned int sort : 1; /* server has SORT */ unsigned int sort : 1; /* server has SORT */
unsigned int scan : 1; /* server has SCAN */ unsigned int scan : 1; /* server has SCAN */
unsigned int urlauth : 1; /* server has URLAUTH (RFC 4467) */
unsigned int catenate : 1; /* server has CATENATE (RFC 4469) */
unsigned int condstore : 1; /* server has CONDSTORE (RFC 4551) */
unsigned int esearch : 1; /* server has ESEARCH (RFC 4731) */
unsigned int extlevel; /* extension data level supported by server */ unsigned int extlevel; /* extension data level supported by server */
/* supported authenticators */ /* supported authenticators */
unsigned int auth : MAXAUTHENTICATORS; unsigned int auth : MAXAUTHENTICATORS;
THREADER *threader; /* list of threaders */ THREADER *threader; /* list of threaders */
} IMAPCAP; } IMAPCAP;
/* IMAP4rev1 level or better */ /* IMAP4rev1 level or better */
#define LEVELIMAP4rev1(stream) imap_cap (stream)->imap4rev1 #define LEVELIMAP4rev1(stream) imap_cap (stream)->imap4rev1
#define LEVELSTATUS LEVELIMAP4rev1 #define LEVELSTATUS LEVELIMAP4rev1
skipping to change at line 191 skipping to change at line 195
#define LEVELSORT(stream) imap_cap (stream)->sort #define LEVELSORT(stream) imap_cap (stream)->sort
/* Has at least one THREAD extension */ /* Has at least one THREAD extension */
#define LEVELTHREAD(stream) ((imap_cap (stream)->threader) ? T : NIL) #define LEVELTHREAD(stream) ((imap_cap (stream)->threader) ? T : NIL)
/* Has SCAN extension */ /* Has SCAN extension */
#define LEVELSCAN(stream) imap_cap (stream)->scan #define LEVELSCAN(stream) imap_cap (stream)->scan
/* Has URLAUTH extension */
#define LEVELURLAUTH(stream) imap_cap (stream)->urlauth
/* Has CATENATE extension */
#define LEVELCATENATE(stream) imap_cap (stream)->catenate
/* Has CONDSTORE extension */
#define LEVELCONDSTORE(stream) imap_cap (stream)->condstore
/* Has ESEARCH extension */
#define LEVELESEARCH(stream) imap_cap (stream)->esearch
/* Body structure extension levels */ /* Body structure extension levels */
/* These are in BODYSTRUCTURE order. Note that multipart bodies do not hav e /* These are in BODYSTRUCTURE order. Note that multipart bodies do not hav e
* body-fld-md5. This is alright, since all subsequent body structure * body-fld-md5. This is alright, since all subsequent body structure
* extensions are in both singlepart and multipart bodies. If that ever * extensions are in both singlepart and multipart bodies. If that ever
* changes, this will have to be split. * changes, this will have to be split.
*/ */
#define BODYEXTMD5 1 /* body-fld-md5 */ #define BODYEXTMD5 1 /* body-fld-md5 */
#define BODYEXTDSP 2 /* body-fld-dsp */ #define BODYEXTDSP 2 /* body-fld-dsp */
 End of changes. 4 change blocks. 
2 lines changed or deleted 22 lines changed or added


 mail.h   mail.h 
skipping to change at line 26 skipping to change at line 26
* *
* Author: Mark Crispin * Author: Mark Crispin
* Networks and Distributed Computing * Networks and Distributed Computing
* Computing & Communications * Computing & Communications
* University of Washington * University of Washington
* Administration Building, AG-44 * Administration Building, AG-44
* Seattle, WA 98195 * Seattle, WA 98195
* Internet: MRC@CAC.Washington.EDU * Internet: MRC@CAC.Washington.EDU
* *
* Date: 22 November 1989 * Date: 22 November 1989
* Last Edited: 30 January 2007 * Last Edited: 23 May 2007
*/ */
/* The Version */
#define CCLIENTVERSION "2006i"
/* Build parameters */ /* Build parameters */
#define CACHEINCREMENT 250 /* cache growth increments */ #define CACHEINCREMENT 250 /* cache growth increments */
#define MAILTMPLEN 1024 /* size of a temporary buffer */ #define MAILTMPLEN 1024 /* size of a temporary buffer */
#define SENDBUFLEN 16385 /* size of temporary sending buffer, also #define SENDBUFLEN 16385 /* size of temporary sending buffer, also
* used for SMTP commands and NETMBX generat ion * used for SMTP commands and NETMBX generat ion
* buffer so shouldn't be made smaller than * buffer so shouldn't be made smaller than
* MAILTMPLEN. Note that there's a guard by te, * MAILTMPLEN. Note that there's a guard by te,
* so this is actually len+1. */ * so this is actually len+1. */
#define MAXAUTHENTICATORS 8 /* maximum number of SASL authenticators */ #define MAXAUTHENTICATORS 8 /* maximum number of SASL authenticators */
skipping to change at line 1517 skipping to change at line 1521
void mm_log (char *string,long errflg); void mm_log (char *string,long errflg);
void mm_dlog (char *string); void mm_dlog (char *string);
void mm_login (NETMBX *mb,char *user,char *pwd,long trial); void mm_login (NETMBX *mb,char *user,char *pwd,long trial);
void mm_critical (MAILSTREAM *stream); void mm_critical (MAILSTREAM *stream);
void mm_nocritical (MAILSTREAM *stream); void mm_nocritical (MAILSTREAM *stream);
long mm_diskerror (MAILSTREAM *stream,long errcode,long serious); long mm_diskerror (MAILSTREAM *stream,long errcode,long serious);
void mm_fatal (char *string); void mm_fatal (char *string);
void *mm_cache (MAILSTREAM *stream,unsigned long msgno,long op); void *mm_cache (MAILSTREAM *stream,unsigned long msgno,long op);
extern STRINGDRIVER mail_string; extern STRINGDRIVER mail_string;
void mail_versioncheck (char *version);
void mail_link (DRIVER *driver); void mail_link (DRIVER *driver);
void *mail_parameters (MAILSTREAM *stream,long function,void *value); void *mail_parameters (MAILSTREAM *stream,long function,void *value);
DRIVER *mail_valid (MAILSTREAM *stream,char *mailbox,char *purpose); DRIVER *mail_valid (MAILSTREAM *stream,char *mailbox,char *purpose);
DRIVER *mail_valid_net (char *name,DRIVER *drv,char *host,char *mailbox); DRIVER *mail_valid_net (char *name,DRIVER *drv,char *host,char *mailbox);
long mail_valid_net_parse (char *name,NETMBX *mb); long mail_valid_net_parse (char *name,NETMBX *mb);
long mail_valid_net_parse_work (char *name,NETMBX *mb,char *service); long mail_valid_net_parse_work (char *name,NETMBX *mb,char *service);
void mail_scan (MAILSTREAM *stream,char *ref,char *pat,char *contents); void mail_scan (MAILSTREAM *stream,char *ref,char *pat,char *contents);
void mail_list (MAILSTREAM *stream,char *ref,char *pat); void mail_list (MAILSTREAM *stream,char *ref,char *pat);
void mail_lsub (MAILSTREAM *stream,char *ref,char *pat); void mail_lsub (MAILSTREAM *stream,char *ref,char *pat);
long mail_subscribe (MAILSTREAM *stream,char *mailbox); long mail_subscribe (MAILSTREAM *stream,char *mailbox);
 End of changes. 3 change blocks. 
1 lines changed or deleted 6 lines changed or added


 utf8.h   utf8.h 
skipping to change at line 26 skipping to change at line 26
* *
* Author: Mark Crispin * Author: Mark Crispin
* Networks and Distributed Computing * Networks and Distributed Computing
* Computing & Communications * Computing & Communications
* University of Washington * University of Washington
* Administration Building, AG-44 * Administration Building, AG-44
* Seattle, WA 98195 * Seattle, WA 98195
* Internet: MRC@CAC.Washington.EDU * Internet: MRC@CAC.Washington.EDU
* *
* Date: 11 June 1997 * Date: 11 June 1997
* Last Edited: 16 March 2007 * Last Edited: 25 May 2007
*/ */
/* UTF-8 size and conversion routines from UCS-2 values (thus in the BMP). /* UTF-8 size and conversion routines from UCS-2 values (thus in the BMP).
* Don't use these if UTF-16 data (surrogate pairs) are an issue. * Don't use these if UTF-16 data (surrogate pairs) are an issue.
* For UCS-4 values, use the utf8_size() and utf8_put() functions. * For UCS-4 values, use the utf8_size() and utf8_put() functions.
*/ */
#define UTF8_SIZE_BMP(c) ((c & 0xff80) ? ((c & 0xf800) ? 3 : 2) : 1) #define UTF8_SIZE_BMP(c) ((c & 0xff80) ? ((c & 0xf800) ? 3 : 2) : 1)
#define UTF8_PUT_BMP(b,c) { \ #define UTF8_PUT_BMP(b,c) { \
if (c & 0xff80) { /* non-ASCII? */ \ if (c & 0xff80) { /* non-ASCII? */ \
skipping to change at line 540 skipping to change at line 540
void utf8_text_ucs2 (SIZEDTEXT *text,SIZEDTEXT *ret,ucs4cn_t cv,ucs4de_t de ); void utf8_text_ucs2 (SIZEDTEXT *text,SIZEDTEXT *ret,ucs4cn_t cv,ucs4de_t de );
void utf8_text_ucs4 (SIZEDTEXT *text,SIZEDTEXT *ret,ucs4cn_t cv,ucs4de_t de ); void utf8_text_ucs4 (SIZEDTEXT *text,SIZEDTEXT *ret,ucs4cn_t cv,ucs4de_t de );
void utf8_text_utf16 (SIZEDTEXT *text,SIZEDTEXT *ret,ucs4cn_t cv,ucs4de_t d e); void utf8_text_utf16 (SIZEDTEXT *text,SIZEDTEXT *ret,ucs4cn_t cv,ucs4de_t d e);
unsigned long utf8_size (unsigned long c); unsigned long utf8_size (unsigned long c);
unsigned char *utf8_put (unsigned char *s,unsigned long c); unsigned char *utf8_put (unsigned char *s,unsigned long c);
unsigned long ucs4_titlecase (unsigned long c); unsigned long ucs4_titlecase (unsigned long c);
long ucs4_width (unsigned long c); long ucs4_width (unsigned long c);
long utf8_strwidth (unsigned char *s); long utf8_strwidth (unsigned char *s);
long utf8_textwidth (SIZEDTEXT *utf8); long utf8_textwidth (SIZEDTEXT *utf8);
unsigned long ucs4_decompose (unsigned long c,void **more); unsigned long ucs4_decompose (unsigned long c,void **more);
unsigned long ucs4_decompose_recursive (unsigned long c,void **more);
 End of changes. 2 change blocks. 
1 lines changed or deleted 1 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/