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

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

?? der_encode_sequence_ex.c

?? 這是一個提供了各種加密算法的庫的源代碼
?? C
字號:
/* LibTomCrypt, modular cryptographic library -- Tom St Denis * * LibTomCrypt is a library that provides various cryptographic * algorithms in a highly modular and flexible manner. * * The library is free for all purposes without any express * guarantee it works. * * Tom St Denis, tomstdenis@gmail.com, http://libtomcrypt.com */#include "tomcrypt.h"#include <stdarg.h>/**  @file der_encode_sequence_ex.c  ASN.1 DER, encode a SEQUENCE, Tom St Denis*/#ifdef LTC_DER/**   Encode a SEQUENCE   @param list      The list of items to encode   @param inlen     The number of items in the list   @param out       [out] The destination    @param outlen    [in/out] The size of the output   @param type_of   LTC_ASN1_SEQUENCE or LTC_ASN1_SET/LTC_ASN1_SETOF   @return CRYPT_OK on success*/int der_encode_sequence_ex(ltc_asn1_list *list, unsigned long inlen,                           unsigned char *out,  unsigned long *outlen, int type_of) {   int           err, type;   unsigned long size, x, y, z, i;   void          *data;   LTC_ARGCHK(list    != NULL);   LTC_ARGCHK(out     != NULL);   LTC_ARGCHK(outlen  != NULL);   /* get size of output that will be required */   y = 0;   for (i = 0; i < inlen; i++) {       type = list[i].type;       size = list[i].size;       data = list[i].data;       if (type == LTC_ASN1_EOL) {           break;       }       switch (type) {            case LTC_ASN1_BOOLEAN:               if ((err = der_length_boolean(&x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_INTEGER:               if ((err = der_length_integer(data, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_SHORT_INTEGER:               if ((err = der_length_short_integer(*((unsigned long*)data), &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_BIT_STRING:               if ((err = der_length_bit_string(size, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_OCTET_STRING:               if ((err = der_length_octet_string(size, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_NULL:               y += 2;               break;           case LTC_ASN1_OBJECT_IDENTIFIER:               if ((err = der_length_object_identifier(data, size, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_IA5_STRING:               if ((err = der_length_ia5_string(data, size, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_PRINTABLE_STRING:               if ((err = der_length_printable_string(data, size, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_UTF8_STRING:               if ((err = der_length_utf8_string(data, size, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_UTCTIME:               if ((err = der_length_utctime(data, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;           case LTC_ASN1_SET:           case LTC_ASN1_SETOF:           case LTC_ASN1_SEQUENCE:               if ((err = der_length_sequence(data, size, &x)) != CRYPT_OK) {                  goto LBL_ERR;               }               y += x;               break;                     default:               err = CRYPT_INVALID_ARG;               goto LBL_ERR;       }   }   /* calc header size */   z = y;   if (y < 128) {      y += 2;   } else if (y < 256) {      /* 0x30 0x81 LL */      y += 3;   } else if (y < 65536UL) {      /* 0x30 0x82 LL LL */      y += 4;   } else if (y < 16777216UL) {      /* 0x30 0x83 LL LL LL */      y += 5;   } else {      err = CRYPT_INVALID_ARG;      goto LBL_ERR;   }   /* too big ? */   if (*outlen < y) {      *outlen = y;      err = CRYPT_BUFFER_OVERFLOW;      goto LBL_ERR;   }   /* store header */   x = 0;   out[x++] = (type_of == LTC_ASN1_SEQUENCE) ? 0x30 : 0x31;         if (z < 128) {      out[x++] = (unsigned char)z;   } else if (z < 256) {      out[x++] = 0x81;      out[x++] = (unsigned char)z;   } else if (z < 65536UL) {      out[x++] = 0x82;      out[x++] = (unsigned char)((z>>8UL)&255);      out[x++] = (unsigned char)(z&255);   } else if (z < 16777216UL) {      out[x++] = 0x83;      out[x++] = (unsigned char)((z>>16UL)&255);      out[x++] = (unsigned char)((z>>8UL)&255);      out[x++] = (unsigned char)(z&255);   }   /* store data */   *outlen -= x;   for (i = 0; i < inlen; i++) {       type = list[i].type;       size = list[i].size;       data = list[i].data;       if (type == LTC_ASN1_EOL) {           break;       }       switch (type) {            case LTC_ASN1_BOOLEAN:               z = *outlen;               if ((err = der_encode_boolean(*((int *)data), out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;                     case LTC_ASN1_INTEGER:               z = *outlen;               if ((err = der_encode_integer(data, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_SHORT_INTEGER:               z = *outlen;               if ((err = der_encode_short_integer(*((unsigned long*)data), out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_BIT_STRING:               z = *outlen;               if ((err = der_encode_bit_string(data, size, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_OCTET_STRING:               z = *outlen;               if ((err = der_encode_octet_string(data, size, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_NULL:               out[x++] = 0x05;               out[x++] = 0x00;               *outlen -= 2;               break;           case LTC_ASN1_OBJECT_IDENTIFIER:               z = *outlen;               if ((err = der_encode_object_identifier(data, size, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_IA5_STRING:               z = *outlen;               if ((err = der_encode_ia5_string(data, size, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;                     case LTC_ASN1_PRINTABLE_STRING:               z = *outlen;               if ((err = der_encode_printable_string(data, size, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_UTF8_STRING:               z = *outlen;               if ((err = der_encode_utf8_string(data, size, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_UTCTIME:               z = *outlen;               if ((err = der_encode_utctime(data, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_SET:               z = *outlen;               if ((err = der_encode_set(data, size, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_SETOF:               z = *outlen;               if ((err = der_encode_setof(data, size, out + x, &z)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;           case LTC_ASN1_SEQUENCE:               z = *outlen;               if ((err = der_encode_sequence_ex(data, size, out + x, &z, type)) != CRYPT_OK) {                  goto LBL_ERR;               }               x       += z;               *outlen -= z;               break;                      default:               err = CRYPT_INVALID_ARG;               goto LBL_ERR;       }   }   *outlen = x;   err = CRYPT_OK;   LBL_ERR:   return err;}#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品亚洲人成人网 | 91精品国产综合久久香蕉麻豆| 精品少妇一区二区三区日产乱码 | 日韩午夜电影在线观看| 亚洲九九爱视频| 国产精品一区二区你懂的| 欧美久久一二区| 亚洲特级片在线| 国产馆精品极品| 日韩午夜三级在线| 五月综合激情网| 在线看不卡av| 亚洲人妖av一区二区| 国产一区二区精品在线观看| 欧美精品 日韩| 亚洲精品久久嫩草网站秘色| 国产成人av自拍| 26uuu亚洲综合色欧美| 亚洲欧洲av在线| 成人一区二区视频| 精品国产91亚洲一区二区三区婷婷 | 欧美人伦禁忌dvd放荡欲情| 国产精品天美传媒| 国产一区二区网址| 国产亚洲欧美日韩日本| 久久不见久久见中文字幕免费| 91精品在线免费观看| 天堂av在线一区| 欧美色国产精品| 亚洲女人****多毛耸耸8| caoporm超碰国产精品| 中文一区在线播放| 99在线精品观看| 亚洲精品大片www| 欧美体内she精视频| 亚洲成人黄色小说| 911精品产国品一二三产区| 天天色图综合网| 日韩免费视频一区二区| 美女久久久精品| www国产精品av| 国产91精品免费| 国产精品久久看| 色哟哟一区二区| 亚洲成人精品一区二区| 欧美久久久一区| 精品系列免费在线观看| 久久精品一区四区| 9人人澡人人爽人人精品| 亚洲一区中文在线| 宅男噜噜噜66一区二区66| 久久黄色级2电影| 国产欧美一区二区精品久导航| 成人视屏免费看| 亚洲国产精品人人做人人爽| 欧美成人乱码一区二区三区| 国产成人夜色高潮福利影视| 亚洲另类春色国产| 欧美一级艳片视频免费观看| 国产综合成人久久大片91| 中文字幕一区二区三区蜜月| 91搞黄在线观看| 麻豆91精品视频| 亚洲欧洲99久久| 欧美精品久久99| 国产69精品久久99不卡| 亚洲444eee在线观看| 国产欧美日韩在线| 欧美日韩精品三区| 大胆欧美人体老妇| 蜜臀久久久久久久| 亚洲欧洲日产国码二区| 欧美丰满嫩嫩电影| 99久久免费精品高清特色大片| 日本亚洲天堂网| 亚洲欧美日韩一区二区 | 亚洲欧美日韩久久| 日韩精品一区二区三区蜜臀 | 亚洲国产成人porn| 国产免费观看久久| 欧美一区二区三区四区高清| 成人av电影观看| 麻豆精品一区二区综合av| 国产精品九色蝌蚪自拍| 欧美mv和日韩mv的网站| 在线精品视频小说1| 国产酒店精品激情| 美女视频一区在线观看| 亚洲精品视频在线看| 国产欧美精品一区| 欧美成人一区二区三区片免费| 欧美在线观看视频一区二区三区| 国产成人一区在线| 韩国三级在线一区| 丝袜美腿亚洲一区二区图片| 久久一二三国产| 日韩欧美一二区| 日本二三区不卡| 色成年激情久久综合| 成人美女在线观看| 成人性生交大合| 国产精品99精品久久免费| 免费在线欧美视频| 亚洲国产一区在线观看| 亚洲男帅同性gay1069| 精品国产一区二区三区不卡 | 国产成人精品免费网站| 狠狠狠色丁香婷婷综合久久五月| 亚洲精品视频在线观看网站| 亚洲日穴在线视频| 国产精品欧美综合在线| 国产视频一区在线播放| 欧美色图12p| 欧美日韩另类一区| 92精品国产成人观看免费| 成人av电影在线网| 国产精品自拍av| 国产精品一区二区果冻传媒| 亚洲观看高清完整版在线观看| 亚洲成人综合视频| 亚洲欧美影音先锋| 一区二区三区四区视频精品免费 | 一区二区久久久久| 国产精品电影一区二区三区| 亚洲私人影院在线观看| 国产欧美日韩不卡免费| 国产精品天美传媒沈樵| 日韩欧美一二区| 国产日韩欧美综合一区| 国产欧美日韩精品在线| 国产精品免费久久| 亚洲人成精品久久久久久| 亚洲三级电影网站| 天天免费综合色| 青青草精品视频| 国产成人午夜精品影院观看视频| 国内精品嫩模私拍在线| 91在线观看免费视频| 99久久精品国产观看| 欧美日韩国产中文| 日韩一区和二区| 国产精品午夜春色av| 国产精品久久777777| 天天色 色综合| 天堂影院一区二区| 国产91清纯白嫩初高中在线观看 | 久久国产精品99精品国产| 国产91富婆露脸刺激对白| www.欧美.com| 91精品国产欧美一区二区18| 日韩欧美一区在线观看| 国产精品黄色在线观看| 依依成人综合视频| 久久99精品久久久久久| 国产精品一区一区三区| 色噜噜狠狠色综合中国| 欧美成人三级在线| 中文字幕亚洲成人| 久久精品国产网站| 成人听书哪个软件好| 91精品国产高清一区二区三区 | 欧美精品一区二区三区高清aⅴ| 国产精品久久久久桃色tv| 奇米综合一区二区三区精品视频| 日韩在线一区二区| 高清不卡在线观看| 欧美综合欧美视频| 日韩亚洲国产中文字幕欧美| 久久精品日产第一区二区三区高清版 | 青青草国产成人99久久| 成人综合日日夜夜| 在线免费不卡电影| 久久久一区二区| 亚洲bt欧美bt精品777| 激情小说欧美图片| 日韩一区二区三区在线视频| 国产精品久久久久久久久免费丝袜| 麻豆国产欧美日韩综合精品二区| 91国偷自产一区二区开放时间| 精品少妇一区二区三区免费观看 | 2021久久国产精品不只是精品| 午夜精品久久久久久久久 | 美女一区二区在线观看| 欧美三级午夜理伦三级中视频| 久久久亚洲精品石原莉奈| 久久电影网电视剧免费观看| 色婷婷狠狠综合| 国产精品萝li| 亚洲一区二区三区影院| 国产成人日日夜夜| 久久一区二区三区四区| 手机精品视频在线观看| 欧美日韩免费高清一区色橹橹 | 中文字幕综合网| 国产在线日韩欧美| 欧美成人一区二区三区| 日韩在线一二三区| 欧美一区二区三区在线视频| 亚洲欧美国产三级| 在线观看亚洲精品|