OpenDNSSEC-signer 2.1.13
signertasks.h File Reference
#include "config.h"
#include <time.h>
#include "scheduler/task.h"
#include "scheduler/fifoq.h"
#include "status.h"
#include "locks.h"

Go to the source code of this file.

Data Structures

struct  worker_context

Functions

void drudge (worker_type *worker)
void task_schedule_easy (const char *zonename, task_id class, task_id type, time_t(*fn)(task_type *, const char *, void *, void *), void *, time_t time)
time_t do_readsignconf (task_type *task, const char *zonename, void *zonearg, void *contextarg)
time_t do_forcereadsignconf (task_type *task, const char *zonename, void *zonearg, void *contextarg)
time_t do_signzone (task_type *task, const char *zonename, void *zonearg, void *contextarg)
time_t do_readzone (task_type *task, const char *zonename, void *zonearg, void *contextarg)
time_t do_forcereadzone (task_type *task, const char *zonename, void *zonearg, void *contextarg)
time_t do_writezone (task_type *task, const char *zonename, void *zonearg, void *contextarg)

Function Documentation

◆ do_forcereadsignconf()

time_t do_forcereadsignconf ( task_type * task,
const char * zonename,
void * zonearg,
void * contextarg )
extern

◆ do_forcereadzone()

time_t do_forcereadzone ( task_type * task,
const char * zonename,
void * zonearg,
void * contextarg )
extern

◆ do_readsignconf()

time_t do_readsignconf ( task_type * task,
const char * zonename,
void * zonearg,
void * contextarg )
extern

◆ do_readzone()

time_t do_readzone ( task_type * task,
const char * zonename,
void * zonearg,
void * contextarg )
extern

◆ do_signzone()

◆ do_writezone()

time_t do_writezone ( task_type * task,
const char * zonename,
void * zonearg,
void * contextarg )
extern

◆ drudge()

void drudge ( worker_type * worker)
extern

Apparently the queue is empty. Wait until new work is queued. The drudger will release the signq lock while sleeping and will automatically grab the lock when the threshold is reached. Threshold is at 1 and MAX (after a number of tries).

Definition at line 152 of file signertasks.c.

References rrset_sign(), worker_context::signq, and worker_context::worker.

◆ task_schedule_easy()

void task_schedule_easy ( const char * zonename,
task_id class,
task_id type,
time_t(* fn )(task_type *, const char *, void *, void *),
void * ,
time_t time )
extern