MCPcopy Create free account
hub / github.com/apache/httpd / init_store_file

Function init_store_file

modules/md/md_store_fs.c:110–130  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

108static void fs_unlock_global(md_store_t *store, apr_pool_t *p);
109
110static apr_status_t init_store_file(md_store_fs_t *s_fs, const char *fname,
111 apr_pool_t *p, apr_pool_t *ptemp)
112{
113 md_json_t *json = md_json_create(p);
114 const char *key64;
115 apr_status_t rv;
116
117 md_json_setn(MD_STORE_VERSION, json, MD_KEY_STORE, MD_KEY_VERSION, NULL);
118
119 md_data_pinit(&s_fs->key, FS_STORE_KLEN, p);
120 if (APR_SUCCESS != (rv = md_rand_bytes((unsigned char*)s_fs->key.data, s_fs->key.len, p))) {
121 return rv;
122 }
123
124 key64 = md_util_base64url_encode(&s_fs->key, ptemp);
125 md_json_sets(key64, json, MD_KEY_KEY, NULL);
126 rv = md_json_fcreatex(json, ptemp, MD_JSON_FMT_INDENT, fname, MD_FPROT_F_UONLY);
127 memset((char*)key64, 0, strlen(key64));
128
129 return rv;
130}
131
132static apr_status_t rename_pkey(void *baton, apr_pool_t *p, apr_pool_t *ptemp,
133 const char *dir, const char *name,

Callers 1

setup_store_fileFunction · 0.85

Calls 7

md_json_createFunction · 0.85
md_json_setnFunction · 0.85
md_data_pinitFunction · 0.85
md_rand_bytesFunction · 0.85
md_util_base64url_encodeFunction · 0.85
md_json_setsFunction · 0.85
md_json_fcreatexFunction · 0.85

Tested by

no test coverage detected