/* Licensed to the Apache Software Foundation (ASF) under one or more *contributorlicenseagreements.SeetheNOTICEfiledistributedwith *thisworkforadditionalinformationregardingcopyrightownership. *TheASFlicensesthisfiletoYouundertheApacheLicense,Version2.0 *(the"License");youmaynotusethisfileexceptincompliancewith *theLicense.YoumayobtainacopyoftheLicenseat * *http://www.apache.org/licenses/LICENSE-2.0 * *Unlessrequiredbyapplicablelaworagreedtoinwriting,software *distributedundertheLicenseisdistributedonan"ASIS"BASIS, *WITHOUTWARRANTIESORCONDITIONSOFANYKIND,eitherexpressorimplied. *SeetheLicenseforthespecificlanguagegoverningpermissionsand *limitationsundertheLicense.
*/
typedefenum {
MD_ACME_S_UNKNOWN, /* MD has not been analysed yet */
MD_ACME_S_REGISTERED, /* MD is registered at CA, but not more */
MD_ACME_S_TOS_ACCEPTED, /* Terms of Service were accepted by account holder */
MD_ACME_S_CHALLENGED, /* MD challenge information for all domains is known */
MD_ACME_S_VALIDATED, /* MD domains have been validated */
MD_ACME_S_CERTIFIED, /* MD has valid certificate */
MD_ACME_S_DENIED, /* MD domains (at least one) have been denied by CA */
} md_acme_state_t;
struct md_acme_t { constchar *url; /* directory url of the ACME service */ constchar *sname; /* short name for the service, not necessarily unique */
apr_pool_t *p; constchar *user_agent; constchar *proxy_url; constchar *ca_file;
constchar *acct_id; /* local storage id account was loaded from or NULL */ struct md_acme_acct_t *acct; /* account at ACME server to use for requests */ struct md_pkey_t *acct_key; /* private RSA key belonging to account */
int version; /* as detected from the server */ union { struct { /* obsolete */ constchar *new_authz; constchar *new_cert; constchar *new_reg; constchar *revoke_cert;
struct md_acme_req_t {
md_acme_t *acme; /* the ACME server to talk to */
apr_pool_t *p; /* pool for the request duration */
constchar *url; /* url to POST the request to */ constchar *method; /* HTTP method to use */ struct md_json_t *prot_fields; /* JWS protected fields */ struct md_json_t *req_json; /* JSON to be POSTed in request body */
apr_table_t *resp_hdrs; /* HTTP response headers */ struct md_json_t *resp_json; /* JSON response body received */
apr_status_t rv; /* status of request */
md_acme_req_init_cb *on_init; /* callback to initialize the request before submit */
md_acme_req_json_cb *on_json; /* callback on successful JSON response */
md_acme_req_res_cb *on_res; /* callback on generic HTTP response */
md_acme_req_err_cb *on_err; /* callback on encountered error */ int max_retries; /* how often this might be retried */ void *baton; /* userdata for callbacks */ struct md_result_t *result; /* result of this request */
};
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.