From 520e7e785ac35ac15990fb4e8055e6999e646588 Mon Sep 17 00:00:00 2001 From: yawangwang Date: Thu, 17 Oct 2024 00:21:01 +0000 Subject: [PATCH] write TDCCEL related data to tmp dir --- launcher/agent/agent.go | 4 ++++ verifier/rest/rest.go | 14 ++++++++++++++ 2 files changed, 18 insertions(+) diff --git a/launcher/agent/agent.go b/launcher/agent/agent.go index 5bfa7948..dd866441 100644 --- a/launcher/agent/agent.go +++ b/launcher/agent/agent.go @@ -247,6 +247,10 @@ func (t *tdxAttestRoot) Attest(nonce []byte) (any, error) { var tdxNonce [tlabi.TdReportDataSize]byte copy(tdxNonce[:], nonce) + if err := os.WriteFile("/tmp/container_launcher/tdxnonce", tdxNonce[:], 0644); err != nil { + log.Printf("failed to write tdx nonce: %v", err) + } + rawQuote, err := tg.GetRawQuote(t.qp, tdxNonce) if err != nil { return nil, err diff --git a/verifier/rest/rest.go b/verifier/rest/rest.go index 561a4079..1231172f 100644 --- a/verifier/rest/rest.go +++ b/verifier/rest/rest.go @@ -6,6 +6,7 @@ import ( "encoding/base64" "fmt" "log" + "os" "strings" sabi "github.com/google/go-sev-guest/abi" @@ -244,6 +245,19 @@ func convertRequestToREST(request verifier.VerifyAttestationRequest) *confidenti CanonicalEventLog: request.TDCCELAttestation.CanonicalEventLog, }, } + + if err := os.WriteFile("/tmp/container_launcher/tdquote", request.TDCCELAttestation.TdQuote, 0644); err != nil { + log.Printf("failed to write tdquote to file: %v", err) + } + if err := os.WriteFile("/tmp/container_launcher/acpitable", request.TDCCELAttestation.CcelAcpiTable, 0644); err != nil { + log.Printf("failed to write tdquote to file: %v", err) + } + if err := os.WriteFile("/tmp/container_launcher/cceldata", request.TDCCELAttestation.CcelData, 0644); err != nil { + log.Printf("failed to write tdquote to file: %v", err) + } + if err := os.WriteFile("/tmp/container_launcher/cel", request.TDCCELAttestation.CanonicalEventLog, 0644); err != nil { + log.Printf("failed to write tdquote to file: %v", err) + } } return verifyReq