OpenDNSSEC-signer  2.1.7
signertasks.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2009 NLNet Labs. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  * 1. Redistributions of source code must retain the above copyright
8  * notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  * notice, this list of conditions and the following disclaimer in the
11  * documentation and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
14  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
15  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16  * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
17  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
18  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
19  * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
20  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
21  * IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
22  * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
23  * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24  *
25  */
26 
27 #ifndef SIGNERTASKS_H
28 #define SIGNERTASKS_H
29 
30 #include "config.h"
31 #include <time.h>
32 
33 #include "scheduler/task.h"
34 #include "scheduler/fifoq.h"
35 #include "status.h"
36 #include "locks.h"
37 
40  worker_type* worker;
41  fifoq_type* signq;
42  time_t clock_in;
43 };
44 
45 extern void drudge(worker_type* worker);
46 extern 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);
47 
48 extern time_t do_readsignconf(task_type* task, const char* zonename, void* zonearg, void *contextarg);
49 extern time_t do_forcereadsignconf(task_type* task, const char* zonename, void* zonearg, void *contextarg);
50 extern time_t do_signzone(task_type* task, const char* zonename, void* zonearg, void *contextarg);
51 extern time_t do_readzone(task_type* task, const char* zonename, void* zonearg, void *contextarg);
52 extern time_t do_forcereadzone(task_type* task, const char* zonename, void* zonearg, void *contextarg);
53 extern time_t do_writezone(task_type* task, const char* zonename, void* zonearg, void *contextarg);
54 
55 #endif /* SIGNERTASKS_H */
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_forcereadzone(task_type *task, const char *zonename, void *zonearg, void *contextarg)
Definition: signertasks.c:388
time_t do_readzone(task_type *task, const char *zonename, void *zonearg, void *contextarg)
Definition: signertasks.c:343
void drudge(worker_type *worker)
Definition: signertasks.c:152
time_t do_forcereadsignconf(task_type *task, const char *zonename, void *zonearg, void *contextarg)
Definition: signertasks.c:239
time_t do_readsignconf(task_type *task, const char *zonename, void *zonearg, void *contextarg)
Definition: signertasks.c:209
time_t do_signzone(task_type *task, const char *zonename, void *zonearg, void *contextarg)
Definition: signertasks.c:268
time_t do_writezone(task_type *task, const char *zonename, void *zonearg, void *contextarg)
Definition: signertasks.c:426
worker_type * worker
Definition: signertasks.h:40
engine_type * engine
Definition: signertasks.h:39
fifoq_type * signq
Definition: signertasks.h:41
time_t clock_in
Definition: signertasks.h:42