亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? encoding.h

?? PGP—Pretty Good Privacy
?? H
字號:
/*
 *  Functions to encode and decode using BASE64 or Quoted-Printable
 *  Also a transfer-encoding header line parser
 *
 *  Filename: encoding.h
 *
 *  Last Edited: September 24, 1996
 *
 *  Author: Scott Manjourides
 *
 *  Portions adopted from code originally written by Stever Dorner.
 *  Copyright 1995, 1996 QUALCOMM Inc.
 *
 *  Send comments and questions to <emsapi-info@qualcomm.com>
 *
 */

#ifndef EMS_ENCODING_H
#define EMS_ENCODING_H

/*
 * state buffer for base64 encoding. Initialize all values to zero.
 */
typedef struct {
	unsigned char partial[4];
	short partialCount;
	short bytesOnLine;
} Enc64, *Enc64Ptr;

/*
 * state buffer for base64 decoding. Initialize all values to zero.
 */
typedef struct {
	short decoderState;		/* which of 4 bytes are we seeing now? */
	long invalCount;		/* how many bad chars found so far? */
	long padCount;			/* how many pad chars found so far? */
	unsigned char partial;	/* partially decoded byte from/for last
								next time */
	short wasCR;			/* was the last character a carriage return? */
} Dec64, *Dec64Ptr;

/*
 * used internally to track parsing state
 */
typedef enum {
	qpNormal,
	qpEqual,
	qpEncoded,
	qpTrailingWhitespace,
	qpError
} QPStates;

/*
 * state buffer for QP encoding. Initialize all values to zero.
 */
typedef struct {
	int nCurLineLen; /* Number of characters outputed to current line */
	char cLastChar;  /* Last character read in */
} EncQP, *EncQPPtr;

/*
 * state buffer for QP decoding. Initialize CurState to qpNormal.
 */
typedef struct {
	QPStates CurState;
	char cLastChar;
} DecQP, *DecQPPtr;

/*
 * Valid return values for rfc822_parse_cte which specify the trasnfer
 * encoding found in the parsed header line
 */
typedef enum {
	CTE_Error,
	CTE_Base64,
	CTE_QP,
	CTE_7bit,
	CTE_8bit,
	CTE_Binary,
	CTE_NONE
} TrEncType;

/*************************************************************************/
/*                                B A S E 6 4                            */
/*************************************************************************/

/*
 *  Convert binary data to base64
 *
 *  Args:
 *   binPtr     [IN]     the binary data (or NULL to close encoder)
 *   binLen     [IN]     the length of the binary data
 *   sixFourPtr [IN]     pointer to buffer for the base64 data
 *   e64        [IN/OUT] state; caller must preserve
 *
 *  Returns: The length of the base64 data
 */
long Encode64(char *bin, long len, char *sixFour, Enc64Ptr e64);

/*
 *  Convert base64 data to binary
 *
 *  Args:
 *   sixFourPtr [IN]     the base64 data (or nil to close decoder)
 *   sixFourLen [IN]     the length of the base64 data
 *   binPtr     [IN]     pointer to buffer to hold binary data
 *   d64        [IN/OUT] pointer to decoder state; caller must preserve
 *   decErrCnt  [OUT]    the number of decoding errors found
 *
 *  Returns: The length of the binary data
 */
long Decode64(char *sixFour, long sixFourLen, char *bin, Dec64Ptr d64, 
			  long *decErrCnt);

/*******************************************************************/
/*                      Q U O T E D - P R I N T A B L E              */
/***************************************************************/

/* ------------------------------------------------------------------ */
/* NOTE: To handle BINARY data, you must always quote newline characters, */
/*   this implementation assumes TEXT data and thus does not encode
	newlines */
/* ----------------------------------------------------------- */

/*
 *  Convert binary data to quoted-printable
 *
 *  Args:
 *   pBin     [IN]     the binary data (or NULL to close the encoder)
 *   nLen     [IN]     the length of the binary data (or 0 to close 
 the encoder)
 *   pQP      [IN]     pointer to buffer for the quoted-printable data
 *   eQPstate [IN/OUT] state; caller must preserve
 *
 *  Returns: The length of the quoted-printable data
 */
long EncodeQP(char *bin, long len, char *qp, EncQPPtr eQP);

