env.h | env.h | |||
---|---|---|---|---|
/* ======================================================================== | /* ======================================================================== | |||
* Copyright 1988-2006 University of Washington | * Copyright 1988-2008 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 | |||
* | * | |||
* | * | |||
* ======================================================================== | * ======================================================================== | |||
*/ | */ | |||
/* | /* | |||
* Program: Environment routines | * Program: Environment routines | |||
* | * | |||
* Author: Mark Crispin | * Author: Mark Crispin | |||
* Networks and Distributed Computing | * UW Technology | |||
* Computing & Communications | ||||
* University of Washington | * University of Washington | |||
* Administration Building, AG-44 | ||||
* Seattle, WA 98195 | * Seattle, WA 98195 | |||
* Internet: MRC@CAC.Washington.EDU | * Internet: MRC@Washington.EDU | |||
* | * | |||
* Date: 1 August 1988 | * Date: 1 August 1988 | |||
* Last Edited: 30 August 2006 | * Last Edited: 13 February 2008 | |||
*/ | */ | |||
/* Function prototypes */ | /* Function prototypes */ | |||
long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim); | long pmatch_full (unsigned char *s,unsigned char *pat,unsigned char delim); | |||
long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim); | long dmatch (unsigned char *s,unsigned char *pat,unsigned char delim); | |||
void *env_parameters (long function,void *value); | void *env_parameters (long function,void *value); | |||
void rfc822_date (char *date); | void rfc822_date (char *date); | |||
void rfc822_timezone (char *s,void *t); | void rfc822_timezone (char *s,void *t); | |||
void internal_date (char *date); | void internal_date (char *date); | |||
long server_input_wait (long seconds); | long server_input_wait (long seconds); | |||
void server_init (char *server,char *service,char *sasl, | void server_init (char *server,char *service,char *sasl, | |||
void *clkint,void *kodint,void *hupint,void *trmint); | void *clkint,void *kodint,void *hupint,void *trmint, | |||
void *staint); | ||||
long server_login (char *user,char *pass,char *authuser,int argc,char *argv []); | long server_login (char *user,char *pass,char *authuser,int argc,char *argv []); | |||
long authserver_login (char *user,char *authuser,int argc,char *argv[]); | long authserver_login (char *user,char *authuser,int argc,char *argv[]); | |||
long anonymous_login (int argc,char *argv[]); | long anonymous_login (int argc,char *argv[]); | |||
char *mylocalhost (void); | char *mylocalhost (void); | |||
char *myhomedir (void); | char *myhomedir (void); | |||
char *mailboxfile (char *dst,char *name); | char *mailboxfile (char *dst,char *name); | |||
MAILSTREAM *default_proto (long type); | MAILSTREAM *default_proto (long type); | |||
End of changes. 6 change blocks. | ||||
7 lines changed or deleted | 6 lines changed or added | |||
mail.h | mail.h | |||
---|---|---|---|---|
/* ======================================================================== | /* ======================================================================== | |||
* Copyright 1988-2007 University of Washington | * Copyright 1988-2008 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 | |||
* | * | |||
* | * | |||
* ======================================================================== | * ======================================================================== | |||
*/ | */ | |||
/* | /* | |||
* Program: Mailbox Access routines | * Program: Mailbox Access routines | |||
* | * | |||
* Author: Mark Crispin | * Author: Mark Crispin | |||
* Networks and Distributed Computing | * UW Technology | |||
* Computing & Communications | ||||
* University of Washington | * University of Washington | |||
* Administration Building, AG-44 | ||||
* Seattle, WA 98195 | * Seattle, WA 98195 | |||
* Internet: MRC@CAC.Washington.EDU | * Internet: MRC@Washington.EDU | |||
* | * | |||
* Date: 22 November 1989 | * Date: 22 November 1989 | |||
* Last Edited: 19 November 2007 | * Last Edited: 14 January 2008 | |||
*/ | */ | |||
/* The Version */ | /* The Version */ | |||
#define CCLIENTVERSION "2007" | #define CCLIENTVERSION "2007a" | |||
/* 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. */ | |||
skipping to change at line 141 | skipping to change at line 139 | |||
#define GET_FREESTREAMSPAREP (long) 151 | #define GET_FREESTREAMSPAREP (long) 151 | |||
#define SET_FREESTREAMSPAREP (long) 152 | #define SET_FREESTREAMSPAREP (long) 152 | |||
#define GET_FREEBODYSPAREP (long) 153 | #define GET_FREEBODYSPAREP (long) 153 | |||
#define SET_FREEBODYSPAREP (long) 154 | #define SET_FREEBODYSPAREP (long) 154 | |||
#define GET_COPYUID (long) 155 | #define GET_COPYUID (long) 155 | |||
#define SET_COPYUID (long) 156 | #define SET_COPYUID (long) 156 | |||
#define GET_APPENDUID (long) 157 | #define GET_APPENDUID (long) 157 | |||
#define SET_APPENDUID (long) 158 | #define SET_APPENDUID (long) 158 | |||
#define GET_RFC822OUTPUTFULL (long) 159 | #define GET_RFC822OUTPUTFULL (long) 159 | |||
#define SET_RFC822OUTPUTFULL (long) 160 | #define SET_RFC822OUTPUTFULL (long) 160 | |||
#define GET_BLOCKENVINIT (long) 161 | ||||
#define SET_BLOCKENVINIT (long) 162 | ||||
/* 2xx: environment */ | /* 2xx: environment */ | |||
#define GET_USERNAME (long) 201 | #define GET_USERNAME (long) 201 | |||
#define SET_USERNAME (long) 202 | #define SET_USERNAME (long) 202 | |||
#define GET_HOMEDIR (long) 203 | #define GET_HOMEDIR (long) 203 | |||
#define SET_HOMEDIR (long) 204 | #define SET_HOMEDIR (long) 204 | |||
#define GET_LOCALHOST (long) 205 | #define GET_LOCALHOST (long) 205 | |||
#define SET_LOCALHOST (long) 206 | #define SET_LOCALHOST (long) 206 | |||
#define GET_SYSINBOX (long) 207 | #define GET_SYSINBOX (long) 207 | |||
#define SET_SYSINBOX (long) 208 | #define SET_SYSINBOX (long) 208 | |||
#define GET_USERPROMPT (long) 209 | #define GET_USERPROMPT (long) 209 | |||
skipping to change at line 785 | skipping to change at line 785 | |||
unsigned long mod; /* modseq */ | unsigned long mod; /* modseq */ | |||
PARTTEXT special; /* special text pointers */ | PARTTEXT special; /* special text pointers */ | |||
MESSAGE msg; /* internal message pointers */ | MESSAGE msg; /* internal message pointers */ | |||
union { /* driver internal use */ | union { /* driver internal use */ | |||
unsigned long data; | unsigned long data; | |||
void *ptr; | void *ptr; | |||
} spare; | } spare; | |||
unsigned int sequence : 1; /* saved sequence bit */ | unsigned int sequence : 1; /* saved sequence bit */ | |||
unsigned int dirty : 1; /* driver internal use */ | unsigned int dirty : 1; /* driver internal use */ | |||
unsigned int filter : 1; /* driver internal use */ | unsigned int filter : 1; /* driver internal use */ | |||
unsigned int ghost : 1; /* driver internal use */ | ||||
} private; | } private; | |||
/* internal date */ | /* internal date */ | |||
unsigned int day : 5; /* day of month (1-31) */ | unsigned int day : 5; /* day of month (1-31) */ | |||
unsigned int month : 4; /* month of year (1-12) */ | unsigned int month : 4; /* month of year (1-12) */ | |||
unsigned int year : 7; /* year since BASEYEAR (expires in 127 yrs) */ | unsigned int year : 7; /* year since BASEYEAR (expires in 127 yrs) */ | |||
unsigned int hours: 5; /* hours (0-23) */ | unsigned int hours: 5; /* hours (0-23) */ | |||
unsigned int minutes: 6; /* minutes (0-59) */ | unsigned int minutes: 6; /* minutes (0-59) */ | |||
unsigned int seconds: 6; /* seconds (0-59) */ | unsigned int seconds: 6; /* seconds (0-59) */ | |||
unsigned int zoccident : 1; /* non-zero if west of UTC */ | unsigned int zoccident : 1; /* non-zero if west of UTC */ | |||
unsigned int zhours : 4; /* hours from UTC (0-12) */ | unsigned int zhours : 4; /* hours from UTC (0-12) */ | |||
End of changes. 8 change blocks. | ||||
7 lines changed or deleted | 8 lines changed or added | |||
utf8.h | utf8.h | |||
---|---|---|---|---|
/* ======================================================================== | /* ======================================================================== | |||
* Copyright 1988-2007 University of Washington | * Copyright 1988-2008 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: 11 June 1997 | * Date: 11 June 1997 | |||
* Last Edited: 14 November 2007 | * Last Edited: 17 January 2008 | |||
*/ | */ | |||
/* 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 453 | skipping to change at line 453 | |||
typedef struct utf8_scent { | typedef struct utf8_scent { | |||
char *name; /* script name */ | char *name; /* script name */ | |||
char *description; /* script description */ | char *description; /* script description */ | |||
unsigned long script; /* script bitmask */ | unsigned long script; /* script bitmask */ | |||
} SCRIPT; | } SCRIPT; | |||
/* Character set table support */ | /* Character set table support */ | |||
typedef struct utf8_csent { | typedef struct utf8_csent { | |||
char *name; /* charset name */ | char *name; /* charset name */ | |||
unsigned long type; /* type of charset */ | unsigned short type; /* type of charset */ | |||
unsigned short flags; /* charset flags */ | ||||
void *tab; /* additional data */ | void *tab; /* additional data */ | |||
unsigned long script; /* script(s) implemented by this cha rset */ | unsigned long script; /* script(s) implemented by this cha rset */ | |||
char *preferred; /* preferred charset over this one */ | char *preferred; /* preferred charset over this one */ | |||
} CHARSET; | } CHARSET; | |||
struct utf8_eucparam { | struct utf8_eucparam { | |||
unsigned int base_ku : 8; /* base row */ | unsigned int base_ku : 8; /* base row */ | |||
unsigned int base_ten : 8; /* base column */ | unsigned int base_ten : 8; /* base column */ | |||
unsigned int max_ku : 8; /* maximum row */ | unsigned int max_ku : 8; /* maximum row */ | |||
unsigned int max_ten : 8; /* maximum column */ | unsigned int max_ten : 8; /* maximum column */ | |||
skipping to change at line 485 | skipping to change at line 486 | |||
#define CT_1BYTE8 12 /* 1 byte table 0x00 - 0xff */ | #define CT_1BYTE8 12 /* 1 byte table 0x00 - 0xff */ | |||
#define CT_EUC 100 /* 2 byte ASCII + utf8_eucparam base/CS2/CS3 */ | #define CT_EUC 100 /* 2 byte ASCII + utf8_eucparam base/CS2/CS3 */ | |||
#define CT_DBYTE 101 /* 2 byte ASCII + utf8_eucparam */ | #define CT_DBYTE 101 /* 2 byte ASCII + utf8_eucparam */ | |||
#define CT_DBYTE2 102 /* 2 byte ASCII + utf8_eucparam plane1/2 */ | #define CT_DBYTE2 102 /* 2 byte ASCII + utf8_eucparam plane1/2 */ | |||
#define CT_UTF16 1000 /* variable UTF-16 encoded Unicode no table */ | #define CT_UTF16 1000 /* variable UTF-16 encoded Unicode no table */ | |||
#define CT_UTF8 1001 /* variable UTF-8 encoded Unicode no table * / | #define CT_UTF8 1001 /* variable UTF-8 encoded Unicode no table * / | |||
#define CT_UTF7 1002 /* variable UTF-7 encoded Unicode no table * / | #define CT_UTF7 1002 /* variable UTF-7 encoded Unicode no table * / | |||
#define CT_2022 10000 /* variable ISO-2022 encoded no table */ | #define CT_2022 10000 /* variable ISO-2022 encoded no table */ | |||
#define CT_SJIS 10001 /* 2 byte Shift-JIS encoded JIS no table */ | #define CT_SJIS 10001 /* 2 byte Shift-JIS encoded JIS no table */ | |||
/* Character set flags */ | ||||
#define CF_PRIMARY 0x1 /* primary name for this charset */ | ||||
#define CF_DISPLAY 0x2 /* charset used in displays */ | ||||
#define CF_POSTING 0x4 /* charset used in email posting */ | ||||
#define CF_UNSUPRT 0x8 /* charset unsupported (can't convert to it) | ||||
*/ | ||||
#define CF_NOEMAIL 0x10 /* charset not used in email */ | ||||
/* UTF-7 engine states */ | /* UTF-7 engine states */ | |||
#define U7_ASCII 0 /* ASCII character */ | #define U7_ASCII 0 /* ASCII character */ | |||
#define U7_PLUS 1 /* plus seen */ | #define U7_PLUS 1 /* plus seen */ | |||
#define U7_UNICODE 2 /* Unicode characters */ | #define U7_UNICODE 2 /* Unicode characters */ | |||
#define U7_MINUS 3 /* absorbed minus seen */ | #define U7_MINUS 3 /* absorbed minus seen */ | |||
/* Function prototypes */ | /* Function prototypes */ | |||
typedef unsigned long (*ucs4cn_t) (unsigned long c); | typedef unsigned long (*ucs4cn_t) (unsigned long c); | |||
typedef unsigned long (*ucs4de_t) (unsigned long c,void **more); | typedef unsigned long (*ucs4de_t) (unsigned long c,void **more); | |||
End of changes. 4 change blocks. | ||||
3 lines changed or deleted | 13 lines changed or added | |||