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

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

?? icutils.h

?? IBE是一種非對稱密碼技術
?? H
字號:
/* Copyright 2003-2006, Voltage Security, all rights reserved.
 */

#include "vibe.h"
#include "environment.h"
#include "base.h"
#include "libctx.h"
#include "vcert.h"
#include "stringutil.h"

#ifndef _ICUTILS_H_
#define _ICUTILS_H_

#ifdef __cplusplus
extern "C" {
#endif

/* Converts buffer into 64 encoded buffer;
   @param out - output 64 encoded buffer; 
   @param outLen - lenght of the output in bytes;
   @param in - input buffer to be encoded;
   @param inLen - length of the input in bytes;
   @param oneLine - length on one line of input;
   @param libCtx - mem context;
   @return int - 0 success;
 */
int icBase64Encode (
   unsigned char **out,
   int *outLen,
   unsigned char *in,
   int inLen,
   int oneLine,
   VoltLibCtx *libCtx
   );

/* Converts buffer from 64 encoded buffer;
   @param out - output 64 decode buffer; 
   @param outLen - lenght of the output in bytes;
   @param in - input buffer to be encoded;
   @param inLen - length of the input in bytes;
   @param oneLine - length on one line of output;
   @param libCtx - mem context;
   @return int - 0 success;
 */
int icBase64Decode (
   unsigned char **out,
   int *outLen,
   unsigned char *in,
   int inLen,
   VoltLibCtx *libCtx
   );

/* Given the cert "object", get the common name. This function will
 * allocate the memory for the commonName (using the given libCtx) and
 * will return it as a NULL-terminated string.
 */
int icGetCNFromCertAlloc (
   VoltLibCtx *libCtx,
   Asn1X509Cert *cert,
   char **commonName
   );

int icGetDistrictFromCN (
   char *cn,
   char **district1,
   VoltLibCtx *libCtx
   );

/* Build a URL from the prefix, server, and address. The format arg
 * tells whether the three elements are complete or whether there is
 * more information embedded in the final URL. The value of format must
 * be one of the following.
 * <pre>
 * <code>
 *    VOLT_IC_URL
 *    VOLT_IC_URL_PARAMS
 *    VOLT_IC_URL_PARAMS_DEFAULT
 * </code>
 * </pre>
 * <p>This function will allocate the space for the resulting URL and
 * return that URL at the address given by result.
 * <p>This function will return the string with a NULL-terminated
 * character.
 */
int icBuildURLAlloc (
   VoltLibCtx *libCtx,
   unsigned int format,
   char *prefix,
   char *server,
   char *address,
   char **result
   );

#define VOLT_IC_URL          1
#define VOLT_IC_URL_PARAMS   2

#define VOLT_IC_URL_PARAMS_MIDDLE "/params/"
#define VOLT_IC_URL_PARAMS_MIDDLE_LEN 8
#define VOLT_IC_URL_PARAMS_END ".pem"
#define VOLT_IC_URL_PARAMS_END_LEN 4

/* Build a new string from the input string with the XML metacharacters
 * converted to the appropriate XML escape sequence. The characters that
 * will be converted are: '<', '>', '&', '"', and '\''. It's up to the
 * caller to free up the escaped string
 */
 
int icStringXMLEscapeAlloc(
  VoltLibCtx* libCtx,
  char* str,
  char** escapedStr
  );

/* Build a Server Request string. This will combine the requestData,
 * authTokens, id (Base64 encoded), and cert request (Base64 encoded)
 * into a single request string.
 * <p>If the certReq64 arg is NULL, this will form a key only request.
 * <p>This function will allocate the space for the resulting request
 * and return that request at the address given by result.
 * <p>This function will return the string with a NULL-terminated
 * character.
 */
int icBuildServerRequestAlloc (
   VoltLibCtx *libCtx,
   char *requestData,
   char *authTokens,
   char *id64,
   char *certReq64,
   char **result
   );

#define VOLT_IC_SERVER_REQ_PART_1  \
    "<vs:request xmlns:vs=\"http://www.voltage.com/xmlns/vspv1\">\n" \
    "  <vs:header>\n" \
    "    <vs:client version=\""
#define VOLT_IC_SERVER_REQ_PART_1_LEN  97
#define VOLT_IC_SERVER_REQ_PART_2 "\"/>\n"
#define VOLT_IC_SERVER_REQ_PART_2_LEN  4
#define VOLT_IC_SERVER_REQ_PART_3 \
    "  </vs:header>\n" \
    "  <vs:body>\n" \
    "    <vs:keyRequest>\n" \
    "      <vs:id>\n        "
#define VOLT_IC_SERVER_REQ_PART_3_LEN  69
#define VOLT_IC_SERVER_REQ_PART_4_REQ \
    "\n      </vs:id>\n" \
    "    </vs:keyRequest>\n" \
    "    <vs:pkcs10>\n      "
#define VOLT_IC_SERVER_REQ_PART_4_REQ_LEN  59
#define VOLT_IC_SERVER_REQ_PART_4_NO_REQ \
    "\n      </vs:id>\n" \
    "    </vs:keyRequest>\n"
#define VOLT_IC_SERVER_REQ_PART_4_NO_REQ_LEN  37
#define VOLT_IC_SERVER_REQ_PART_5_REQ \
    "\n    </vs:pkcs10>\n" \
    "  </vs:body>\n" \
    "</vs:request>\n"
#define VOLT_IC_SERVER_REQ_PART_5_REQ_LEN  45
#define VOLT_IC_SERVER_REQ_PART_5_NO_REQ \
    "  </vs:body>\n" \
    "</vs:request>\n"
#define VOLT_IC_SERVER_REQ_PART_5_NO_REQ_LEN  27

/* Returns 0, always succeeds.
 * This function does no arg checking, it is the responsibility of the
 * caller to pass in valid input and output buffers.
 */
int icSafeStrncpy (
   char *dest,
   char *src,
   int len,
   VoltLibCtx *libCtx
);

/* Replaces portions of the string.
 * The string at *str is the input string.
 * The function might have to "reallocate" if the replacement string is
 * longer than the original, so the address at *str might be different.
 * Returns 0 for success, nonzero error code.
 */
int icStrrepl (
   char **str,
   char *find,
   char *replace,
   VoltLibCtx *libCtx
);

int icStrprependalloc (
   char **str,
   char *pre,
   VoltLibCtx *libCtx
);

int icStrcatalloc (
   char **str,
   char *cat,
   VoltLibCtx *libCtx
);

int icStringlower (
   char *str,
   VoltLibCtx *libCtx
);

int icIsStringlower (
   char *str,
   VoltLibCtx *libCtx
);

int icTrim (
   char *str,
   VoltLibCtx *libCtx
);

int icXstricmpsafe (
   char *pat,
   char *str,
   VoltLibCtx *libCtx
);

#ifdef __cplusplus
}
#endif

