Skip to content

Commit 6ec7fbd

Browse files
committed
Reverting changes in QEID API
1 parent d17e475 commit 6ec7fbd

File tree

4 files changed

+16
-73
lines changed

4 files changed

+16
-73
lines changed

intel-sgx/dcap-artifact-retrieval/src/provisioning_client/azure.rs

Lines changed: 2 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -45,13 +45,12 @@ impl AzureProvisioningClientBuilder {
4545
let pck_certs = PckCertsApiNotSupported;
4646
let pck_cert = PckCertApi::new(self.api_version.clone());
4747
let pck_crl = PckCrlApi::new(self.api_version.clone());
48-
let qeid = QeIdApi::new(self.api_version.clone(), pcs::EnclaveIdentity::QE);
49-
let tdqeid = QeIdApi::new(self.api_version.clone(), pcs::EnclaveIdentity::TDQE);
48+
let qeid = QeIdApi::new(self.api_version.clone());
5049
let tcbinfo = TcbInfoApi::<platform::SGX>::new(self.api_version.clone());
5150
let tcbinfotdx = TcbInfoApi::<platform::TDX>::new(self.api_version.clone());
5251
let evaluation_data_numbers = TcbEvaluationDataNumbersApi::new(INTEL_BASE_URL.into());
5352
self.client_builder
54-
.build(pck_certs, pck_cert, pck_crl, qeid, tdqeid, tcbinfo, tcbinfotdx, evaluation_data_numbers, fetcher)
53+
.build(pck_certs, pck_cert, pck_crl, qeid, tcbinfo, tcbinfotdx, evaluation_data_numbers, fetcher)
5554
}
5655
}
5756

@@ -267,14 +266,6 @@ mod tests {
267266
}
268267
}
269268

270-
#[test]
271-
pub fn td_qe_identity() {
272-
let client = AzureProvisioningClientBuilder::new(PcsVersion::V4)
273-
.set_retry_timeout(TIME_RETRY_TIMEOUT)
274-
.build(reqwest_client());
275-
assert!(client.tdqe_identity(None).is_ok());
276-
}
277-
278269
#[test]
279270
pub fn test_pckcerts_with_fallback() {
280271
for api_version in [PcsVersion::V3, PcsVersion::V4] {

intel-sgx/dcap-artifact-retrieval/src/provisioning_client/intel.rs

Lines changed: 9 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -60,13 +60,12 @@ impl IntelProvisioningClientBuilder {
6060
let pck_certs = PckCertsApi::new(self.api_version.clone(), self.api_key.clone());
6161
let pck_cert = PckCertApi::new(self.api_version.clone(), self.api_key.clone());
6262
let pck_crl = PckCrlApi::new(self.api_version.clone());
63-
let qeid = QeIdApi::new(self.api_version.clone(), EnclaveIdentity::QE);
64-
let tdqeid = QeIdApi::new(self.api_version.clone(), EnclaveIdentity::TDQE);
63+
let qeid = QeIdApi::new(self.api_version.clone());
6564
let tcbinfo = TcbInfoApi::<platform::SGX>::new(self.api_version.clone());
6665
let tcbinfotdx = TcbInfoApi::<platform::TDX>::new(self.api_version.clone());
6766
let evaluation_data_numbers = TcbEvaluationDataNumbersApi::new(INTEL_BASE_URL.into());
6867
self.client_builder
69-
.build(pck_certs, pck_cert, pck_crl, qeid, tdqeid, tcbinfo, tcbinfotdx, evaluation_data_numbers, fetcher)
68+
.build(pck_certs, pck_cert, pck_crl, qeid, tcbinfo, tcbinfotdx, evaluation_data_numbers, fetcher)
7069
}
7170
}
7271

@@ -429,13 +428,12 @@ impl<'inp, T: PlatformTypeForTcbInfo<T>> ProvisioningServiceApi<'inp> for TcbInf
429428
}
430429

