Skip to content

Commit

Permalink
reorg spdm_device_secret_lib_sample
Browse files Browse the repository at this point in the history
The original code is hard to maintain because we put so many features in one lib.c.

split lib.c to multiple smaller files.
rename cert.c to read_pub_cert.c

Only code move, zero code change.

Signed-off-by: Jiewen Yao <[email protected]>
  • Loading branch information
jyao1 committed Nov 27, 2024
1 parent 98ef964 commit f14b0e8
Show file tree
Hide file tree
Showing 16 changed files with 3,155 additions and 2,912 deletions.
15 changes: 13 additions & 2 deletions os_stub/spdm_device_secret_lib_sample/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,19 @@ target_include_directories(spdm_device_secret_lib_sample

target_sources(spdm_device_secret_lib_sample
PRIVATE
lib.c
cert.c
chal.c
csr.c
event.c
key_pair.c
meas.c
psk.c
read_priv_key_pem.c
read_priv_key_raw_data.c
read_pub_cert.c
read_pub_key_der.c
read_special_cert.c
set_cert.c
sign.c
)

if ((ARCH STREQUAL "arm") OR (ARCH STREQUAL "aarch64"))
Expand Down
75 changes: 75 additions & 0 deletions os_stub/spdm_device_secret_lib_sample/chal.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
/**
* Copyright Notice:
* Copyright 2024 DMTF. All rights reserved.
* License: BSD 3-Clause License. For full text see link: https://github.com/DMTF/libspdm/blob/main/LICENSE.md
**/

#include <stdarg.h>
#include <stddef.h>
#include <setjmp.h>
#include <stdint.h>
#include <stdlib.h>
#include <stdio.h>
#include <assert.h>
#include <string.h>

#include <base.h>
#include "library/memlib.h"
#include "spdm_device_secret_lib_internal.h"
#include "internal/libspdm_common_lib.h"

#if LIBSPDM_ENABLE_CAPABILITY_CHAL_CAP
size_t libspdm_secret_lib_challenge_opaque_data_size;

bool libspdm_challenge_opaque_data(
#if LIBSPDM_HAL_PASS_SPDM_CONTEXT
void *spdm_context,
#endif
spdm_version_number_t spdm_version,
uint8_t slot_id,
uint8_t *measurement_summary_hash,
size_t measurement_summary_hash_size,
void *opaque_data,
size_t *opaque_data_size)
{
size_t index;

LIBSPDM_ASSERT(libspdm_secret_lib_challenge_opaque_data_size <= *opaque_data_size);

*opaque_data_size = libspdm_secret_lib_challenge_opaque_data_size;

for (index = 0; index < *opaque_data_size; index++)
{
((uint8_t *)opaque_data)[index] = (uint8_t)index;
}

return true;
}
#endif /* LIBSPDM_ENABLE_CAPABILITY_CHAL_CAP */

#if LIBSPDM_ENABLE_CAPABILITY_CHAL_CAP
bool libspdm_encap_challenge_opaque_data(
#if LIBSPDM_HAL_PASS_SPDM_CONTEXT
void *spdm_context,
#endif
spdm_version_number_t spdm_version,
uint8_t slot_id,
uint8_t *measurement_summary_hash,
size_t measurement_summary_hash_size,
void *opaque_data,
size_t *opaque_data_size)
{
size_t index;

LIBSPDM_ASSERT(libspdm_secret_lib_challenge_opaque_data_size <= *opaque_data_size);

*opaque_data_size = libspdm_secret_lib_challenge_opaque_data_size;

for (index = 0; index < *opaque_data_size; index++)
{
((uint8_t *)opaque_data)[index] = (uint8_t)index;
}

return true;
}
#endif /* LIBSPDM_ENABLE_CAPABILITY_CHAL_CAP */
Loading

0 comments on commit f14b0e8

Please sign in to comment.