76 result->activity = activity;
101 const char *problem,
const char *detail,
112 const char *problem,
const char *
fmt, ...)
140 result->ready_at = ready_at;
175 if (
result->ready_at > 0) {
179 if (
result->subproblems) {
187 if (
s1 ==
s2)
return 0;
196 if (
r1 ==
r2)
return 0;
199 if ((
n =
r1->status -
r2->status))
return n;
203 return (
int)(
r1->ready_at -
r2->ready_at);
211 dest->activity =
src->activity;
212 dest->ready_at =
src->ready_at;
213 dest->subproblems =
src->subproblems;
222 dest->ready_at =
src->ready_at;
230 const char *
sep =
"";
231 const char *msg =
"";
249 if (
result->subproblems) {
APR general purpose library routines.
apr_size_t const unsigned char unsigned int unsigned int d
apr_array_header_t ** result
apr_vformatter_buff_t const char * fmt
apr_vformatter_buff_t const char va_list ap
#define apr_pcalloc(p, size)
#define APR_RFC822_DATE_LEN
#define MD_KEY_VALID_FROM
#define MD_KEY_SUBPROBLEMS
md_json_t * md_json_create(apr_pool_t *pool)
md_json_t * md_json_dupj(apr_pool_t *p, const md_json_t *json,...)
apr_status_t md_json_sets(const char *value, md_json_t *json,...)
long md_json_getl(const md_json_t *json,...)
md_json_t * md_json_clone(apr_pool_t *pool, const md_json_t *json)
apr_status_t md_json_setj(const md_json_t *value, md_json_t *json,...)
const char * md_json_dups(apr_pool_t *p, const md_json_t *json,...)
apr_status_t md_json_setl(long value, md_json_t *json,...)
const char * md_json_writep(const md_json_t *json, apr_pool_t *p, md_json_fmt_t fmt)
void md_log_perror(const char *file, int line, md_log_level_t level, apr_status_t rv, apr_pool_t *p, const char *fmt,...)
int md_log_is_level(apr_pool_t *p, md_log_level_t level)
md_result_t * md_result_from_json(const struct md_json_t *json, apr_pool_t *p)
void md_result_activity_printf(md_result_t *result, const char *fmt,...)
struct md_json_t * md_result_to_json(const md_result_t *result, apr_pool_t *p)
void md_result_on_holler(md_result_t *result, md_result_holler_cb *cb, void *data)
void md_result_activity_setn(md_result_t *result, const char *activity)
static int str_cmp(const char *s1, const char *s2)
void md_result_dup(md_result_t *dest, const md_result_t *src)
apr_status_t md_result_raise(md_result_t *result, const char *event, apr_pool_t *p)
void md_result_on_change(md_result_t *result, md_result_change_cb *cb, void *data)
void md_result_printf(md_result_t *result, apr_status_t status, const char *fmt,...)
void md_result_problem_set(md_result_t *result, apr_status_t status, const char *problem, const char *detail, const md_json_t *subproblems)
void md_result_assign(md_result_t *dest, const md_result_t *src)
static const char * dup_trim(apr_pool_t *p, const char *s)
md_result_t * md_result_make(apr_pool_t *p, apr_status_t status)
void md_result_reset(md_result_t *result)
void md_result_activity_set(md_result_t *result, const char *activity)
static void on_change(md_result_t *result)
int md_result_cmp(const md_result_t *r1, const md_result_t *r2)
void md_result_log(md_result_t *result, unsigned int level)
void md_result_problem_printf(md_result_t *result, apr_status_t status, const char *problem, const char *fmt,...)
void md_result_set(md_result_t *result, apr_status_t status, const char *detail)
md_result_t * md_result_md_make(apr_pool_t *p, const char *md_name)
void md_result_delay_set(md_result_t *result, apr_time_t ready_at)
void md_result_holler(md_result_t *result, const char *event, apr_pool_t *p)
void md_result_on_raise(md_result_t *result, md_result_raise_cb *cb, void *data)
void md_result_change_cb(md_result_t *result, void *data)
void md_result_holler_cb(md_result_t *result, void *data, const char *event, apr_pool_t *p)
apr_status_t md_result_raise_cb(md_result_t *result, void *data, const char *event, apr_pool_t *p)
apr_status_t apr_rfc822_date(char *date_str, apr_time_t t)
typedef int(WSAAPI *apr_winapi_fpt_WSAPoll)(IN OUT LPWSAPOLLFD fdArray