/*
 *  Convert quoted printable data to binary
 *
 *  Args:
 *   pQP       [IN]     the quoted printable data (or NULL to close 
 the decoder)
 *   nLen      [IN]     the length of the quoted printable data (or 0 
 to close the decoder)
 *   pBin      [IN]     pointer to buffer to hold binary data
 *   dQPstate  [IN/OUT] pointer to decoder state; caller must preserve
 *   decErrCnt [OUT]    the number of decoding errors found
 *
 *  Returns: The length of the binary data
 */
long DecodeQP(char *qp, long qpLen, char *bin, DecQPPtr dqp, 
			  long *decErrCnt);

/**************************************************************************/
/*                             CTE   P A R S E R                          */
/*************************************************************************/

/*
 *  Parse Content-Transer-Encoding header line
 *
 *  Args:
 *   src [IN] Valid Transfer-Encoding header.
 *
 *  Returns: enumerated integer 'TrEncType' type specifying CTE (see above).
 */
TrEncType rfc822_parse_cte(const char *src);

/*
 *  Create Content-Transer-Encoding header line
 *
 *  NOTE: The user of this function is responsible for freeing the
 *        returned string.
 *
 *  Args:
 *   mechanism [IN] Enumerated integer 'TrEncType' type specifying CTE.
 *
 *  Returns: Content tranfer encoding header line string.
 */
char *rfc822_make_cte(TrEncType mechanism);

/*
 *  Finds and extracts the content transfer encoding header line from a full
 *  multi-lined header. All unfolding (removing newlines) is done before
 *  header line is returned.
 *
 *  NOTE: The user of this function is responsible for freeing the
 *        returned string.
 *
 *  Args:
 *   pFullHeader [IN] Pointer to a full RFC822 header, including newlines
 *
 *  Returns: Extracted header line string; dynamically allocated.
 */
char *rfc822_extract_cte(const char *pFullHeader);

