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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? rpc_aik.c

?? TCG軟件棧 linux系統(tǒng)上使用 為可信應(yīng)用軟件提供和 TPM通信的 接口 其網(wǎng)站上有很多關(guān)于使用此軟件的測(cè)試用例
?? C
字號(hào):
/* * Licensed Materials - Property of IBM * * trousers - An open source TCG Software Stack * * (C) Copyright International Business Machines Corp. 2004-2006 * */#include <stdlib.h>#include <stdio.h>#include <syslog.h>#include <string.h>#include <netdb.h>#include "trousers/tss.h"#include "trousers_types.h"#include "tcs_tsp.h"#include "tcs_utils.h"#include "tcs_int_literals.h"#include "capabilities.h"#include "tcslog.h"#include "tcsd_wrap.h"#include "tcsd.h"#include "tcs_utils.h"#include "rpc_tcstp_tcs.h"TSS_RESULTtcs_wrap_MakeIdentity(struct tcsd_thread_data *data){	TCS_CONTEXT_HANDLE hContext;	TCPA_ENCAUTH identityAuth;	TCPA_CHOSENID_HASH privCAHash;	UINT32 idKeyInfoSize;	BYTE *idKeyInfo = NULL;	TPM_AUTH auth1, auth2;	TPM_AUTH *pSRKAuth, *pOwnerAuth;	UINT32 idKeySize;	BYTE *idKey = NULL;	UINT32 pcIDBindSize;	BYTE *prgbIDBind = NULL;	UINT32 pcECSize;	BYTE *prgbEC = NULL;	UINT32 pcPlatCredSize;	BYTE *prgbPlatCred = NULL;	UINT32 pcConfCredSize;	BYTE *prgbConfCred = NULL;	TSS_RESULT result;	int i;	if (getData(TCSD_PACKET_TYPE_UINT32, 0, &hContext, 0, &data->comm))		return TCSERR(TSS_E_INTERNAL_ERROR);	LogDebugFn("thread %zd context %x", THREAD_ID, hContext);	if (getData(TCSD_PACKET_TYPE_ENCAUTH, 1, &identityAuth, 0, &data->comm))		return TCSERR(TSS_E_INTERNAL_ERROR);	if (getData(TCSD_PACKET_TYPE_DIGEST, 2, &privCAHash, 0, &data->comm))		return TCSERR(TSS_E_INTERNAL_ERROR);	if (getData(TCSD_PACKET_TYPE_UINT32, 3, &idKeyInfoSize, 0, &data->comm))		return TCSERR(TSS_E_INTERNAL_ERROR);	idKeyInfo = (BYTE *) calloc(1, idKeyInfoSize);	if (idKeyInfo == NULL) {		LogError("malloc of %d bytes failed.", idKeyInfoSize);		return TCSERR(TSS_E_OUTOFMEMORY);	}	if (getData(TCSD_PACKET_TYPE_PBYTE, 4, idKeyInfo, idKeyInfoSize, &data->comm)) {		free(idKeyInfo);		return TCSERR(TSS_E_INTERNAL_ERROR);	}	if (getData(TCSD_PACKET_TYPE_AUTH, 5, &auth1, 0, &data->comm)) {		free(idKeyInfo);		return TCSERR(TSS_E_INTERNAL_ERROR);	}	result = getData(TCSD_PACKET_TYPE_AUTH, 6, &auth2, 0, &data->comm);	if (result == TSS_TCP_RPC_BAD_PACKET_TYPE) {		pOwnerAuth = &auth1;		pSRKAuth = NULL;	} else if (result) {		free(idKeyInfo);		return result;	} else {		pOwnerAuth = &auth2;		pSRKAuth = &auth1;	}	MUTEX_LOCK(tcsp_lock);	result = TCSP_MakeIdentity_Internal(hContext, identityAuth, privCAHash,				       idKeyInfoSize, idKeyInfo, pSRKAuth,				       pOwnerAuth, &idKeySize, &idKey,				       &pcIDBindSize, &prgbIDBind, &pcECSize,				       &prgbEC, &pcPlatCredSize, &prgbPlatCred,				       &pcConfCredSize, &prgbConfCred);	MUTEX_UNLOCK(tcsp_lock);	free(idKeyInfo);	if (result == TSS_SUCCESS) {		i = 0;		initData(&data->comm, 12);		if (pSRKAuth) {			if (setData(TCSD_PACKET_TYPE_AUTH, i++, pSRKAuth, 0, &data->comm))				goto internal_error;		}		if (setData(TCSD_PACKET_TYPE_AUTH, i++, pOwnerAuth, 0, &data->comm))			goto internal_error;		if (setData(TCSD_PACKET_TYPE_UINT32, i++, &idKeySize, 0, &data->comm))			goto internal_error;		if (setData(TCSD_PACKET_TYPE_PBYTE, i++, idKey, idKeySize, &data->comm))			goto internal_error;		if (setData(TCSD_PACKET_TYPE_UINT32, i++, &pcIDBindSize, 0, &data->comm))			goto internal_error;		if (setData(TCSD_PACKET_TYPE_PBYTE, i++, prgbIDBind, pcIDBindSize, &data->comm))			goto internal_error;		if (setData(TCSD_PACKET_TYPE_UINT32, i++, &pcECSize, 0, &data->comm))			goto internal_error;		if (setData(TCSD_PACKET_TYPE_PBYTE, i++, prgbEC, pcECSize, &data->comm))			goto internal_error;		if (setData(TCSD_PACKET_TYPE_UINT32, i++, &pcPlatCredSize, 0, &data->comm))			goto internal_error;		if (setData(TCSD_PACKET_TYPE_PBYTE, i++, prgbPlatCred, pcPlatCredSize, &data->comm))			goto internal_error;		if (setData(TCSD_PACKET_TYPE_UINT32, i++, &pcConfCredSize, 0, &data->comm))			goto internal_error;		if (setData(TCSD_PACKET_TYPE_PBYTE, i++, prgbConfCred, pcConfCredSize, &data->comm))			goto internal_error;		free(idKey);		free(prgbIDBind);		free(prgbEC);		free(prgbPlatCred);		free(prgbConfCred);	} else		initData(&data->comm, 0);	data->comm.hdr.u.result = result;	return TSS_SUCCESS;internal_error:	free(idKey);	free(prgbIDBind);	free(prgbEC);	free(prgbPlatCred);	free(prgbConfCred);	return TCSERR(TSS_E_INTERNAL_ERROR);}TSS_RESULTtcs_wrap_MakeIdentity2(struct tcsd_thread_data *data){	TCS_CONTEXT_HANDLE hContext;	TCPA_ENCAUTH identityAuth;	TCPA_CHOSENID_HASH privCAHash;	UINT32 idKeyInfoSize;	BYTE *idKeyInfo = NULL;	TPM_AUTH auth1, auth2;	TPM_AUTH *pSRKAuth, *pOwnerAuth;	UINT32 idKeySize;	BYTE *idKey = NULL;	UINT32 pcIDBindSize;	BYTE *prgbIDBind = NULL;	TSS_RESULT result;	int i;	if (getData(TCSD_PACKET_TYPE_UINT32, 0, &hContext, 0, &data->comm))		return TCSERR(TSS_E_INTERNAL_ERROR);	LogDebugFn("thread %zd context %x", THREAD_ID, hContext);	if (getData(TCSD_PACKET_TYPE_ENCAUTH, 1, &identityAuth, 0, &data->comm))		return TCSERR(TSS_E_INTERNAL_ERROR);	if (getData(TCSD_PACKET_TYPE_DIGEST, 2, &privCAHash, 0, &data->comm))		return TCSERR(TSS_E_INTERNAL_ERROR);	if (getData(TCSD_PACKET_TYPE_UINT32, 3, &idKeyInfoSize, 0, &data->comm))		return TCSERR(TSS_E_INTERNAL_ERROR);	idKeyInfo = (BYTE *) calloc(1, idKeyInfoSize);	if (idKeyInfo == NULL) {		LogError("malloc of %d bytes failed.", idKeyInfoSize);		return TCSERR(TSS_E_OUTOFMEMORY);	}	if (getData(TCSD_PACKET_TYPE_PBYTE, 4, idKeyInfo, idKeyInfoSize, &data->comm)) {		free(idKeyInfo);		return TCSERR(TSS_E_INTERNAL_ERROR);	}	if (getData(TCSD_PACKET_TYPE_AUTH, 5, &auth1, 0, &data->comm)) {		free(idKeyInfo);		return TCSERR(TSS_E_INTERNAL_ERROR);	}	result = getData(TCSD_PACKET_TYPE_AUTH, 6, &auth2, 0, &data->comm);	if (result == TSS_TCP_RPC_BAD_PACKET_TYPE) {		pOwnerAuth = &auth1;		pSRKAuth = NULL;	} else if (result) {		free(idKeyInfo);		return result;	} else {		pOwnerAuth = &auth2;		pSRKAuth = &auth1;	}	MUTEX_LOCK(tcsp_lock);	result = TCSP_MakeIdentity2_Internal(hContext, identityAuth, privCAHash, idKeyInfoSize,					     idKeyInfo, pSRKAuth, pOwnerAuth, &idKeySize, &idKey,					     &pcIDBindSize, &prgbIDBind);	MUTEX_UNLOCK(tcsp_lock);	free(idKeyInfo);	if (result == TSS_SUCCESS) {		i = 0;		initData(&data->comm, 6);		if (pSRKAuth) {			if (setData(TCSD_PACKET_TYPE_AUTH, i++, pSRKAuth, 0, &data->comm))				goto internal_error;		}		if (setData(TCSD_PACKET_TYPE_AUTH, i++, pOwnerAuth, 0, &data->comm))			goto internal_error;		if (setData(TCSD_PACKET_TYPE_UINT32, i++, &idKeySize, 0, &data->comm))			goto internal_error;		if (setData(TCSD_PACKET_TYPE_PBYTE, i++, idKey, idKeySize, &data->comm))			goto internal_error;		if (setData(TCSD_PACKET_TYPE_UINT32, i++, &pcIDBindSize, 0, &data->comm))			goto internal_error;		if (setData(TCSD_PACKET_TYPE_PBYTE, i++, prgbIDBind, pcIDBindSize, &data->comm))			goto internal_error;		free(idKey);		free(prgbIDBind);	} else		initData(&data->comm, 0);	data->comm.hdr.u.result = result;	return TSS_SUCCESS;internal_error:	free(idKey);	free(prgbIDBind);	return TCSERR(TSS_E_INTERNAL_ERROR);}TSS_RESULTtcs_wrap_ActivateIdentity(struct tcsd_thread_data *data){	TCS_CONTEXT_HANDLE hContext;	TCS_KEY_HANDLE idKeyHandle;	TPM_AUTH *pIdKeyAuth = NULL, *pOwnerAuth = NULL, auth1, auth2;	UINT32 SymmetricKeySize, blobSize;	BYTE *SymmetricKey, *blob;	TSS_RESULT result;	UINT32 i;	if (getData(TCSD_PACKET_TYPE_UINT32, 0, &hContext, 0, &data->comm))		return TCSERR(TSS_E_INTERNAL_ERROR);	LogDebugFn("thread %zd context %x", THREAD_ID, hContext);	if (getData(TCSD_PACKET_TYPE_UINT32, 1, &idKeyHandle, 0, &data->comm))		return TCSERR(TSS_E_INTERNAL_ERROR);	if (getData(TCSD_PACKET_TYPE_UINT32, 2, &blobSize, 0, &data->comm))		return TCSERR(TSS_E_INTERNAL_ERROR);	if ((blob = malloc(blobSize)) == NULL)		return TCSERR(TSS_E_OUTOFMEMORY);	if (getData(TCSD_PACKET_TYPE_PBYTE, 3, blob, blobSize, &data->comm)) {		free(blob);		return TCSERR(TSS_E_INTERNAL_ERROR);	}	if (getData(TCSD_PACKET_TYPE_AUTH, 4, &auth1, 0, &data->comm)) {		free(blob);		return TCSERR(TSS_E_INTERNAL_ERROR);	}	result = getData(TCSD_PACKET_TYPE_AUTH, 5, &auth2, 0, &data->comm);	if (result == TSS_TCP_RPC_BAD_PACKET_TYPE)		pOwnerAuth = &auth1;	else if (result) {		free(blob);		return result;	} else {		pIdKeyAuth = &auth1;		pOwnerAuth = &auth2;	}	MUTEX_LOCK(tcsp_lock);	result = TCSP_ActivateTPMIdentity_Internal(hContext, idKeyHandle, blobSize,						   blob, pIdKeyAuth, pOwnerAuth,						   &SymmetricKeySize,						   &SymmetricKey);	MUTEX_UNLOCK(tcsp_lock);	free(blob);	if (result == TSS_SUCCESS) {		i = 0;		initData(&data->comm, 4);		if (pIdKeyAuth) {			if (setData(TCSD_PACKET_TYPE_AUTH, i++, pIdKeyAuth, 0, &data->comm)) {				free(SymmetricKey);				return TCSERR(TSS_E_INTERNAL_ERROR);			}		}		if (setData(TCSD_PACKET_TYPE_AUTH, i++, pOwnerAuth, 0, &data->comm)) {			free(SymmetricKey);			return TCSERR(TSS_E_INTERNAL_ERROR);		}		if (setData(TCSD_PACKET_TYPE_UINT32, i++, &SymmetricKeySize, 0, &data->comm)) {			free(SymmetricKey);			return TCSERR(TSS_E_INTERNAL_ERROR);		}		if (setData(TCSD_PACKET_TYPE_PBYTE, i++, SymmetricKey, SymmetricKeySize, &data->comm)) {			free(SymmetricKey);			return TCSERR(TSS_E_INTERNAL_ERROR);		}		free(SymmetricKey);	} else		initData(&data->comm, 0);	data->comm.hdr.u.result = result;	return TSS_SUCCESS;}TSS_RESULTtcs_wrap_GetCredential(struct tcsd_thread_data *data){	TCS_CONTEXT_HANDLE hContext;	UINT32 CredType;	UINT32 CredAccessMode;	UINT32 CredSize;	BYTE *CredData = NULL;	TSS_RESULT result;	if (getData(TCSD_PACKET_TYPE_UINT32, 0, &hContext, 0, &data->comm))		return TCSERR(TSS_E_INTERNAL_ERROR);	if (getData(TCSD_PACKET_TYPE_UINT32, 1, &CredType, 0, &data->comm))		return TCSERR(TSS_E_INTERNAL_ERROR);	if (getData(TCSD_PACKET_TYPE_UINT32, 2, &CredAccessMode, 0, &data->comm))		return TCSERR(TSS_E_INTERNAL_ERROR);	LogDebugFn("thread %zd context %x", THREAD_ID, hContext);	result = TCS_GetCredential_Internal(hContext, CredType, CredAccessMode, 					    &CredSize, &CredData);	if (result == TSS_SUCCESS) {		initData(&data->comm, 2);		if (setData(TCSD_PACKET_TYPE_UINT32, 0, &CredSize, 0, &data->comm))			goto internal_error;		if (setData(TCSD_PACKET_TYPE_PBYTE, 1, CredData, CredSize, &data->comm))			goto internal_error;		free(CredData);	} else		initData(&data->comm, 0);	data->comm.hdr.u.result = result;	return TSS_SUCCESS;internal_error:	free(CredData);	return TCSERR(TSS_E_INTERNAL_ERROR);}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线视频亚洲一区| 久久亚洲二区三区| 一本到一区二区三区| av激情成人网| 国产91富婆露脸刺激对白| 丁香亚洲综合激情啪啪综合| 国产一区二区网址| 国产精品资源网站| 福利一区福利二区| www.亚洲色图| 日本韩国精品在线| 欧美无人高清视频在线观看| 欧美日韩亚洲国产综合| 欧美日韩一级片网站| 在线观看91av| 精品国产乱码久久久久久老虎| 精品少妇一区二区三区| 久久免费视频色| 国产精品久久久久影院| 亚洲欧洲精品天堂一级| 一级女性全黄久久生活片免费| 亚洲综合一二三区| 日本不卡视频在线观看| 精品在线一区二区| 不卡在线视频中文字幕| 91久久线看在观草草青青| 欧美日韩第一区日日骚| 日韩一区二区三区观看| 久久久久一区二区三区四区| 国产精品久久久爽爽爽麻豆色哟哟| 一区二区三区四区在线播放| 亚洲成人先锋电影| 激情综合色丁香一区二区| 国产成人日日夜夜| 在线观看av一区| 91精品国产丝袜白色高跟鞋| 久久久久久久综合日本| 综合久久一区二区三区| 亚洲五码中文字幕| 美腿丝袜一区二区三区| 成人app在线观看| 欧美日本在线视频| 久久久美女艺术照精彩视频福利播放| 国产精品久久久久久久久免费桃花 | 国产激情偷乱视频一区二区三区| 99热99精品| 日韩一区二区三区视频| 综合色天天鬼久久鬼色| 麻豆精品新av中文字幕| 97se亚洲国产综合自在线观| 91精品婷婷国产综合久久 | 国模一区二区三区白浆| 99久久婷婷国产| 欧美一区二区三区喷汁尤物| 国产欧美久久久精品影院| 亚洲电影一区二区三区| 国产91富婆露脸刺激对白 | 亚洲一区在线看| 韩国三级电影一区二区| 欧美在线免费观看亚洲| 久久精品视频免费| 午夜电影一区二区| 99re在线视频这里只有精品| 日韩精品中文字幕在线一区| 一区2区3区在线看| 成人爱爱电影网址| 精品国产乱码久久久久久夜甘婷婷| 一区二区三区欧美在线观看| 国产福利一区在线| 欧美一卡在线观看| 一区二区三区在线观看国产| 丁香网亚洲国际| 日韩免费看的电影| 五月婷婷综合在线| 91麻豆免费看片| 欧美激情一区二区| 韩国精品在线观看| 日韩欧美一级片| 婷婷综合五月天| 色94色欧美sute亚洲线路一久| 久久精品欧美一区二区三区麻豆| 日本视频一区二区三区| 在线看不卡av| 1000部国产精品成人观看| 国产精品影视网| 欧美一区二区三区免费在线看| 伊人色综合久久天天人手人婷| 国产成人免费在线视频| 久久人人97超碰com| 麻豆精品新av中文字幕| 91精品国产综合久久久蜜臀图片 | 玖玖九九国产精品| 欧美日韩国产高清一区二区三区 | 91精品国产免费久久综合| 一区二区激情视频| 色久优优欧美色久优优| 中文字幕一区免费在线观看| 国产精品99精品久久免费| 欧美sm美女调教| 奇米一区二区三区av| 7777女厕盗摄久久久| 亚洲国产cao| 欧美日韩亚州综合| 午夜欧美电影在线观看| 欧美疯狂做受xxxx富婆| 午夜精品福利视频网站| 在线成人高清不卡| 美女在线一区二区| 精品国产伦一区二区三区观看方式| 久久国产麻豆精品| 久久亚洲综合色| 国产成人在线视频网址| 亚洲国产精品二十页| 成人午夜电影网站| 日韩美女精品在线| 91黄色小视频| 午夜精品影院在线观看| 欧美一区二区三区播放老司机| 免费视频最近日韩| xf在线a精品一区二区视频网站| 国产超碰在线一区| 亚洲欧洲在线观看av| 欧洲亚洲精品在线| 天堂资源在线中文精品| 日韩欧美一级二级三级久久久 | 欧美一区二区国产| 国内精品伊人久久久久影院对白| 久久精品人人爽人人爽| 91美女蜜桃在线| 奇米一区二区三区| 欧美国产成人精品| 日本一区二区三区四区| 成人国产亚洲欧美成人综合网| 亚洲色图一区二区| 88在线观看91蜜桃国自产| 久久99国产精品久久99| 国产日本欧美一区二区| 99久久国产综合色|国产精品| 亚洲午夜电影在线| 精品日韩成人av| 97se亚洲国产综合自在线不卡| 亚洲制服欧美中文字幕中文字幕| 91精品免费在线| 成人免费高清在线| 性做久久久久久| 国产农村妇女毛片精品久久麻豆| 色噜噜狠狠成人中文综合| 极品少妇xxxx偷拍精品少妇| 国产精品福利在线播放| 欧美精品三级日韩久久| 国产精品69毛片高清亚洲| 伊人婷婷欧美激情| 精品国产一区二区三区久久影院| jlzzjlzz国产精品久久| 日韩福利视频网| 国产精品美女久久久久久| 欧美视频一区二区三区在线观看| 激情六月婷婷综合| 一区二区三区**美女毛片| 精品欧美久久久| 在线观看国产一区二区| 国产福利精品导航| 日韩精品视频网| 亚洲图片另类小说| 久久综合九色综合97婷婷| 欧美自拍丝袜亚洲| 国产91丝袜在线播放0| 日韩精品视频网站| 亚洲美女一区二区三区| 久久综合成人精品亚洲另类欧美 | 有码一区二区三区| 久久久久久久久久久久久女国产乱| 欧美亚洲综合色| 成人国产精品免费| 国产精品夜夜爽| 视频在线在亚洲| 亚洲伦理在线免费看| 国产亚洲精品7777| 日韩精品综合一本久道在线视频| 在线观看日产精品| 不卡免费追剧大全电视剧网站| 久久精品国产在热久久| 亚洲一区二区三区影院| 亚洲欧洲av一区二区三区久久| 久久久久久电影| 欧美xfplay| 3751色影院一区二区三区| 在线日韩一区二区| 色综合久久综合中文综合网| 国产成人99久久亚洲综合精品| 韩国欧美国产一区| 久久66热偷产精品| 奇米综合一区二区三区精品视频| 亚洲成人精品一区| 亚洲五码中文字幕| 亚洲一区二区三区免费视频| 亚洲色图第一区| 亚洲欧美日韩在线不卡| 国产精品视频看| 国产精品久久久久久久久免费丝袜 |