1
#include "dht/DHTModules.h"
6
struct DHTMessage theMessage;
8
int handleIncoming(struct DHTMessage* message, void* vcontext) {
9
int* context = (int*) vcontext;
10
if (message == &theMessage) {
21
struct DHTModule module = {
24
.handleIncoming = handleIncoming
26
struct DHTModule module2 = {
27
.name = "TestModule2",
29
.handleIncoming = handleIncoming
32
struct DHTModuleRegistry* reg = DHTModules_new();
33
DHTModules_register(&module, reg);
34
DHTModules_register(&module2, reg);
36
DHTModules_handleIncoming(&theMessage, reg);
38
/* These should be ignored. */
39
DHTModules_handleOutgoing(&theMessage, reg);
40
DHTModules_compareNodes((benc_bstr_t) {2, "id"},
41
(benc_bstr_t) {3, "id2"},
46
printf("message not received");
47
} else if (context == -2){
48
printf("wrong message received");
49
} else if (context2 == -1) {
50
printf("message not received by all handlers.");
51
} else if (context2 == -2) {
52
printf("wrong message received by second handler.");
61
return testInputHandler();