1 /*
2 * Copyright (c) 2021, Arm Limited and Contributors. All rights reserved.
3 *
4 * SPDX-License-Identifier: BSD-3-Clause
5 */
6
7 #include "null_store.h"
8 #include <protocols/service/psa/packed-c/status.h>
9 #include <stddef.h>
10
null_store_set(void * context,uint32_t client_id,uint64_t uid,size_t data_length,const void * p_data,uint32_t create_flags)11 static psa_status_t null_store_set(void *context,
12 uint32_t client_id,
13 uint64_t uid,
14 size_t data_length,
15 const void *p_data,
16 uint32_t create_flags)
17 {
18 (void)context;
19 (void)client_id;
20 (void)uid;
21 (void)data_length;
22 (void)p_data;
23 (void)create_flags;
24
25 return PSA_ERROR_STORAGE_FAILURE;
26 }
27
null_store_get(void * context,uint32_t client_id,uint64_t uid,size_t data_offset,size_t data_size,void * p_data,size_t * p_data_length)28 static psa_status_t null_store_get(void *context,
29 uint32_t client_id,
30 uint64_t uid,
31 size_t data_offset,
32 size_t data_size,
33 void *p_data,
34 size_t *p_data_length)
35 {
36 (void)context;
37 (void)client_id;
38 (void)uid;
39 (void)data_offset;
40 (void)data_size;
41 (void)p_data;
42 (void)p_data_length;
43
44 return PSA_ERROR_STORAGE_FAILURE;
45 }
46
null_store_get_info(void * context,uint32_t client_id,uint64_t uid,struct psa_storage_info_t * p_info)47 static psa_status_t null_store_get_info(void *context,
48 uint32_t client_id,
49 uint64_t uid,
50 struct psa_storage_info_t *p_info)
51 {
52 (void)context;
53 (void)client_id;
54 (void)uid;
55 (void)p_info;
56
57 return PSA_ERROR_STORAGE_FAILURE;
58 }
59
null_store_remove(void * context,uint32_t client_id,uint64_t uid)60 static psa_status_t null_store_remove(void *context,
61 uint32_t client_id,
62 uint64_t uid)
63 {
64 (void)context;
65 (void)client_id;
66 (void)uid;
67
68 return PSA_ERROR_STORAGE_FAILURE;
69 }
70
null_store_create(void * context,uint32_t client_id,uint64_t uid,size_t capacity,uint32_t create_flags)71 static psa_status_t null_store_create(void *context,
72 uint32_t client_id,
73 uint64_t uid,
74 size_t capacity,
75 uint32_t create_flags)
76 {
77 (void)context;
78 (void)client_id;
79 (void)uid;
80 (void)capacity;
81 (void)create_flags;
82
83 return PSA_ERROR_STORAGE_FAILURE;
84 }
85
null_store_set_extended(void * context,uint32_t client_id,uint64_t uid,size_t data_offset,size_t data_length,const void * p_data)86 static psa_status_t null_store_set_extended(void *context,
87 uint32_t client_id,
88 uint64_t uid,
89 size_t data_offset,
90 size_t data_length,
91 const void *p_data)
92 {
93 (void)context;
94 (void)client_id;
95 (void)uid;
96 (void)data_offset;
97 (void)data_length;
98 (void)p_data;
99
100 return PSA_ERROR_STORAGE_FAILURE;
101 }
102
null_store_get_support(void * context,uint32_t client_id)103 static uint32_t null_store_get_support(void *context,
104 uint32_t client_id)
105 {
106 (void)context;
107 (void)client_id;
108
109 return 0;
110 }
111
112
null_store_init(struct null_store * context)113 struct storage_backend *null_store_init(struct null_store *context)
114 {
115 static const struct storage_backend_interface interface =
116 {
117 null_store_set,
118 null_store_get,
119 null_store_get_info,
120 null_store_remove,
121 null_store_create,
122 null_store_set_extended,
123 null_store_get_support
124 };
125
126 context->backend.context = context;
127 context->backend.interface = &interface;
128
129 return &context->backend;
130 }
131
null_store_deinit(struct null_store * context)132 void null_store_deinit(struct null_store *context)
133 {
134 context->backend.context = NULL;
135 context->backend.interface = NULL;
136 }
137