--- a/servlib/bundling/BundleDaemon.cc Mon Aug 15 17:48:10 2011 +0100
+++ b/servlib/bundling/BundleDaemon.cc Mon Aug 15 18:14:59 2011 +0100
@@ -922,7 +922,8 @@
// If the even source is PEER or STORE,
// try to handle a BPQ block
- if ( event->source_ == EVENTSRC_PEER ||
+ if ( event->source_ == EVENTSRC_APP ||
+ event->source_ == EVENTSRC_PEER ||
event->source_ == EVENTSRC_STORE ||
event->source_ == EVENTSRC_FRAGMENTATION) {
@@ -2670,11 +2671,13 @@
event->daemon_only_ = true;
}
- } else if (bpq_block.kind() == BPQBlock::KIND_RESPONSE) {
+ } else if (bpq_block.kind() == BPQBlock::KIND_RESPONSE &&
+ event->source_ != EVENTSRC_APP) { //Skip over local responces
accept_bpq_response(bundle, &bpq_block, event->source_ != EVENTSRC_STORE);
} else {
- log_err_p("/dtn/daemon/bpq", "ERROR - BPQ Block: invalid kind %d", bpq_block.kind());
+ log_err_p("/dtn/daemon/bpq", "ERROR - BPQ Block: invalid kind %d",
+ bpq_block.kind());
return false;
}