#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区三区白人| 国产一区二区美女| 中文字幕av一区 二区| 精品国产免费视频| 日韩精品中文字幕在线不卡尤物| 91精品欧美福利在线观看| 欧美色图激情小说| 欧美系列亚洲系列| 欧美少妇xxx| 欧美日韩成人综合在线一区二区| 日本韩国欧美在线| 欧美挠脚心视频网站| 欧美巨大另类极品videosbest | 中文字幕一区在线| 成人免费在线播放视频| 亚洲精品亚洲人成人网| 亚洲国产aⅴ成人精品无吗| 午夜精品久久久久久| 蜜臀av一级做a爰片久久| 老司机免费视频一区二区三区| 国产精品资源站在线| 成人av电影免费观看| 91免费在线看| 欧美一区二区三区小说| 日韩欧美成人一区二区| 国产日韩av一区二区| 亚洲色图19p| 三级一区在线视频先锋| 国产原创一区二区三区| 91在线精品秘密一区二区| 5566中文字幕一区二区电影| 久久女同精品一区二区| 一区二区视频免费在线观看| 久久99精品久久久久久国产越南 | 日韩欧美一区在线| 欧美激情在线看| 日日欢夜夜爽一区| 国产成人精品免费| 欧美在线观看视频一区二区三区| 精品久久一二三区| 亚洲一区二区三区四区在线观看| 紧缚捆绑精品一区二区| 91视频在线观看| 日韩三级免费观看| 亚洲人成人一区二区在线观看| 久久av资源网| 欧美日韩二区三区| 自拍视频在线观看一区二区| 国产在线一区观看| 欧美影视一区在线| 亚洲欧洲精品一区二区精品久久久 | 日韩黄色免费电影| 国产精品18久久久久久久久久久久| 成人中文字幕电影| 这里只有精品视频在线观看| 日韩一区中文字幕| 激情文学综合网| 欧美日韩mp4| 亚洲你懂的在线视频| 国产福利一区二区三区视频在线| 日韩欧美一区二区不卡| 一区二区三区欧美日韩| 成人黄动漫网站免费app| 日韩精品一区二区三区老鸭窝| 香蕉加勒比综合久久| 日本韩国一区二区三区视频| 中文字幕一区二区三区乱码在线 | 国产欧美精品一区| 秋霞电影网一区二区| 欧美日韩一区二区三区四区五区| 亚洲欧美在线视频| 不卡一区在线观看| 国产精品丝袜一区| 国产很黄免费观看久久| 久久精品人人做人人综合| 久久国产精品99精品国产 | 欧美天天综合网| 亚洲天堂精品在线观看| aaa国产一区| 亚洲欧美国产高清| 91视频在线观看免费| 亚洲激情av在线| 欧美亚日韩国产aⅴ精品中极品| 亚洲精品视频在线看| 色偷偷久久一区二区三区| 亚洲另类春色校园小说| 91精品办公室少妇高潮对白| 亚洲一区二区三区四区在线| 91精品国产综合久久久久久久 | 色婷婷av一区二区三区之一色屋| 国产欧美一区二区三区在线看蜜臀| 国产精品夜夜嗨| 一区在线观看免费| 91国内精品野花午夜精品| 午夜精品久久久久久久| 欧美mv日韩mv| 91在线你懂得| 亚洲一区在线观看免费| 91精品国产综合久久久久久漫画| 精品一区二区三区欧美| 国产喷白浆一区二区三区| 91网上在线视频| 日本美女一区二区三区| 久久综合九色综合欧美亚洲| 99久久国产综合精品麻豆 | 精品国产亚洲在线| 国产精品一线二线三线精华| 亚洲美女屁股眼交| 欧美人与z0zoxxxx视频| 国产精品影视在线观看| 亚洲主播在线观看| 精品久久久久久久一区二区蜜臀| av一区二区不卡| 免费在线观看一区| 中文字幕中文字幕一区| 91精品欧美福利在线观看| 国产成人啪午夜精品网站男同| 亚洲国产毛片aaaaa无费看| 久久久亚洲国产美女国产盗摄| 在线观看欧美精品| 激情综合亚洲精品| 亚洲综合色噜噜狠狠| 久久久久国产精品麻豆| 欧美午夜不卡在线观看免费| 国产99久久久国产精品潘金| 亚洲成av人在线观看| 国产欧美精品国产国产专区| 欧美一区二区视频在线观看| 91久久一区二区| 国产高清成人在线| 免费不卡在线视频| 一区二区三区成人| 国产精品亲子乱子伦xxxx裸| 欧美成人综合网站| 91福利社在线观看| 成人免费毛片aaaaa**| 精品一区二区三区香蕉蜜桃| 香蕉乱码成人久久天堂爱免费| 亚洲精品视频免费观看| 国产人成一区二区三区影院| 精品乱码亚洲一区二区不卡| 欧美三区免费完整视频在线观看| 成人黄色电影在线| 国内偷窥港台综合视频在线播放| 香蕉成人伊视频在线观看| 亚洲一区视频在线| 亚洲欧洲国产专区| 国产精品乱码一区二三区小蝌蚪| 精品国产乱码久久久久久图片 | 成人性生交大片免费看中文| 久久99精品久久久久久国产越南 | 精品久久久久av影院| 欧美日韩精品一区二区三区| 在线观看视频一区二区| 在线观看国产91| 欧美系列在线观看| 欧美日韩综合不卡| 欧洲一区在线观看| 欧美亚洲一区二区在线观看| 91美女片黄在线观看91美女| 91看片淫黄大片一级在线观看| av在线一区二区三区| 日本精品一区二区三区四区的功能| 在线免费一区三区| 欧美日韩国产另类不卡| 欧美日韩国产综合一区二区三区 | 欧美一区二区在线不卡| 欧洲一区二区三区在线| 欧美在线高清视频| 欧美日韩国产免费一区二区| 国产精品久久久久三级| 国产精品三级av| 亚洲少妇30p| 亚洲五码中文字幕| 午夜精品福利在线| 久久精品99国产精品| 国产91精品久久久久久久网曝门| 99久久精品国产观看| 欧美久久久影院| 久久影院午夜论| 亚洲一区二区四区蜜桃| 秋霞av亚洲一区二区三| 国产精品中文字幕日韩精品 | 亚洲人成7777| 日韩和欧美一区二区三区| 国产美女主播视频一区| 成人99免费视频| 欧美日韩www| 国产精品入口麻豆原神| 亚洲丝袜自拍清纯另类| 日韩avvvv在线播放| 国产iv一区二区三区| 欧美三级日本三级少妇99| 久久久亚洲精品一区二区三区| 亚洲视频免费在线| 免费的成人av| 99久久99久久精品免费观看| 日韩视频免费观看高清完整版 | 亚洲精品亚洲人成人网在线播放| 欧美aaa在线|