00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef _IPTUNNEL_H_
00018 #define _IPTUNNEL_H_
00019
00020 #include <oasys/debug/Log.h>
00021
00022 #include <dtn_api.h>
00023 #include <APIBundleQueue.h>
00024
00025 namespace dtntunnel {
00026
00030 class IPTunnel : public oasys::Logger {
00031 public:
00033 IPTunnel(const char* classname, const char* logpath)
00034 : Logger(classname, "%s", logpath) {}
00035
00037 virtual ~IPTunnel() {}
00038
00040 virtual void add_listener(in_addr_t listen_addr,
00041 u_int16_t listen_port,
00042 in_addr_t remote_addr,
00043 u_int16_t remote_port) = 0;
00044
00047 virtual void handle_bundle(dtn::APIBundle* data) = 0;
00048 };
00049
00050 }
00051
00052 #endif