36 #ifdef WITH_COMPRESSION
48 const std::string NodeHandshakeExtension::TAG =
"NodeHandshakeExtension";
109 }
catch (std::exception&) { };
131 virtual ~BundleFilter() {};
146 return meta.
isIn(_filter);
150 } bundle_filter(purge);
160 storage.
get(bundle_filter, list);
162 for (dtn::storage::BundleResultList::const_iterator iter = list.begin(); iter != list.end(); ++iter)
176 (**this).setPurged(meta);
178 }
while (!list.empty());
179 }
catch (std::exception&) { };
184 _endpoint.query(eid);
208 _endpoint.removeFromBlacklist(n.
getEID());
212 }
catch (
const std::bad_cast&) { };
216 : _callback(callback)
218 AbstractWorker::initialize(
"routing");
221 NodeHandshakeExtension::HandshakeEndpoint::~HandshakeEndpoint()
225 void NodeHandshakeExtension::HandshakeEndpoint::callbackBundleReceived(
const Bundle &b)
227 _callback.processHandshake(b);
235 void NodeHandshakeExtension::HandshakeEndpoint::removeFromBlacklist(
const dtn::data::EID &eid)
238 _blacklist.erase(eid);
241 void NodeHandshakeExtension::HandshakeEndpoint::query(
const dtn::data::EID &origin)
253 #ifdef WITH_COMPRESSION
259 (*_callback).requestHandshake(origin, request);
267 req.source = getWorkerURI();
271 req.destination = origin;
322 (**this).responseHandshake(bundle.
source, handshake, response);
330 answer.
source = _endpoint.getWorkerURI();
356 #ifdef WITH_COMPRESSION
369 _endpoint.send(answer);
377 (**this).processHandshake(bundle.
source, handshake);