Apache2
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
md_acme_order.h
Go to the documentation of this file.
1 /* Copyright 2019 greenbytes GmbH (https://www.greenbytes.de)
2  *
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  * http://www.apache.org/licenses/LICENSE-2.0
8 
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #ifndef md_acme_order_h
17 #define md_acme_order_h
18 
19 struct md_json_t;
20 struct md_result_t;
21 
23 
24 typedef enum {
31 
34  const char *url;
38  struct md_json_t *json;
39  const char *finalize;
40  const char *certificate;
41 };
42 
43 #define MD_FN_ORDER "order.json"
44 
45 /**************************************************************************************************/
46 
48 
49 apr_status_t md_acme_order_add(md_acme_order_t *order, const char *authz_url);
50 apr_status_t md_acme_order_remove(md_acme_order_t *order, const char *authz_url);
51 
54 
56  const char *md_name, md_acme_order_t **pauthz_set,
57  apr_pool_t *p);
59  md_store_group_t group, const char *md_name,
60  md_acme_order_t *authz_set, int create);
61 
63  md_store_group_t group, const char *md_name,
64  apr_table_t *env);
65 
66 
68  apr_array_header_t *challenge_types,
69  md_store_t *store, const md_t *md,
70  apr_table_t *env, struct md_result_t *result,
71  apr_pool_t *p);
72 
74  const md_t *md, apr_interval_time_t timeout,
75  struct md_result_t *result, apr_pool_t *p);
76 
77 /* ACMEv2 only ************************************************************************************/
78 
80  const char *name, struct apr_array_header_t *domains);
81 
83  struct md_result_t *result, apr_pool_t *p);
84 
86  const md_t *md, apr_interval_time_t timeout,
87  struct md_result_t *result, apr_pool_t *p);
89  const md_t *md, apr_interval_time_t timeout,
90  struct md_result_t *result, apr_pool_t *p);
91 
92 #endif /* md_acme_order_h */
Definition: md.h:74
Definition: md_store.h:278
md_acme_order_t * md_acme_order_create(apr_pool_t *p)
Definition: md_acme_order.h:27
struct md_json_t md_json_t
Definition: md_json.h:29
Definition: apr_tables.h:62
apr_status_t md_acme_order_update(md_acme_order_t *order, md_acme_t *acme, struct md_result_t *result, apr_pool_t *p)
md_store_group_t
Definition: md_store.h:61
apr_status_t md_acme_order_remove(md_acme_order_t *order, const char *authz_url)
apr_status_t md_acme_order_start_challenges(md_acme_order_t *order, md_acme_t *acme, apr_array_header_t *challenge_types, md_store_t *store, const md_t *md, apr_table_t *env, struct md_result_t *result, apr_pool_t *p)
md_acme_order_t * md_acme_order_from_json(struct md_json_t *json, apr_pool_t *p)
md_acme_order_st status
Definition: md_acme_order.h:35
md_acme_order_st
Definition: md_acme_order.h:24
Definition: md_acme_order.h:29
apr_status_t md_acme_order_await_ready(md_acme_order_t *order, md_acme_t *acme, const md_t *md, apr_interval_time_t timeout, struct md_result_t *result, apr_pool_t *p)
Definition: md_acme_order.h:25
apr_int64_t apr_interval_time_t
Definition: apr_time.h:55
Definition: md_acme_order.h:28
struct apr_array_header_t * authz_urls
Definition: md_acme_order.h:36
apr_status_t md_acme_order_load(struct md_store_t *store, md_store_group_t group, const char *md_name, md_acme_order_t **pauthz_set, apr_pool_t *p)
struct apr_array_header_t * challenge_setups
Definition: md_acme_order.h:37
apr_status_t md_acme_order_register(md_acme_order_t **porder, md_acme_t *acme, apr_pool_t *p, const char *name, struct apr_array_header_t *domains)
const char const dav_liveprop_group * group
Definition: mod_dav.h:1048
Definition: md_acme.h:94
const char * url
Definition: md_acme_order.h:34
apr_status_t md_acme_order_purge(struct md_store_t *store, apr_pool_t *p, md_store_group_t group, const char *md_name, apr_table_t *env)
apr_status_t md_acme_order_add(md_acme_order_t *order, const char *authz_url)
Definition: md_acme_order.h:32
Definition: md_result.h:27
apr_status_t md_acme_order_monitor_authzs(md_acme_order_t *order, md_acme_t *acme, const md_t *md, apr_interval_time_t timeout, struct md_result_t *result, apr_pool_t *p)
apr_pool_t * p
apr_status_t md_acme_order_save(struct md_store_t *store, apr_pool_t *p, md_store_group_t group, const char *md_name, md_acme_order_t *authz_set, int create)
struct md_json_t * json
Definition: md_acme_order.h:38
const char * finalize
Definition: md_acme_order.h:39
apr_status_t md_acme_order_await_valid(md_acme_order_t *order, md_acme_t *acme, const md_t *md, apr_interval_time_t timeout, struct md_result_t *result, apr_pool_t *p)
struct apr_table_t apr_table_t
Definition: apr_tables.h:56
const char * name
Definition: mod_dav.h:805
struct apr_pool_t apr_pool_t
Definition: apr_pools.h:60
int apr_status_t
Definition: apr_errno.h:44
apr_pool_t * p
Definition: md_acme_order.h:33
const char * certificate
Definition: md_acme_order.h:40
struct md_json_t * md_acme_order_to_json(md_acme_order_t *set, apr_pool_t *p)
Definition: md_acme_order.h:26