]>
Commit | Line | Data |
---|---|---|
1 | #include "trusts_newsearch.h" | |
2 | ||
3 | #include <stdio.h> | |
4 | #include <stdlib.h> | |
5 | ||
6 | void *tsns_thstartdate_exe(searchCtx *ctx, struct searchNode *thenode, void *theinput); | |
7 | void tsns_thstartdate_free(searchCtx *ctx, struct searchNode *thenode); | |
8 | ||
9 | struct searchNode *tsns_thstartdate_parse(searchCtx *ctx, int argc, char **argv) { | |
10 | struct searchNode *thenode; | |
11 | ||
12 | if (!(thenode=(struct searchNode *)malloc(sizeof (struct searchNode)))) { | |
13 | parseError = "malloc: could not allocate memory for this search."; | |
14 | return NULL; | |
15 | } | |
16 | ||
17 | thenode->returntype = RETURNTYPE_INT; | |
18 | thenode->localdata = NULL; | |
19 | thenode->exe = tsns_thstartdate_exe; | |
20 | thenode->free = tsns_thstartdate_free; | |
21 | ||
22 | return thenode; | |
23 | } | |
24 | ||
25 | void *tsns_thstartdate_exe(searchCtx *ctx, struct searchNode *thenode, void *theinput) { | |
26 | trusthost_t *th; | |
27 | patricia_node_t *node = (patricia_node_t *)theinput; | |
28 | ||
29 | if (ctx->searchcmd == reg_nodesearch) { | |
30 | if (node->exts[tgh_ext] != NULL) | |
31 | return (void *)(((trusthost_t *)node->exts[tgh_ext])->startdate); | |
32 | else | |
33 | return (void *)0; /* will cast to a FALSE */ | |
34 | } else if (ctx->searchcmd == reg_thsearch) { | |
35 | th = (trusthost_t *)theinput; | |
36 | return (void *)(th->startdate); | |
37 | } else { | |
38 | return NULL; | |
39 | } | |
40 | } | |
41 | ||
42 | void tsns_thstartdate_free(searchCtx *ctx, struct searchNode *thenode) { | |
43 | free(thenode); | |
44 | } |