#endif /* EMS_ENCODING_H */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产人伦精品一区二区| 一区二区三区四区在线| 激情综合网最新| 久久亚洲影视婷婷| 成人app网站| 亚洲国产日日夜夜| 久久伊人中文字幕| 91国偷自产一区二区开放时间 | 国产精品综合av一区二区国产馆| 久久精品亚洲精品国产欧美kt∨ | 99久久久无码国产精品| 精品人在线二区三区| 99国产欧美另类久久久精品| 奇米精品一区二区三区四区| 亚洲女性喷水在线观看一区| 欧美一区二区三区在线| 91麻豆福利精品推荐| 国产丶欧美丶日本不卡视频| 强制捆绑调教一区二区| 亚洲色大成网站www久久九九| 日韩一区二区免费在线电影| 在线观看日韩毛片| 91免费看片在线观看| av一二三不卡影片| 成人激情黄色小说| 99久久婷婷国产综合精品| 国产69精品久久久久毛片 | 精品一区二区三区在线播放视频| 丝袜美腿亚洲一区| 亚洲国产综合视频在线观看| 亚洲精品一卡二卡| 亚洲愉拍自拍另类高清精品| 香蕉久久夜色精品国产使用方法| 一区二区三区日韩精品视频| 亚洲伦理在线免费看| 亚洲成人自拍一区| 老鸭窝一区二区久久精品| 国产在线精品不卡| 成人免费高清在线| 91麻豆成人久久精品二区三区| 99精品视频一区二区三区| 欧美日韩一区二区在线观看视频| 4438x亚洲最大成人网| 欧美国产精品一区二区三区| 亚洲裸体xxx| 国产成人综合精品三级| 丁香六月久久综合狠狠色| 在线视频亚洲一区| 久久精品日韩一区二区三区| 亚洲一区在线视频| 国产+成+人+亚洲欧洲自线| 欧美视频一二三区| 一色桃子久久精品亚洲| 麻豆精品视频在线观看视频| 91在线国产福利| 欧美精品一区二区三区蜜桃 | 99riav久久精品riav| 91网站在线观看视频| 欧美日韩成人综合在线一区二区| 制服丝袜日韩国产| 国产女主播视频一区二区| 亚洲美女屁股眼交3| 国内成+人亚洲+欧美+综合在线| www.亚洲人| 欧美精品一区二区三区久久久| 日韩欧美国产综合在线一区二区三区| 亚洲激情男女视频| 成人精品国产免费网站| 精品久久久久一区| 免费观看一级特黄欧美大片| 91精品91久久久中77777| 国产日本一区二区| 国产99久久久国产精品潘金| 欧美老年两性高潮| 久久精品国产免费看久久精品| 欧美性高清videossexo| 一区二区激情视频| 一本到不卡免费一区二区| 中文字幕一区二区三区四区| 成人网页在线观看| 国产午夜精品一区二区三区嫩草 | 国产午夜精品久久久久久免费视| 亚洲一级二级三级| 欧美在线一区二区| 悠悠色在线精品| 欧美日韩一区二区三区高清 | 91麻豆精品国产| 蜜臀va亚洲va欧美va天堂 | 一区二区三区四区不卡在线| 欧美美女直播网站| 蜜臀久久99精品久久久久宅男 | 精品久久人人做人人爰| 成人一区在线观看| 亚洲成av人片www| 精品国产在天天线2019| 91在线视频播放地址| 天天射综合影视| 国产精品美女一区二区三区| 欧美日韩一区二区三区高清| 亚洲成人免费观看| 中文字幕制服丝袜一区二区三区 | 不卡在线视频中文字幕| 日本大胆欧美人术艺术动态| 国产精品无人区| 91.com视频| 欧美亚洲国产bt| 在线亚洲免费视频| 国产99久久久国产精品潘金| 日本欧美肥老太交大片| 亚洲国产成人av网| 亚洲国产精品精华液2区45| 欧洲精品中文字幕| 在线区一区二视频| 亚洲一区二区视频在线观看| 国产精品三级在线观看| 亚洲日本中文字幕区| 国产色婷婷亚洲99精品小说| 欧美一区二区视频免费观看| 在线观看www91| 亚洲最色的网站| 极品尤物av久久免费看| 日韩国产欧美在线播放| 日韩精品欧美成人高清一区二区| 夜夜操天天操亚洲| 国产婷婷一区二区| 久久久久久综合| 久久综合色天天久久综合图片| 日韩区在线观看| 国产亚洲综合色| 亚洲资源中文字幕| 免费人成网站在线观看欧美高清| 午夜精品一区在线观看| 日韩不卡手机在线v区| 国产一区高清在线| 波多野结衣亚洲一区| 99久久婷婷国产综合精品电影| 777亚洲妇女| 欧美国产一区二区| 午夜精品久久久久影视| 激情国产一区二区| 99久久99久久精品国产片果冻| 国产精品亚洲视频| 91精品国产日韩91久久久久久| 精品处破学生在线二十三| 国产精品的网站| 另类中文字幕网| 欧美亚洲动漫制服丝袜| 国产视频亚洲色图| 污片在线观看一区二区| av电影天堂一区二区在线观看| 91麻豆精品91久久久久同性| 国产精品久久久久一区二区三区共| 日本午夜精品视频在线观看| 91免费观看在线| 国产精品少妇自拍| 国产福利电影一区二区三区| 欧美久久久影院| 一区二区三区在线看| 香蕉久久夜色精品国产使用方法| 在线观看av一区| 一区二区三区在线免费视频| 国产风韵犹存在线视精品| 欧美刺激脚交jootjob| 午夜国产精品一区| av电影天堂一区二区在线| 国产精品免费av| 国产麻豆精品在线观看| 国产精品久线观看视频| 91免费看视频| 亚洲欧美日韩国产综合在线| 欧美日韩国产小视频在线观看| 亚洲高清免费观看高清完整版在线观看| av激情成人网| 婷婷激情综合网| 日韩欧美亚洲国产另类| 国产一区二区在线看| 亚洲成人午夜电影| 日韩女优毛片在线| 成人黄色小视频| 午夜精品久久久久久久99水蜜桃| 日韩一区二区电影网| 91亚洲男人天堂| 日本美女一区二区| 亚洲男同1069视频| 精品久久久久一区| 欧美三区在线视频| 成人午夜激情在线| 蜜臀av性久久久久蜜臀aⅴ四虎| 久久久91精品国产一区二区三区| 在线观看成人免费视频| 99免费精品视频| 亚洲欧美激情小说另类| 中文字幕av资源一区| 精品国产1区二区| 91精品黄色片免费大全| 欧美精品自拍偷拍| 日韩午夜激情视频| 欧美丰满少妇xxxxx高潮对白 | 亚洲自拍另类综合| 亚洲男人的天堂av|