431430
pub struct QeIdApi {
432-
api_version: PcsVersion,
433-
enclave_identity_to_request: EnclaveIdentity
431+
api_version: PcsVersion
434432
}
435433

436434
impl QeIdApi {
437-
pub fn new(api_version: PcsVersion, enclave_identity_to_request: EnclaveIdentity) -> Self {
438-
QeIdApi { api_version, enclave_identity_to_request }
435+
pub fn new(api_version: PcsVersion) -> Self {
436+
QeIdApi { api_version }
439437
}
440438
}
441439

@@ -455,27 +453,16 @@ impl<'inp> ProvisioningServiceApi<'inp> for QeIdApi {
455453
type Output = QeIdentitySigned;
456454

457455
fn build_request(&self, input: &Self::Input) -> Result<(String, Vec<(String, String)>), Error> {
458-
let base_platform: &'static str = match self.enclave_identity_to_request {
459-
EnclaveIdentity::QE | EnclaveIdentity::QVE | EnclaveIdentity::QAE => "sgx",
460-
EnclaveIdentity::TDQE => "tdx",
461-
};
462-
463-
let enclave_type = match self.enclave_identity_to_request {
464-
EnclaveIdentity::QE | EnclaveIdentity::TDQE => "qe",
465-
EnclaveIdentity::QVE => "qve",
466-
EnclaveIdentity::QAE => "qae",
467-
};
468-
469456
let api_version = input.api_version as u8;
470457
let url = if let Some(tcb_evaluation_data_number) = input.tcb_evaluation_data_number {
471458
format!(
472-
"{}/{}/certification/v{}/{}/identity?tcbEvaluationDataNumber={}",
473-
INTEL_BASE_URL, base_platform, api_version, enclave_type, tcb_evaluation_data_number
459+
"{}/sgx/certification/v{}/qe/identity?tcbEvaluationDataNumber={}",
460+
INTEL_BASE_URL, api_version, tcb_evaluation_data_number
474461
)
475462
} else {
476463
format!(
477-
"{}/{}/certification/v{}/{}/identity?update=early",
478-
INTEL_BASE_URL, base_platform, api_version, enclave_type
464+
"{}/sgx/certification/v{}/qe/identity?update=early",
465+
INTEL_BASE_URL, api_version,
479466
)
480467
};
481468
Ok((url, Vec::new()))
@@ -1100,17 +1087,6 @@ mod tests {
11001087
}
11011088
}
11021089

1103-
#[test]
1104-
pub fn td_qe_identity() {
1105-
let mut intel_builder = IntelProvisioningClientBuilder::new(PcsVersion::V4)
1106-
.set_retry_timeout(TIME_RETRY_TIMEOUT);
1107-
1108-
let client = intel_builder.build(reqwest_client());
1109-
let qe_id = client.tdqe_identity(None).unwrap();
1110-
assert_eq!(qe_id.enclave_type(), EnclaveIdentity::TDQE);
1111-
assert!(qe_id.write_to_file(OUTPUT_TEST_DIR, WriteOptionsBuilder::new().build()).is_ok());
1112-
}
1113-
11141090
#[test]
11151091
pub fn qe_identity_cached() {
11161092
for api_version in [PcsVersion::V3, PcsVersion::V4] {

intel-sgx/dcap-artifact-retrieval/src/provisioning_client/mod.rs

Lines changed: 2 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -285,13 +285,12 @@ impl ClientBuilder {
285285
self
286286
}
287287

288-
pub(crate) fn build<PSS, PS, PC, QS, QDS, TS, TDS, ES, F>(
288+
pub(crate) fn build<PSS, PS, PC, QS, TS, TDS, ES, F>(
289289
self,
290290
pckcerts_service: PSS,
291291
pckcert_service: PS,
292292
pckcrl_service: PC,
293293
qeid_service: QS,
294-
tdqeid_service: QDS,
295294
tcbinfo_service: TS,
296295
tcbinfotdx_service: TDS,
297296
tcb_evaluation_data_numbers_service: ES,
@@ -302,7 +301,6 @@ impl ClientBuilder {
302301
PS: for<'a> PckCertService<'a> + Sync + Send + 'static,
303302
PC: for<'a> PckCrlService<'a> + Sync + Send + 'static,
304303
QS: for<'a> QeIdService<'a> + Sync + Send + 'static,
305-
QDS: for<'a> QeIdService<'a> + Sync + Send + 'static,
306304
TS: for<'a> TcbInfoService<'a, platform::SGX> + Sync + Send + 'static,
307305
TDS: for<'a> TcbInfoService<'a, platform::TDX> + Sync + Send + 'static,
308306
ES: for<'a> TcbEvaluationDataNumbersService<'a> + Sync + Send + 'static,
@@ -313,7 +311,6 @@ impl ClientBuilder {
313311
pckcert_service,
314312
pckcrl_service,
315313
qeid_service,
316-
tdqeid_service,
317314
tcbinfo_service,
318315
tcbinfotdx_service,
319316
tcb_evaluation_data_numbers_service,
@@ -475,20 +472,18 @@ pub struct Client<F: for<'a> Fetcher<'a>> {
475472
CachedService<PckCert<Unverified>, dyn for<'a> PckCertService<'a> + Sync + Send>,
476473
pckcrl_service: CachedService<PckCrl<Unverified>, dyn for<'a> PckCrlService<'a> + Sync + Send>,
477474
qeid_service: CachedService<QeIdentitySigned, dyn for<'a> QeIdService<'a> + Sync + Send>,
478-
tdqeid_service: CachedService<QeIdentitySigned, dyn for<'a> QeIdService<'a> + Sync + Send>,
479475
tcbinfo_service: CachedService<TcbInfo<platform::SGX>, dyn for<'a> TcbInfoService<'a, platform::SGX> + Sync + Send>,
480476
tcbinfotdx_service: CachedService<TcbInfo<platform::TDX>, dyn for<'a> TcbInfoService<'a, platform::TDX> + Sync + Send>,
481477
tcb_evaluation_data_numbers_service: CachedService<RawTcbEvaluationDataNumbers, dyn for<'a> TcbEvaluationDataNumbersService<'a> + Sync + Send>,
482478
fetcher: F,
483479
}
484480

485481
impl<F: for<'a> Fetcher<'a>> Client<F> {
486-
fn new<PSS, PS, PC, QS, QDS, TS, TDS, ES>(
482+
fn new<PSS, PS, PC, QS, TS, TDS, ES>(
487483
pckcerts_service: PSS,
488484
pckcert_service: PS,
489485
pckcrl_service: PC,
490486
qeid_service: QS,
491-
tdqeid_service: QDS,
492487
tcbinfo_service: TS,
493488
tcbinfotdx_service: TDS,
494489
tcb_evaluation_data_numbers_service: ES,
@@ -502,7 +497,6 @@ impl<F: for<'a> Fetcher<'a>> Client<F> {
502497
PS: for<'a> PckCertService<'a> + Sync + Send + 'static,
503498
PC: for<'a> PckCrlService<'a> + Sync + Send + 'static,
504499
QS: for<'a> QeIdService<'a> + Sync + Send + 'static,
505-
QDS: for<'a> QeIdService<'a> + Sync + Send + 'static,
506500
TS: for<'a> TcbInfoService<'a, platform::SGX> + Sync + Send + 'static,
507501
TDS: for<'a> TcbInfoService<'a, platform::TDX> + Sync + Send + 'static,
508502
ES: for<'a> TcbEvaluationDataNumbersService<'a> + Sync + Send + 'static
@@ -540,14 +534,6 @@ impl<F: for<'a> Fetcher<'a>> Client<F> {
540534
cache_capacity,
541535
cache_shelf_time,
542536
),
543-
tdqeid_service: CachedService::new(
544-
BackoffService::new(
545-
PcsService::new(Box::new(tdqeid_service)),
546-
retry_timeout.clone(),
547-
),
548-
cache_capacity,
549-
cache_shelf_time,
550-
),
551537
tcbinfo_service: CachedService::new(
552538
BackoffService::new(
553539
PcsService::new(Box::new(tcbinfo_service)),
@@ -597,8 +583,6 @@ pub trait ProvisioningClient {
597583

598584
fn qe_identity(&self, evaluation_data_number: Option<u16>) -> Result<QeIdentitySigned, Error>;
599585

600-
fn tdqe_identity(&self, evaluation_data_number: Option<u16>) -> Result<QeIdentitySigned, Error>;
601-
602586
/// Retrieve PCK certificates using `pckcerts()` and fallback to the
603587
/// following method if that's not supported:
604588
/// 1. Call `pckcert()` with PCK ID to get best available PCK cert.
@@ -726,11 +710,6 @@ impl<F: for<'a> Fetcher<'a>> ProvisioningClient for Client<F> {
726710
self.qeid_service.call_service(&self.fetcher, &input)
727711
}
728712

729-
fn tdqe_identity(&self, tcb_evaluation_data_number: Option<u16>) -> Result<QeIdentitySigned, Error> {
730-
let input = self.qeid_service.pcs_service().build_input(tcb_evaluation_data_number);
731-
self.tdqeid_service.call_service(&self.fetcher, &input)
732-
}
733-
734713
fn tcb_evaluation_data_numbers(&self) -> Result<RawTcbEvaluationDataNumbers, Error> {
735714
let input = self.tcb_evaluation_data_numbers_service.pcs_service().build_input();
736715
self.tcb_evaluation_data_numbers_service.call_service(&self.fetcher, &input)

intel-sgx/dcap-artifact-retrieval/src/provisioning_client/pccs.rs

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -51,13 +51,12 @@ impl PccsProvisioningClientBuilder {
5151
let pck_certs = PckCertsApiNotSupported;
5252
let pck_cert = PckCertApi::new(self.base_url.clone(), self.api_version);
5353
let pck_crl = PckCrlApi::new(self.base_url.clone(), self.api_version);
54-
let qeid = QeIdApi::new(self.base_url.clone(), self.api_version.clone(), EnclaveIdentity::QE);
55-
let tdqeid = QeIdApi::new(self.base_url.clone(), self.api_version.clone(), EnclaveIdentity::TDQE);
54+
let qeid = QeIdApi::new(self.base_url.clone(), self.api_version.clone());
5655
let tcbinfo = TcbInfoApi::<platform::SGX>::new(self.base_url.clone(), self.api_version);
5756
let tcbinfotdx = TcbInfoApi::<platform::TDX>::new(self.base_url.clone(), self.api_version);
5857
let evaluation_data_numbers = TcbEvaluationDataNumbersApi::new(self.base_url.clone());
5958
self.client_builder
60-
.build(pck_certs, pck_cert, pck_crl, qeid, tdqeid, tcbinfo, tcbinfotdx, evaluation_data_numbers, fetcher)
59+
.build(pck_certs, pck_cert, pck_crl, qeid, tcbinfo, tcbinfotdx, evaluation_data_numbers, fetcher)
6160
}
6261
}
6362

@@ -352,15 +351,13 @@ impl<'inp, T: PlatformTypeForTcbInfo<T>> ProvisioningServiceApi<'inp> for TcbInf
352351
pub struct QeIdApi {
353352
base_url: Cow<'static, str>,
354353
api_version: PcsVersion,
355-
enclave_identity_to_request: EnclaveIdentity
356354
}
357355

358356
impl QeIdApi {
359-
pub fn new(base_url: Cow<'static, str>, api_version: PcsVersion, enclave_identity_to_request: EnclaveIdentity) -> Self {
357+
pub fn new(base_url: Cow<'static, str>, api_version: PcsVersion) -> Self {
360358
QeIdApi {
361359
base_url,
362360
api_version,
363-
enclave_identity_to_request
364361
}
365362
}
366363
}

0 commit comments

Comments
 (0)