OpenDNSSEC-signer 2.1.13
Data Structures | Functions
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()

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

◆ 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 worker_context::clock_in, worker_context::engine, engine_struct::need_to_reload, rrset_sign(), engine_struct::signal_cond, engine_struct::signal_lock, worker_context::signq, engine_struct::taskq, and worker_context::worker.

◆ task_schedule_easy()

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