From 7763f07327f3abce839a690df46ced3bfd1d3d09 Mon Sep 17 00:00:00 2001 From: Erwin Nindl Date: Sun, 7 Oct 2007 22:07:03 +0000 Subject: added doxygen generatet documentation --- doc/html/PracticalSocket_8cpp.html | 96 +++ doc/html/PracticalSocket_8h-source.html | 197 +++++ doc/html/PracticalSocket_8h.html | 44 + doc/html/annotated.html | 65 ++ doc/html/anytun_8cpp.html | 157 ++++ doc/html/authAlgo_8cpp.html | 29 + doc/html/authAlgo_8h-source.html | 84 ++ doc/html/authAlgo_8h.html | 38 + doc/html/buffer_8cpp.html | 33 + doc/html/buffer_8h-source.html | 98 +++ doc/html/buffer_8h.html | 33 + doc/html/classAesIcmCypher-members.html | 40 + doc/html/classAesIcmCypher.html | 259 ++++++ doc/html/classAesIcmCypher.png | Bin 0 -> 395 bytes doc/html/classAuthAlgo-members.html | 29 + doc/html/classAuthAlgo.html | 107 +++ doc/html/classAuthAlgo.png | Bin 0 -> 525 bytes doc/html/classBuffer-members.html | 49 ++ doc/html/classBuffer.html | 524 +++++++++++ doc/html/classBuffer.png | Bin 0 -> 421 bytes doc/html/classCommunicatingSocket-members.html | 43 + doc/html/classCommunicatingSocket.html | 281 ++++++ doc/html/classCommunicatingSocket.png | Bin 0 -> 1010 bytes doc/html/classCondition-members.html | 33 + doc/html/classCondition.html | 176 ++++ doc/html/classCypher-members.html | 33 + doc/html/classCypher.html | 239 +++++ doc/html/classCypher.png | Bin 0 -> 558 bytes doc/html/classHmacAuthAlgo-members.html | 29 + doc/html/classHmacAuthAlgo.html | 63 ++ doc/html/classHmacAuthAlgo.png | Bin 0 -> 371 bytes doc/html/classKeyDerivation-members.html | 36 + doc/html/classKeyDerivation.html | 265 ++++++ doc/html/classLock-members.html | 31 + doc/html/classLock.html | 142 +++ doc/html/classLog-members.html | 71 ++ doc/html/classLog.html | 860 ++++++++++++++++++ doc/html/classLogStringBuilder-members.html | 33 + doc/html/classLogStringBuilder.html | 187 ++++ doc/html/classLog_1_1instanceCleaner-members.html | 27 + doc/html/classLog_1_1instanceCleaner.html | 55 ++ doc/html/classMutex-members.html | 35 + doc/html/classMutex.html | 219 +++++ doc/html/classNullAuthAlgo-members.html | 29 + doc/html/classNullAuthAlgo.html | 63 ++ doc/html/classNullAuthAlgo.png | Bin 0 -> 354 bytes doc/html/classNullCypher-members.html | 33 + doc/html/classNullCypher.html | 78 ++ doc/html/classNullCypher.png | Bin 0 -> 362 bytes doc/html/classOptions-members.html | 71 ++ doc/html/classOptions.html | 959 +++++++++++++++++++++ doc/html/classPacket-members.html | 74 ++ doc/html/classPacket.html | 574 ++++++++++++ doc/html/classPacket.png | Bin 0 -> 427 bytes doc/html/classPacketSource-members.html | 29 + doc/html/classPacketSource.html | 139 +++ doc/html/classPacketSource.png | Bin 0 -> 436 bytes doc/html/classSemaphore-members.html | 31 + doc/html/classSemaphore.html | 139 +++ doc/html/classSeqWindow-members.html | 40 + doc/html/classSeqWindow.html | 340 ++++++++ doc/html/classSigHupHandler-members.html | 30 + doc/html/classSigHupHandler.html | 84 ++ doc/html/classSigHupHandler.png | Bin 0 -> 427 bytes doc/html/classSigIntHandler-members.html | 30 + doc/html/classSigIntHandler.html | 84 ++ doc/html/classSigIntHandler.png | Bin 0 -> 417 bytes doc/html/classSigQuitHandler-members.html | 30 + doc/html/classSigQuitHandler.html | 84 ++ doc/html/classSigQuitHandler.png | Bin 0 -> 435 bytes doc/html/classSigTermHandler-members.html | 30 + doc/html/classSigTermHandler.html | 84 ++ doc/html/classSigTermHandler.png | Bin 0 -> 440 bytes doc/html/classSigUsr1Handler-members.html | 30 + doc/html/classSigUsr1Handler.html | 84 ++ doc/html/classSigUsr1Handler.png | Bin 0 -> 435 bytes doc/html/classSigUsr2Handler-members.html | 30 + doc/html/classSigUsr2Handler.html | 84 ++ doc/html/classSigUsr2Handler.png | Bin 0 -> 444 bytes doc/html/classSignalController-members.html | 39 + doc/html/classSignalController.html | 293 +++++++ doc/html/classSignalHandler-members.html | 31 + doc/html/classSignalHandler.html | 150 ++++ doc/html/classSignalHandler.png | Bin 0 -> 1187 bytes doc/html/classSocket-members.html | 38 + doc/html/classSocket.html | 385 +++++++++ doc/html/classSocket.png | Bin 0 -> 1205 bytes doc/html/classSocketException-members.html | 30 + doc/html/classSocketException.html | 137 +++ doc/html/classTCPServerSocket-members.html | 40 + doc/html/classTCPServerSocket.html | 184 ++++ doc/html/classTCPServerSocket.png | Bin 0 -> 397 bytes doc/html/classTCPSocket-members.html | 47 + doc/html/classTCPSocket.html | 153 ++++ doc/html/classTCPSocket.png | Bin 0 -> 551 bytes doc/html/classTunDevice-members.html | 43 + doc/html/classTunDevice.html | 402 +++++++++ doc/html/classUDPPacketSource-members.html | 58 ++ doc/html/classUDPPacketSource.html | 195 +++++ doc/html/classUDPPacketSource.png | Bin 0 -> 1119 bytes doc/html/classUDPSocket-members.html | 53 ++ doc/html/classUDPSocket.html | 404 +++++++++ doc/html/classUDPSocket.png | Bin 0 -> 715 bytes doc/html/classsatp_1_1SATP-members.html | 72 ++ doc/html/classsatp_1_1SATP.html | 78 ++ doc/html/classsatp_1_1SATP.png | Bin 0 -> 410 bytes doc/html/cypher_8cpp.html | 33 + doc/html/cypher_8h-source.html | 115 +++ doc/html/cypher_8h.html | 40 + doc/html/datatypes_8h-source.html | 88 ++ doc/html/datatypes_8h.html | 396 +++++++++ doc/html/doxygen.css | 358 ++++++++ doc/html/doxygen.png | Bin 0 -> 1281 bytes doc/html/files.html | 54 ++ doc/html/ftv2blank.png | Bin 0 -> 174 bytes doc/html/ftv2doc.png | Bin 0 -> 255 bytes doc/html/ftv2folderclosed.png | Bin 0 -> 259 bytes doc/html/ftv2folderopen.png | Bin 0 -> 261 bytes doc/html/ftv2lastnode.png | Bin 0 -> 233 bytes doc/html/ftv2link.png | Bin 0 -> 358 bytes doc/html/ftv2mlastnode.png | Bin 0 -> 160 bytes doc/html/ftv2mnode.png | Bin 0 -> 194 bytes doc/html/ftv2node.png | Bin 0 -> 235 bytes doc/html/ftv2plastnode.png | Bin 0 -> 165 bytes doc/html/ftv2pnode.png | Bin 0 -> 200 bytes doc/html/ftv2vertline.png | Bin 0 -> 229 bytes doc/html/functions.html | 69 ++ doc/html/functions_0x61.html | 86 ++ doc/html/functions_0x62.html | 73 ++ doc/html/functions_0x63.html | 98 +++ doc/html/functions_0x64.html | 79 ++ doc/html/functions_0x65.html | 69 ++ doc/html/functions_0x66.html | 109 +++ doc/html/functions_0x67.html | 132 +++ doc/html/functions_0x68.html | 94 ++ doc/html/functions_0x69.html | 86 ++ doc/html/functions_0x6a.html | 69 ++ doc/html/functions_0x6b.html | 72 ++ doc/html/functions_0x6c.html | 94 ++ doc/html/functions_0x6d.html | 86 ++ doc/html/functions_0x6e.html | 69 ++ doc/html/functions_0x6f.html | 91 ++ doc/html/functions_0x70.html | 97 +++ doc/html/functions_0x72.html | 95 ++ doc/html/functions_0x73.html | 188 ++++ doc/html/functions_0x74.html | 83 ++ doc/html/functions_0x75.html | 78 ++ doc/html/functions_0x77.html | 81 ++ doc/html/functions_0x7e.html | 105 +++ doc/html/functions_func.html | 78 ++ doc/html/functions_func_0x62.html | 68 ++ doc/html/functions_func_0x63.html | 85 ++ doc/html/functions_func_0x64.html | 68 ++ doc/html/functions_func_0x65.html | 66 ++ doc/html/functions_func_0x67.html | 125 +++ doc/html/functions_func_0x68.html | 81 ++ doc/html/functions_func_0x69.html | 71 ++ doc/html/functions_func_0x6a.html | 66 ++ doc/html/functions_func_0x6b.html | 66 ++ doc/html/functions_func_0x6c.html | 76 ++ doc/html/functions_func_0x6d.html | 68 ++ doc/html/functions_func_0x6f.html | 86 ++ doc/html/functions_func_0x70.html | 74 ++ doc/html/functions_func_0x72.html | 88 ++ doc/html/functions_func_0x73.html | 148 ++++ doc/html/functions_func_0x74.html | 70 ++ doc/html/functions_func_0x75.html | 72 ++ doc/html/functions_func_0x77.html | 76 ++ doc/html/functions_func_0x7e.html | 102 +++ doc/html/functions_rela.html | 58 ++ doc/html/functions_type.html | 44 + doc/html/functions_vars.html | 287 ++++++ doc/html/globals.html | 149 ++++ doc/html/globals_defs.html | 67 ++ doc/html/globals_enum.html | 41 + doc/html/globals_eval.html | 45 + doc/html/globals_func.html | 47 + doc/html/globals_type.html | 63 ++ doc/html/globals_vars.html | 44 + doc/html/hierarchy.html | 84 ++ doc/html/index.html | 8 + doc/html/keyDerivation_8cpp.html | 30 + doc/html/keyDerivation_8h-source.html | 97 +++ doc/html/keyDerivation_8h.html | 88 ++ doc/html/log_8cpp.html | 51 ++ doc/html/log_8h-source.html | 150 ++++ doc/html/log_8h.html | 59 ++ doc/html/main.html | 26 + doc/html/namespaces.html | 24 + doc/html/namespacesatp.html | 27 + doc/html/namespacescapy_1_1_5.html | 24 + doc/html/namespacestd.html | 24 + doc/html/options_8cpp.html | 175 ++++ doc/html/options_8h-source.html | 114 +++ doc/html/options_8h.html | 33 + doc/html/packetSource_8cpp.html | 31 + doc/html/packetSource_8h-source.html | 78 ++ doc/html/packetSource_8h.html | 37 + doc/html/packet_8cpp.html | 31 + doc/html/packet_8h-source.html | 100 +++ doc/html/packet_8h.html | 36 + doc/html/satp_8py.html | 35 + doc/html/seqWindow_8cpp.html | 30 + doc/html/seqWindow_8h-source.html | 88 ++ doc/html/seqWindow_8h.html | 36 + doc/html/signalController_8cpp.html | 33 + doc/html/signalController_8h-source.html | 145 ++++ doc/html/signalController_8h.html | 50 ++ doc/html/structPacket_1_1HeaderStruct-members.html | 28 + doc/html/structPacket_1_1HeaderStruct.html | 68 ++ doc/html/structParam-members.html | 33 + doc/html/structParam.html | 151 ++++ doc/html/tab_b.gif | Bin 0 -> 35 bytes doc/html/tab_l.gif | Bin 0 -> 706 bytes doc/html/tab_r.gif | Bin 0 -> 2585 bytes doc/html/tabs.css | 102 +++ doc/html/threadUtils_8hpp-source.html | 198 +++++ doc/html/threadUtils_8hpp.html | 40 + doc/html/tree.html | 210 +++++ doc/html/tunDevice_8cpp.html | 34 + doc/html/tunDevice_8h-source.html | 90 ++ doc/html/tunDevice_8h.html | 34 + 222 files changed, 19253 insertions(+) create mode 100644 doc/html/PracticalSocket_8cpp.html create mode 100644 doc/html/PracticalSocket_8h-source.html create mode 100644 doc/html/PracticalSocket_8h.html create mode 100644 doc/html/annotated.html create mode 100644 doc/html/anytun_8cpp.html create mode 100644 doc/html/authAlgo_8cpp.html create mode 100644 doc/html/authAlgo_8h-source.html create mode 100644 doc/html/authAlgo_8h.html create mode 100644 doc/html/buffer_8cpp.html create mode 100644 doc/html/buffer_8h-source.html create mode 100644 doc/html/buffer_8h.html create mode 100644 doc/html/classAesIcmCypher-members.html create mode 100644 doc/html/classAesIcmCypher.html create mode 100644 doc/html/classAesIcmCypher.png create mode 100644 doc/html/classAuthAlgo-members.html create mode 100644 doc/html/classAuthAlgo.html create mode 100644 doc/html/classAuthAlgo.png create mode 100644 doc/html/classBuffer-members.html create mode 100644 doc/html/classBuffer.html create mode 100644 doc/html/classBuffer.png create mode 100644 doc/html/classCommunicatingSocket-members.html create mode 100644 doc/html/classCommunicatingSocket.html create mode 100644 doc/html/classCommunicatingSocket.png create mode 100644 doc/html/classCondition-members.html create mode 100644 doc/html/classCondition.html create mode 100644 doc/html/classCypher-members.html create mode 100644 doc/html/classCypher.html create mode 100644 doc/html/classCypher.png create mode 100644 doc/html/classHmacAuthAlgo-members.html create mode 100644 doc/html/classHmacAuthAlgo.html create mode 100644 doc/html/classHmacAuthAlgo.png create mode 100644 doc/html/classKeyDerivation-members.html create mode 100644 doc/html/classKeyDerivation.html create mode 100644 doc/html/classLock-members.html create mode 100644 doc/html/classLock.html create mode 100644 doc/html/classLog-members.html create mode 100644 doc/html/classLog.html create mode 100644 doc/html/classLogStringBuilder-members.html create mode 100644 doc/html/classLogStringBuilder.html create mode 100644 doc/html/classLog_1_1instanceCleaner-members.html create mode 100644 doc/html/classLog_1_1instanceCleaner.html create mode 100644 doc/html/classMutex-members.html create mode 100644 doc/html/classMutex.html create mode 100644 doc/html/classNullAuthAlgo-members.html create mode 100644 doc/html/classNullAuthAlgo.html create mode 100644 doc/html/classNullAuthAlgo.png create mode 100644 doc/html/classNullCypher-members.html create mode 100644 doc/html/classNullCypher.html create mode 100644 doc/html/classNullCypher.png create mode 100644 doc/html/classOptions-members.html create mode 100644 doc/html/classOptions.html create mode 100644 doc/html/classPacket-members.html create mode 100644 doc/html/classPacket.html create mode 100644 doc/html/classPacket.png create mode 100644 doc/html/classPacketSource-members.html create mode 100644 doc/html/classPacketSource.html create mode 100644 doc/html/classPacketSource.png create mode 100644 doc/html/classSemaphore-members.html create mode 100644 doc/html/classSemaphore.html create mode 100644 doc/html/classSeqWindow-members.html create mode 100644 doc/html/classSeqWindow.html create mode 100644 doc/html/classSigHupHandler-members.html create mode 100644 doc/html/classSigHupHandler.html create mode 100644 doc/html/classSigHupHandler.png create mode 100644 doc/html/classSigIntHandler-members.html create mode 100644 doc/html/classSigIntHandler.html create mode 100644 doc/html/classSigIntHandler.png create mode 100644 doc/html/classSigQuitHandler-members.html create mode 100644 doc/html/classSigQuitHandler.html create mode 100644 doc/html/classSigQuitHandler.png create mode 100644 doc/html/classSigTermHandler-members.html create mode 100644 doc/html/classSigTermHandler.html create mode 100644 doc/html/classSigTermHandler.png create mode 100644 doc/html/classSigUsr1Handler-members.html create mode 100644 doc/html/classSigUsr1Handler.html create mode 100644 doc/html/classSigUsr1Handler.png create mode 100644 doc/html/classSigUsr2Handler-members.html create mode 100644 doc/html/classSigUsr2Handler.html create mode 100644 doc/html/classSigUsr2Handler.png create mode 100644 doc/html/classSignalController-members.html create mode 100644 doc/html/classSignalController.html create mode 100644 doc/html/classSignalHandler-members.html create mode 100644 doc/html/classSignalHandler.html create mode 100644 doc/html/classSignalHandler.png create mode 100644 doc/html/classSocket-members.html create mode 100644 doc/html/classSocket.html create mode 100644 doc/html/classSocket.png create mode 100644 doc/html/classSocketException-members.html create mode 100644 doc/html/classSocketException.html create mode 100644 doc/html/classTCPServerSocket-members.html create mode 100644 doc/html/classTCPServerSocket.html create mode 100644 doc/html/classTCPServerSocket.png create mode 100644 doc/html/classTCPSocket-members.html create mode 100644 doc/html/classTCPSocket.html create mode 100644 doc/html/classTCPSocket.png create mode 100644 doc/html/classTunDevice-members.html create mode 100644 doc/html/classTunDevice.html create mode 100644 doc/html/classUDPPacketSource-members.html create mode 100644 doc/html/classUDPPacketSource.html create mode 100644 doc/html/classUDPPacketSource.png create mode 100644 doc/html/classUDPSocket-members.html create mode 100644 doc/html/classUDPSocket.html create mode 100644 doc/html/classUDPSocket.png create mode 100644 doc/html/classsatp_1_1SATP-members.html create mode 100644 doc/html/classsatp_1_1SATP.html create mode 100644 doc/html/classsatp_1_1SATP.png create mode 100644 doc/html/cypher_8cpp.html create mode 100644 doc/html/cypher_8h-source.html create mode 100644 doc/html/cypher_8h.html create mode 100644 doc/html/datatypes_8h-source.html create mode 100644 doc/html/datatypes_8h.html create mode 100644 doc/html/doxygen.css create mode 100644 doc/html/doxygen.png create mode 100644 doc/html/files.html create mode 100644 doc/html/ftv2blank.png create mode 100644 doc/html/ftv2doc.png create mode 100644 doc/html/ftv2folderclosed.png create mode 100644 doc/html/ftv2folderopen.png create mode 100644 doc/html/ftv2lastnode.png create mode 100644 doc/html/ftv2link.png create mode 100644 doc/html/ftv2mlastnode.png create mode 100644 doc/html/ftv2mnode.png create mode 100644 doc/html/ftv2node.png create mode 100644 doc/html/ftv2plastnode.png create mode 100644 doc/html/ftv2pnode.png create mode 100644 doc/html/ftv2vertline.png create mode 100644 doc/html/functions.html create mode 100644 doc/html/functions_0x61.html create mode 100644 doc/html/functions_0x62.html create mode 100644 doc/html/functions_0x63.html create mode 100644 doc/html/functions_0x64.html create mode 100644 doc/html/functions_0x65.html create mode 100644 doc/html/functions_0x66.html create mode 100644 doc/html/functions_0x67.html create mode 100644 doc/html/functions_0x68.html create mode 100644 doc/html/functions_0x69.html create mode 100644 doc/html/functions_0x6a.html create mode 100644 doc/html/functions_0x6b.html create mode 100644 doc/html/functions_0x6c.html create mode 100644 doc/html/functions_0x6d.html create mode 100644 doc/html/functions_0x6e.html create mode 100644 doc/html/functions_0x6f.html create mode 100644 doc/html/functions_0x70.html create mode 100644 doc/html/functions_0x72.html create mode 100644 doc/html/functions_0x73.html create mode 100644 doc/html/functions_0x74.html create mode 100644 doc/html/functions_0x75.html create mode 100644 doc/html/functions_0x77.html create mode 100644 doc/html/functions_0x7e.html create mode 100644 doc/html/functions_func.html create mode 100644 doc/html/functions_func_0x62.html create mode 100644 doc/html/functions_func_0x63.html create mode 100644 doc/html/functions_func_0x64.html create mode 100644 doc/html/functions_func_0x65.html create mode 100644 doc/html/functions_func_0x67.html create mode 100644 doc/html/functions_func_0x68.html create mode 100644 doc/html/functions_func_0x69.html create mode 100644 doc/html/functions_func_0x6a.html create mode 100644 doc/html/functions_func_0x6b.html create mode 100644 doc/html/functions_func_0x6c.html create mode 100644 doc/html/functions_func_0x6d.html create mode 100644 doc/html/functions_func_0x6f.html create mode 100644 doc/html/functions_func_0x70.html create mode 100644 doc/html/functions_func_0x72.html create mode 100644 doc/html/functions_func_0x73.html create mode 100644 doc/html/functions_func_0x74.html create mode 100644 doc/html/functions_func_0x75.html create mode 100644 doc/html/functions_func_0x77.html create mode 100644 doc/html/functions_func_0x7e.html create mode 100644 doc/html/functions_rela.html create mode 100644 doc/html/functions_type.html create mode 100644 doc/html/functions_vars.html create mode 100644 doc/html/globals.html create mode 100644 doc/html/globals_defs.html create mode 100644 doc/html/globals_enum.html create mode 100644 doc/html/globals_eval.html create mode 100644 doc/html/globals_func.html create mode 100644 doc/html/globals_type.html create mode 100644 doc/html/globals_vars.html create mode 100644 doc/html/hierarchy.html create mode 100644 doc/html/index.html create mode 100644 doc/html/keyDerivation_8cpp.html create mode 100644 doc/html/keyDerivation_8h-source.html create mode 100644 doc/html/keyDerivation_8h.html create mode 100644 doc/html/log_8cpp.html create mode 100644 doc/html/log_8h-source.html create mode 100644 doc/html/log_8h.html create mode 100644 doc/html/main.html create mode 100644 doc/html/namespaces.html create mode 100644 doc/html/namespacesatp.html create mode 100644 doc/html/namespacescapy_1_1_5.html create mode 100644 doc/html/namespacestd.html create mode 100644 doc/html/options_8cpp.html create mode 100644 doc/html/options_8h-source.html create mode 100644 doc/html/options_8h.html create mode 100644 doc/html/packetSource_8cpp.html create mode 100644 doc/html/packetSource_8h-source.html create mode 100644 doc/html/packetSource_8h.html create mode 100644 doc/html/packet_8cpp.html create mode 100644 doc/html/packet_8h-source.html create mode 100644 doc/html/packet_8h.html create mode 100644 doc/html/satp_8py.html create mode 100644 doc/html/seqWindow_8cpp.html create mode 100644 doc/html/seqWindow_8h-source.html create mode 100644 doc/html/seqWindow_8h.html create mode 100644 doc/html/signalController_8cpp.html create mode 100644 doc/html/signalController_8h-source.html create mode 100644 doc/html/signalController_8h.html create mode 100644 doc/html/structPacket_1_1HeaderStruct-members.html create mode 100644 doc/html/structPacket_1_1HeaderStruct.html create mode 100644 doc/html/structParam-members.html create mode 100644 doc/html/structParam.html create mode 100644 doc/html/tab_b.gif create mode 100644 doc/html/tab_l.gif create mode 100644 doc/html/tab_r.gif create mode 100644 doc/html/tabs.css create mode 100644 doc/html/threadUtils_8hpp-source.html create mode 100644 doc/html/threadUtils_8hpp.html create mode 100644 doc/html/tree.html create mode 100644 doc/html/tunDevice_8cpp.html create mode 100644 doc/html/tunDevice_8h-source.html create mode 100644 doc/html/tunDevice_8h.html (limited to 'doc/html') diff --git a/doc/html/PracticalSocket_8cpp.html b/doc/html/PracticalSocket_8cpp.html new file mode 100644 index 0000000..389ebd3 --- /dev/null +++ b/doc/html/PracticalSocket_8cpp.html @@ -0,0 +1,96 @@ + + +anytun: PracticalSocket.cpp File Reference + + + + +
+
+
+
+

PracticalSocket.cpp File Reference

#include "PracticalSocket.h"
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <netdb.h>
+#include <arpa/inet.h>
+#include <unistd.h>
+#include <netinet/in.h>
+#include <errno.h>
+ + + + + + + + + + + +

Namespaces

namespace  std

Typedefs

typedef void raw_type

Functions

static void fillAddr (const string &address, unsigned short port, sockaddr_in &addr)
+

Typedef Documentation

+ +
+
+ + + + +
typedef void raw_type
+
+
+ +

+ +

+

+


Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
static void fillAddr (const string &  address,
unsigned short  port,
sockaddr_in &  addr 
) [static]
+
+
+ +

+ +

+

+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/PracticalSocket_8h-source.html b/doc/html/PracticalSocket_8h-source.html new file mode 100644 index 0000000..6bb2a03 --- /dev/null +++ b/doc/html/PracticalSocket_8h-source.html @@ -0,0 +1,197 @@ + + +anytun: PracticalSocket.h Source File + + + + +
+
+
+
+

PracticalSocket.h

Go to the documentation of this file.
00001 /*
+00002  *  anytun
+00003  *
+00004  *  The secure anycast tunneling protocol (satp) defines a protocol used
+00005  *  for communication between any combination of unicast and anycast
+00006  *  tunnel endpoints.  It has less protocol overhead than IPSec in Tunnel
+00007  *  mode and allows tunneling of every ETHER TYPE protocol (e.g.
+00008  *  ethernet, ip, arp ...). satp directly includes cryptography and
+00009  *  message authentication based on the methodes used by SRTP.  It is
+00010  *  intended to deliver a generic, scaleable and secure solution for
+00011  *  tunneling and relaying of packets of any protocol.
+00012  *
+00013  *
+00014  *  Copyright (C) 2007 anytun.org <satp@wirdorange.org>
+00015  *
+00016  *  This program is free software; you can redistribute it and/or modify
+00017  *  it under the terms of the GNU General Public License version 2
+00018  *  as published by the Free Software Foundation.
+00019  *
+00020  *  This program is distributed in the hope that it will be useful,
+00021  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+00022  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+00023  *  GNU General Public License for more details.
+00024  *
+00025  *  You should have received a copy of the GNU General Public License
+00026  *  along with this program (see the file COPYING included with this
+00027  *  distribution); if not, write to the Free Software Foundation, Inc.,
+00028  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+00029  */
+00030 
+00031 // this is from: http://cs.ecs.baylor.edu/~donahoo/practical/CSockets/practical/
+00032 // and this is their header:
+00033 /*
+00034  *   C++ sockets on Unix and Windows
+00035  *   Copyright (C) 2002
+00036  *
+00037  *   This program is free software; you can redistribute it and/or modify
+00038  *   it under the terms of the GNU General Public License as published by
+00039  *   the Free Software Foundation; either version 2 of the License, or
+00040  *   (at your option) any later version.
+00041  *
+00042  *   This program is distributed in the hope that it will be useful,
+00043  *   but WITHOUT ANY WARRANTY; without even the implied warranty of
+00044  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+00045  *   GNU General Public License for more details.
+00046  *
+00047  *   You should have received a copy of the GNU General Public License
+00048  *   along with this program; if not, write to the Free Software
+00049  *   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+00050  */
+00051 
+00052 #ifndef __PRACTICALSOCKET_INCLUDED__
+00053 #define __PRACTICALSOCKET_INCLUDED__
+00054 
+00055 #include <string>            // For string
+00056 #include <exception>         // For exception class
+00057 
+00058 using namespace std;
+00059 
+00063 class SocketException : public exception {
+00064 public:
+00071   SocketException(const string &message, bool inclSysMsg = false) throw();
+00072 
+00076   ~SocketException() throw();
+00077 
+00082   const char *what() const throw();
+00083 
+00084 private:
+00085   string userMessage;  // Exception message
+00086 };
+00087 
+00091 class Socket {
+00092 public:
+00096   ~Socket();
+00097 
+00103   string getLocalAddress() throw(SocketException);
+00104 
+00110   unsigned short getLocalPort() throw(SocketException);
+00111 
+00118   void setLocalPort(unsigned short localPort) throw(SocketException);
+00119 
+00128   void setLocalAddressAndPort(const string &localAddress, 
+00129     unsigned short localPort = 0) throw(SocketException);
+00130 
+00144   static void cleanUp() throw(SocketException);
+00145 
+00152   static unsigned short resolveService(const string &service,
+00153                                        const string &protocol = "tcp");
+00154 
+00155 private:
+00156   // Prevent the user from trying to use value semantics on this object
+00157   Socket(const Socket &sock);
+00158   void operator=(const Socket &sock);
+00159 
+00160 protected:
+00161   int sockDesc;              // Socket descriptor
+00162   Socket(int type, int protocol) throw(SocketException);
+00163   Socket(int sockDesc);
+00164 };
+00165 
+00169 class CommunicatingSocket : public Socket {
+00170 public:
+00178   void connect(const string &foreignAddress, unsigned short foreignPort)
+00179     throw(SocketException);
+00180 
+00188   void send(const void *buffer, int bufferLen) throw(SocketException);
+00189 
+00198   int recv(void *buffer, int bufferLen) throw(SocketException);
+00199 
+00205   string getForeignAddress() throw(SocketException);
+00206 
+00212   unsigned short getForeignPort() throw(SocketException);
+00213 
+00214 protected:
+00215   CommunicatingSocket(int type, int protocol) throw(SocketException);
+00216   CommunicatingSocket(int newConnSD);
+00217 };
+00218 
+00222 class TCPSocket : public CommunicatingSocket {
+00223 public:
+00228   TCPSocket() throw(SocketException);
+00229 
+00237   TCPSocket(const string &foreignAddress, unsigned short foreignPort) 
+00238       throw(SocketException);
+00239 
+00240 private:
+00241   // Access for TCPServerSocket::accept() connection creation
+00242   friend class TCPServerSocket;
+00243   TCPSocket(int newConnSD);
+00244 };
+00245 
+00249 class TCPServerSocket : public Socket {
+00250 public:
+00260   TCPServerSocket(unsigned short localPort, int queueLen = 5) 
+00261       throw(SocketException);
+00262 
+00272   TCPServerSocket(const string &localAddress, unsigned short localPort,
+00273       int queueLen = 5) throw(SocketException);
+00274 
+00280   TCPSocket *accept() throw(SocketException);
+00281 
+00282 private:
+00283   void setListen(int queueLen) throw(SocketException);
+00284 };
+00285 
+00289 class UDPSocket : public CommunicatingSocket {
+00290 public:
+00295   UDPSocket() throw(SocketException);
+00296 
+00302   UDPSocket(unsigned short localPort) throw(SocketException);
+00303 
+00310   UDPSocket(const string &localAddress, unsigned short localPort) 
+00311       throw(SocketException);
+00312 
+00318   void disconnect() throw(SocketException);
+00319 
+00330   void sendTo(const void *buffer, int bufferLen, const string &foreignAddress,
+00331             unsigned short foreignPort) throw(SocketException);
+00332 
+00343   int recvFrom(void *buffer, int bufferLen, string &sourceAddress, 
+00344                unsigned short &sourcePort) throw(SocketException);
+00345 
+00351   void setMulticastTTL(unsigned char multicastTTL) throw(SocketException);
+00352 
+00358   void joinGroup(const string &multicastGroup) throw(SocketException);
+00359 
+00365   void leaveGroup(const string &multicastGroup) throw(SocketException);
+00366 
+00367 private:
+00368   void setBroadcast();
+00369 };
+00370 
+00371 #endif
+

Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/PracticalSocket_8h.html b/doc/html/PracticalSocket_8h.html new file mode 100644 index 0000000..3cde231 --- /dev/null +++ b/doc/html/PracticalSocket_8h.html @@ -0,0 +1,44 @@ + + +anytun: PracticalSocket.h File Reference + + + + +
+
+
+
+

PracticalSocket.h File Reference

#include <string>
+#include <exception>
+ +

+Go to the source code of this file. + + + + + + + + + + + + + + +

Classes

class  SocketException
class  Socket
class  CommunicatingSocket
class  TCPSocket
class  TCPServerSocket
class  UDPSocket
+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/annotated.html b/doc/html/annotated.html new file mode 100644 index 0000000..98dbd0b --- /dev/null +++ b/doc/html/annotated.html @@ -0,0 +1,65 @@ + + +anytun: Class List + + + + +
+
+
+
+

anytun Class List

Here are the classes, structs, unions and interfaces with brief descriptions: + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AesIcmCypher
AuthAlgo
Buffer
CommunicatingSocket
Condition
Cypher
HmacAuthAlgo
KeyDerivation
Lock
Log
Log::instanceCleaner
LogStringBuilder
Mutex
NullAuthAlgo
NullCypher
Options
Packet
Packet::HeaderStruct
PacketSource
Param
satp::SATP
Semaphore
SeqWindow
SigHupHandler
SigIntHandler
SignalController
SignalHandler
SigQuitHandler
SigTermHandler
SigUsr1Handler
SigUsr2Handler
Socket
SocketException
TCPServerSocket
TCPSocket
TunDevice
UDPPacketSource
UDPSocket
+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/anytun_8cpp.html b/doc/html/anytun_8cpp.html new file mode 100644 index 0000000..0904dd9 --- /dev/null +++ b/doc/html/anytun_8cpp.html @@ -0,0 +1,157 @@ + + +anytun: anytun.cpp File Reference + + + + +
+
+
+
+

anytun.cpp File Reference

#include <iostream>
+#include <poll.h>
+#include "datatypes.h"
+#include "log.h"
+#include "buffer.h"
+#include "packet.h"
+#include "cypher.h"
+#include "keyDerivation.h"
+#include "authAlgo.h"
+#include "signalController.h"
+#include "packetSource.h"
+#include "tunDevice.h"
+#include "options.h"
+#include "seqWindow.h"
+ + + + + + + + + + + + + + + + + +

Classes

struct  Param

Defines

#define PAYLOAD_TYPE_TAP   0x6558
#define PAYLOAD_TYPE_TUN   0x0800

Functions

void * sender (void *p)
void * receiver (void *p)
int main (int argc, char *argv[])
+

Define Documentation

+ +
+
+ + + + +
#define PAYLOAD_TYPE_TAP   0x6558
+
+
+ +

+ +

+

+ +

+
+ + + + +
#define PAYLOAD_TYPE_TUN   0x0800
+
+
+ +

+ +

+

+


Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
int main (int  argc,
char *  argv[] 
)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
void* receiver (void *  p  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
void* sender (void *  p  ) 
+
+
+ +

+ +

+

+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/authAlgo_8cpp.html b/doc/html/authAlgo_8cpp.html new file mode 100644 index 0000000..fe4c1ec --- /dev/null +++ b/doc/html/authAlgo_8cpp.html @@ -0,0 +1,29 @@ + + +anytun: authAlgo.cpp File Reference + + + + +
+
+
+
+

authAlgo.cpp File Reference

#include "authAlgo.h"
+#include <srtp/crypto_kernel.h>
+ + +
+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/authAlgo_8h-source.html b/doc/html/authAlgo_8h-source.html new file mode 100644 index 0000000..2a5e595 --- /dev/null +++ b/doc/html/authAlgo_8h-source.html @@ -0,0 +1,84 @@ + + +anytun: authAlgo.h Source File + + + + +
+
+
+
+

authAlgo.h

Go to the documentation of this file.
00001 /*
+00002  *  anytun
+00003  *
+00004  *  The secure anycast tunneling protocol (satp) defines a protocol used
+00005  *  for communication between any combination of unicast and anycast
+00006  *  tunnel endpoints.  It has less protocol overhead than IPSec in Tunnel
+00007  *  mode and allows tunneling of every ETHER TYPE protocol (e.g.
+00008  *  ethernet, ip, arp ...). satp directly includes cryptography and
+00009  *  message authentication based on the methodes used by SRTP.  It is
+00010  *  intended to deliver a generic, scaleable and secure solution for
+00011  *  tunneling and relaying of packets of any protocol.
+00012  *
+00013  *
+00014  *  Copyright (C) 2007 anytun.org <satp@wirdorange.org>
+00015  *
+00016  *  This program is free software; you can redistribute it and/or modify
+00017  *  it under the terms of the GNU General Public License version 2
+00018  *  as published by the Free Software Foundation.
+00019  *
+00020  *  This program is distributed in the hope that it will be useful,
+00021  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+00022  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+00023  *  GNU General Public License for more details.
+00024  *
+00025  *  You should have received a copy of the GNU General Public License
+00026  *  along with this program (see the file COPYING included with this
+00027  *  distribution); if not, write to the Free Software Foundation, Inc.,
+00028  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+00029  */
+00030 
+00031 #ifndef _AUTHALGO_H_
+00032 #define _AUTHALGO_H_
+00033 
+00034 #include "datatypes.h"
+00035 #include "buffer.h"
+00036 
+00037 class AuthAlgo
+00038 {
+00039 public:
+00040   AuthAlgo() {};
+00041   virtual ~AuthAlgo() {};
+00042 
+00043   virtual auth_tag_t calc(const Buffer& buf) = 0;
+00044 };
+00045 
+00046 class NullAuthAlgo : public AuthAlgo
+00047 {
+00048 public:
+00049   auth_tag_t calc(const Buffer& buf);
+00050 };
+00051 
+00052 
+00053 // HMAC_SHA1
+00054 class HmacAuthAlgo : public AuthAlgo
+00055 {
+00056 public:
+00057   auth_tag_t calc(const Buffer& buf);
+00058 };
+00059 
+00060 #endif
+

Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/authAlgo_8h.html b/doc/html/authAlgo_8h.html new file mode 100644 index 0000000..5f625a2 --- /dev/null +++ b/doc/html/authAlgo_8h.html @@ -0,0 +1,38 @@ + + +anytun: authAlgo.h File Reference + + + + +
+
+
+
+

authAlgo.h File Reference

#include "datatypes.h"
+#include "buffer.h"
+ +

+Go to the source code of this file. + + + + + + + + +

Classes

class  AuthAlgo
class  NullAuthAlgo
class  HmacAuthAlgo
+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/buffer_8cpp.html b/doc/html/buffer_8cpp.html new file mode 100644 index 0000000..5602104 --- /dev/null +++ b/doc/html/buffer_8cpp.html @@ -0,0 +1,33 @@ + + +anytun: buffer.cpp File Reference + + + + +
+
+
+
+

buffer.cpp File Reference

#include <stdexcept>
+#include <string>
+#include <cstdio>
+#include <iostream>
+#include "datatypes.h"
+#include "buffer.h"
+ + +
+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/buffer_8h-source.html b/doc/html/buffer_8h-source.html new file mode 100644 index 0000000..ab43969 --- /dev/null +++ b/doc/html/buffer_8h-source.html @@ -0,0 +1,98 @@ + + +anytun: buffer.h Source File + + + + +
+
+
+
+

buffer.h

Go to the documentation of this file.
00001 /*
+00002  *  anytun
+00003  *
+00004  *  The secure anycast tunneling protocol (satp) defines a protocol used
+00005  *  for communication between any combination of unicast and anycast
+00006  *  tunnel endpoints.  It has less protocol overhead than IPSec in Tunnel
+00007  *  mode and allows tunneling of every ETHER TYPE protocol (e.g.
+00008  *  ethernet, ip, arp ...). satp directly includes cryptography and
+00009  *  message authentication based on the methodes used by SRTP.  It is
+00010  *  intended to deliver a generic, scaleable and secure solution for
+00011  *  tunneling and relaying of packets of any protocol.
+00012  *
+00013  *
+00014  *  Copyright (C) 2007 anytun.org <satp@wirdorange.org>
+00015  *
+00016  *  This program is free software; you can redistribute it and/or modify
+00017  *  it under the terms of the GNU General Public License version 2
+00018  *  as published by the Free Software Foundation.
+00019  *
+00020  *  This program is distributed in the hope that it will be useful,
+00021  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+00022  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+00023  *  GNU General Public License for more details.
+00024  *
+00025  *  You should have received a copy of the GNU General Public License
+00026  *  along with this program (see the file COPYING included with this
+00027  *  distribution); if not, write to the Free Software Foundation, Inc.,
+00028  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+00029  */
+00030 
+00031 #ifndef _BUFFER_H_
+00032 #define _BUFFER_H_
+00033 
+00034 #include "datatypes.h"
+00035 
+00036 class TunDevice;
+00037 class UDPPacketSource;
+00038 
+00039 class Buffer
+00040 {
+00041 public:
+00042   Buffer();
+00043   Buffer(u_int32_t length);
+00044   Buffer(u_int8_t* data, u_int32_t length);
+00045   virtual ~Buffer();
+00046   Buffer(const Buffer &src);
+00047   void operator=(const Buffer &src);
+00048 
+00049   // math operations to calculate IVs and keys
+00050   virtual Buffer operator^(const Buffer &xor_by) const;
+00051   virtual Buffer leftByteShift(u_int32_t width) const;
+00052   virtual Buffer rightByteShift(u_int32_t width) const;
+00053 
+00054   u_int32_t resizeFront(u_int32_t new_length);
+00055   u_int32_t resizeBack(u_int32_t new_length);
+00056   u_int32_t getLength() const;
+00057   u_int8_t* getBuf();
+00058   u_int8_t& operator[](u_int32_t index);
+00059   u_int8_t operator[](u_int32_t index) const;
+00060   void printHexDump() const;
+00061 
+00062   operator u_int8_t*(); // just for write/read tun and packetSource
+00063 protected:
+00064   friend class TunDevice;
+00065   friend class UDPPacketSource;
+00066   friend class AesIcmCypher;
+00067   friend class KeyDerivation;   // 
+00068 
+00069   u_int8_t *buf_;
+00070   u_int32_t length_;
+00071 
+00072 };
+00073 
+00074 #endif
+

Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/buffer_8h.html b/doc/html/buffer_8h.html new file mode 100644 index 0000000..c67f812 --- /dev/null +++ b/doc/html/buffer_8h.html @@ -0,0 +1,33 @@ + + +anytun: buffer.h File Reference + + + + +
+
+
+
+

buffer.h File Reference

#include "datatypes.h"
+ +

+Go to the source code of this file. + + + + +

Classes

class  Buffer
+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classAesIcmCypher-members.html b/doc/html/classAesIcmCypher-members.html new file mode 100644 index 0000000..e33b178 --- /dev/null +++ b/doc/html/classAesIcmCypher-members.html @@ -0,0 +1,40 @@ + + +anytun: Member List + + + + +
+
+
+
+

AesIcmCypher Member List

This is the complete list of members for AesIcmCypher, including all inherited members.

+ + + + + + + + + + + + + + +
AesIcmCypher()AesIcmCypher
cipher_AesIcmCypher [protected]
Cypher()Cypher [inline]
cypher(Buffer &buf, seq_nr_t seq_nr, sender_id_t sender_id)Cypher
exor(Buffer &buf, const Buffer &bit_stream)Cypher [protected]
gcrypt_initialized_AesIcmCypher [private, static]
GCRYPT_SEC_MEMAesIcmCypher [static]
getBitStream(u_int32_t length, seq_nr_t seq_nr, sender_id_t sender_id)AesIcmCypher [protected, virtual]
MIN_GCRYPT_VERSIONAesIcmCypher [static]
salt_AesIcmCypher [protected]
setKey(Buffer key)AesIcmCypher
setSalt(Buffer salt)AesIcmCypher
~AesIcmCypher()AesIcmCypher
~Cypher()Cypher [inline, virtual]


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classAesIcmCypher.html b/doc/html/classAesIcmCypher.html new file mode 100644 index 0000000..e340a98 --- /dev/null +++ b/doc/html/classAesIcmCypher.html @@ -0,0 +1,259 @@ + + +anytun: AesIcmCypher Class Reference + + + + +
+
+
+
+

AesIcmCypher Class Reference

#include <cypher.h> +

+

Inheritance diagram for AesIcmCypher: +

+ +Cypher + +List of all members. + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Member Functions

 AesIcmCypher ()
 ~AesIcmCypher ()
void setKey (Buffer key)
void setSalt (Buffer salt)

Static Public Attributes

static const std::string MIN_GCRYPT_VERSION
static const u_int32_t GCRYPT_SEC_MEM

Protected Member Functions

Buffer getBitStream (u_int32_t length, seq_nr_t seq_nr, sender_id_t sender_id)

Protected Attributes

gcry_cipher_hd_t cipher_
Buffer salt_

Static Private Attributes

static bool gcrypt_initialized_
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
AesIcmCypher::AesIcmCypher (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
AesIcmCypher::~AesIcmCypher (  ) 
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + + +
void AesIcmCypher::setKey (Buffer  key  ) 
+
+
+ +

+ +

+Reimplemented from Cypher. +

+

+ +

+
+ + + + + + + + + +
void AesIcmCypher::setSalt (Buffer  salt  ) 
+
+
+ +

+ +

+Reimplemented from Cypher. +

+

+ +

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Buffer AesIcmCypher::getBitStream (u_int32_t  length,
seq_nr_t  seq_nr,
sender_id_t  sender_id 
) [protected, virtual]
+
+
+ +

+ +

+Implements Cypher. +

+

+


Member Data Documentation

+ +
+
+ + + + +
const std::string AesIcmCypher::MIN_GCRYPT_VERSION [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const u_int32_t AesIcmCypher::GCRYPT_SEC_MEM [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
gcry_cipher_hd_t AesIcmCypher::cipher_ [protected]
+
+
+ +

+ +

+

+ +

+
+ + + + +
Buffer AesIcmCypher::salt_ [protected]
+
+
+ +

+ +

+

+ +

+
+ + + + +
bool AesIcmCypher::gcrypt_initialized_ [static, private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classAesIcmCypher.png b/doc/html/classAesIcmCypher.png new file mode 100644 index 0000000..cb9166f Binary files /dev/null and b/doc/html/classAesIcmCypher.png differ diff --git a/doc/html/classAuthAlgo-members.html b/doc/html/classAuthAlgo-members.html new file mode 100644 index 0000000..cd757c5 --- /dev/null +++ b/doc/html/classAuthAlgo-members.html @@ -0,0 +1,29 @@ + + +anytun: Member List + + + + +
+
+
+
+

AuthAlgo Member List

This is the complete list of members for AuthAlgo, including all inherited members.

+ + + +
AuthAlgo()AuthAlgo [inline]
calc(const Buffer &buf)=0AuthAlgo [pure virtual]
~AuthAlgo()AuthAlgo [inline, virtual]


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classAuthAlgo.html b/doc/html/classAuthAlgo.html new file mode 100644 index 0000000..c840aad --- /dev/null +++ b/doc/html/classAuthAlgo.html @@ -0,0 +1,107 @@ + + +anytun: AuthAlgo Class Reference + + + + +
+
+
+
+

AuthAlgo Class Reference

#include <authAlgo.h> +

+

Inheritance diagram for AuthAlgo: +

+ +HmacAuthAlgo +NullAuthAlgo + +List of all members. + + + + + + + + +

Public Member Functions

 AuthAlgo ()
virtual ~AuthAlgo ()
virtual auth_tag_t calc (const Buffer &buf)=0
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
AuthAlgo::AuthAlgo (  )  [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
virtual AuthAlgo::~AuthAlgo (  )  [inline, virtual]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + + +
virtual auth_tag_t AuthAlgo::calc (const Buffer buf  )  [pure virtual]
+
+
+ +

+ +

+Implemented in NullAuthAlgo, and HmacAuthAlgo. +

+

+


The documentation for this class was generated from the following file: +
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classAuthAlgo.png b/doc/html/classAuthAlgo.png new file mode 100644 index 0000000..eb8532f Binary files /dev/null and b/doc/html/classAuthAlgo.png differ diff --git a/doc/html/classBuffer-members.html b/doc/html/classBuffer-members.html new file mode 100644 index 0000000..cb3f162 --- /dev/null +++ b/doc/html/classBuffer-members.html @@ -0,0 +1,49 @@ + + +anytun: Member List + + + + +
+
+
+
+

Buffer Member List

This is the complete list of members for Buffer, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + +
AesIcmCypher classBuffer [friend]
buf_Buffer [protected]
Buffer()Buffer
Buffer(u_int32_t length)Buffer
Buffer(u_int8_t *data, u_int32_t length)Buffer
Buffer(const Buffer &src)Buffer
getBuf()Buffer
getLength() constBuffer
KeyDerivation classBuffer [friend]
leftByteShift(u_int32_t width) constBuffer [virtual]
length_Buffer [protected]
operator u_int8_t *()Buffer
operator=(const Buffer &src)Buffer
operator[](u_int32_t index)Buffer
operator[](u_int32_t index) constBuffer
operator^(const Buffer &xor_by) const Buffer [virtual]
printHexDump() constBuffer
resizeBack(u_int32_t new_length)Buffer
resizeFront(u_int32_t new_length)Buffer
rightByteShift(u_int32_t width) constBuffer [virtual]
TunDevice classBuffer [friend]
UDPPacketSource classBuffer [friend]
~Buffer()Buffer [virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classBuffer.html b/doc/html/classBuffer.html new file mode 100644 index 0000000..8131f7b --- /dev/null +++ b/doc/html/classBuffer.html @@ -0,0 +1,524 @@ + + +anytun: Buffer Class Reference + + + + +
+
+
+
+

Buffer Class Reference

#include <buffer.h> +

+

Inheritance diagram for Buffer: +

+ +Packet +satp::SATP + +List of all members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Member Functions

 Buffer ()
 Buffer (u_int32_t length)
 Buffer (u_int8_t *data, u_int32_t length)
virtual ~Buffer ()
 Buffer (const Buffer &src)
void operator= (const Buffer &src)
virtual Buffer operator^ (const Buffer &xor_by) const
virtual Buffer leftByteShift (u_int32_t width) const
virtual Buffer rightByteShift (u_int32_t width) const
u_int32_t resizeFront (u_int32_t new_length)
u_int32_t resizeBack (u_int32_t new_length)
u_int32_t getLength () const
u_int8_tgetBuf ()
u_int8_toperator[] (u_int32_t index)
u_int8_t operator[] (u_int32_t index) const
void printHexDump () const
 operator u_int8_t * ()

Protected Attributes

u_int8_tbuf_
u_int32_t length_

Friends

class TunDevice
class UDPPacketSource
class AesIcmCypher
class KeyDerivation
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
Buffer::Buffer (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Buffer::Buffer (u_int32_t  length  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + + + + + + + + + + +
Buffer::Buffer (u_int8_t data,
u_int32_t  length 
)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
Buffer::~Buffer (  )  [virtual]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Buffer::Buffer (const Buffer src  ) 
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + + +
void Buffer::operator= (const Buffer src  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Buffer Buffer::operator^ (const Buffer xor_by  )  const [virtual]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Buffer Buffer::leftByteShift (u_int32_t  width  )  const [virtual]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Buffer Buffer::rightByteShift (u_int32_t  width  )  const [virtual]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
u_int32_t Buffer::resizeFront (u_int32_t  new_length  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
u_int32_t Buffer::resizeBack (u_int32_t  new_length  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
u_int32_t Buffer::getLength (  )  const
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
u_int8_t * Buffer::getBuf (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
u_int8_t & Buffer::operator[] (u_int32_t  index  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
u_int8_t Buffer::operator[] (u_int32_t  index  )  const
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
void Buffer::printHexDump (  )  const
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
Buffer::operator u_int8_t * (  ) 
+
+
+ +

+ +

+

+


Friends And Related Function Documentation

+ +
+
+ + + + +
friend class TunDevice [friend]
+
+
+ +

+ +

+

+ +

+
+ + + + +
friend class UDPPacketSource [friend]
+
+
+ +

+ +

+

+ +

+
+ + + + +
friend class AesIcmCypher [friend]
+
+
+ +

+ +

+

+ +

+
+ + + + +
friend class KeyDerivation [friend]
+
+
+ +

+ +

+

+


Member Data Documentation

+ +
+
+ + + + +
u_int8_t* Buffer::buf_ [protected]
+
+
+ +

+ +

+

+ +

+
+ + + + +
u_int32_t Buffer::length_ [protected]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classBuffer.png b/doc/html/classBuffer.png new file mode 100644 index 0000000..e6dbf20 Binary files /dev/null and b/doc/html/classBuffer.png differ diff --git a/doc/html/classCommunicatingSocket-members.html b/doc/html/classCommunicatingSocket-members.html new file mode 100644 index 0000000..5a05f41 --- /dev/null +++ b/doc/html/classCommunicatingSocket-members.html @@ -0,0 +1,43 @@ + + +anytun: Member List + + + + +
+
+
+
+

CommunicatingSocket Member List

This is the complete list of members for CommunicatingSocket, including all inherited members.

+ + + + + + + + + + + + + + + + + +
cleanUp()Socket [static]
CommunicatingSocket(int type, int protocol)CommunicatingSocket [protected]
CommunicatingSocket(int newConnSD)CommunicatingSocket [protected]
connect(const string &foreignAddress, unsigned short foreignPort)CommunicatingSocket
getForeignAddress()CommunicatingSocket
getForeignPort()CommunicatingSocket
getLocalAddress()Socket
getLocalPort()Socket
recv(void *buffer, int bufferLen)CommunicatingSocket
resolveService(const string &service, const string &protocol="tcp")Socket [static]
send(const void *buffer, int bufferLen)CommunicatingSocket
setLocalAddressAndPort(const string &localAddress, unsigned short localPort=0)Socket
setLocalPort(unsigned short localPort)Socket
sockDescSocket [protected]
Socket(int type, int protocol)Socket [protected]
Socket(int sockDesc)Socket [protected]
~Socket()Socket


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classCommunicatingSocket.html b/doc/html/classCommunicatingSocket.html new file mode 100644 index 0000000..614d314 --- /dev/null +++ b/doc/html/classCommunicatingSocket.html @@ -0,0 +1,281 @@ + + +anytun: CommunicatingSocket Class Reference + + + + +
+
+
+
+

CommunicatingSocket Class Reference

#include <PracticalSocket.h> +

+

Inheritance diagram for CommunicatingSocket: +

+ +Socket +TCPSocket +UDPSocket +UDPPacketSource + +List of all members. + + + + + + + + + + + + + + + + + +

Public Member Functions

void connect (const string &foreignAddress, unsigned short foreignPort) throw (SocketException)
void send (const void *buffer, int bufferLen) throw (SocketException)
int recv (void *buffer, int bufferLen) throw (SocketException)
string getForeignAddress () throw (SocketException)
unsigned short getForeignPort () throw (SocketException)

Protected Member Functions

 CommunicatingSocket (int type, int protocol) throw (SocketException)
 CommunicatingSocket (int newConnSD)
+

Detailed Description

+Socket which is able to connect, send, and receive +

+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
CommunicatingSocket::CommunicatingSocket (int  type,
int  protocol 
) throw (SocketException) [protected]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
CommunicatingSocket::CommunicatingSocket (int  newConnSD  )  [protected]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
void CommunicatingSocket::connect (const string &  foreignAddress,
unsigned short  foreignPort 
) throw (SocketException)
+
+
+ +

+Establish a socket connection with the given foreign address and port

Parameters:
+ + + +
foreignAddress foreign address (IP address or name)
foreignPort foreign port
+
+
Exceptions:
+ + +
SocketException thrown if unable to establish connection
+
+ +
+

+ +

+
+ + + + + + + + + + + + + + + + + + +
void CommunicatingSocket::send (const void *  buffer,
int  bufferLen 
) throw (SocketException)
+
+
+ +

+Write the given buffer to this socket. Call connect() before calling send()

Parameters:
+ + + +
buffer buffer to be written
bufferLen number of bytes from buffer to be written
+
+
Exceptions:
+ + +
SocketException thrown if unable to send data
+
+ +
+

+ +

+
+ + + + + + + + + + + + + + + + + + +
int CommunicatingSocket::recv (void *  buffer,
int  bufferLen 
) throw (SocketException)
+
+
+ +

+Read into the given buffer up to bufferLen bytes data from this socket. Call connect() before calling recv()

Parameters:
+ + + +
buffer buffer to receive the data
bufferLen maximum number of bytes to read into buffer
+
+
Returns:
number of bytes read, 0 for EOF, and -1 for error
+
Exceptions:
+ + +
SocketException thrown if unable to receive data
+
+ +
+

+ +

+
+ + + + + + + + +
string CommunicatingSocket::getForeignAddress (  )  throw (SocketException)
+
+
+ +

+Get the foreign address. Call connect() before calling recv()

Returns:
foreign address
+
Exceptions:
+ + +
SocketException thrown if unable to fetch foreign address
+
+ +
+

+ +

+
+ + + + + + + + +
unsigned short CommunicatingSocket::getForeignPort (  )  throw (SocketException)
+
+
+ +

+Get the foreign port. Call connect() before calling recv()

Returns:
foreign port
+
Exceptions:
+ + +
SocketException thrown if unable to fetch foreign port
+
+ +
+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classCommunicatingSocket.png b/doc/html/classCommunicatingSocket.png new file mode 100644 index 0000000..75605ec Binary files /dev/null and b/doc/html/classCommunicatingSocket.png differ diff --git a/doc/html/classCondition-members.html b/doc/html/classCondition-members.html new file mode 100644 index 0000000..f9bcd3b --- /dev/null +++ b/doc/html/classCondition-members.html @@ -0,0 +1,33 @@ + + +anytun: Member List + + + + +
+
+
+
+

Condition Member List

This is the complete list of members for Condition, including all inherited members.

+ + + + + + + +
broadcast()Condition [inline]
condCondition [private]
Condition()Condition [inline]
mutexCondition [private]
signal()Condition [inline]
wait()Condition [inline]
~Condition()Condition [inline]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classCondition.html b/doc/html/classCondition.html new file mode 100644 index 0000000..90cf253 --- /dev/null +++ b/doc/html/classCondition.html @@ -0,0 +1,176 @@ + + +anytun: Condition Class Reference + + + + +
+
+
+
+

Condition Class Reference

#include <threadUtils.hpp> +

+List of all members. + + + + + + + + + + + + + + + + + +

Public Member Functions

 Condition ()
 ~Condition ()
void wait ()
void signal ()
void broadcast ()

Private Attributes

pthread_cond_t cond
Mutex mutex
+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
Condition::Condition (  )  [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
Condition::~Condition (  )  [inline]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
void Condition::wait (  )  [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
void Condition::signal (  )  [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
void Condition::broadcast (  )  [inline]
+
+
+ +

+ +

+

+


Member Data Documentation

+ +
+
+ + + + +
pthread_cond_t Condition::cond [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
Mutex Condition::mutex [private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following file: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classCypher-members.html b/doc/html/classCypher-members.html new file mode 100644 index 0000000..7ebac29 --- /dev/null +++ b/doc/html/classCypher-members.html @@ -0,0 +1,33 @@ + + +anytun: Member List + + + + +
+
+
+
+

Cypher Member List

This is the complete list of members for Cypher, including all inherited members.

+ + + + + + + +
Cypher()Cypher [inline]
cypher(Buffer &buf, seq_nr_t seq_nr, sender_id_t sender_id)Cypher
exor(Buffer &buf, const Buffer &bit_stream)Cypher [protected]
getBitStream(u_int32_t length, seq_nr_t seq_nr, sender_id_t sender_id)=0Cypher [protected, pure virtual]
setKey(Buffer key)Cypher [inline]
setSalt(Buffer salt)Cypher [inline]
~Cypher()Cypher [inline, virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classCypher.html b/doc/html/classCypher.html new file mode 100644 index 0000000..87de8e7 --- /dev/null +++ b/doc/html/classCypher.html @@ -0,0 +1,239 @@ + + +anytun: Cypher Class Reference + + + + +
+
+
+
+

Cypher Class Reference

#include <cypher.h> +

+

Inheritance diagram for Cypher: +

+ +AesIcmCypher +NullCypher + +List of all members. + + + + + + + + + + + + + + + + + +

Public Member Functions

 Cypher ()
virtual ~Cypher ()
void setKey (Buffer key)
void setSalt (Buffer salt)
void cypher (Buffer &buf, seq_nr_t seq_nr, sender_id_t sender_id)

Protected Member Functions

void exor (Buffer &buf, const Buffer &bit_stream)
virtual Buffer getBitStream (u_int32_t length, seq_nr_t seq_nr, sender_id_t sender_id)=0
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
Cypher::Cypher (  )  [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
virtual Cypher::~Cypher (  )  [inline, virtual]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + + +
void Cypher::setKey (Buffer  key  )  [inline]
+
+
+ +

+ +

+Reimplemented in AesIcmCypher. +

+

+ +

+
+ + + + + + + + + +
void Cypher::setSalt (Buffer  salt  )  [inline]
+
+
+ +

+ +

+Reimplemented in AesIcmCypher. +

+

+ +

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void Cypher::cypher (Buffer buf,
seq_nr_t  seq_nr,
sender_id_t  sender_id 
)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + + + + + + + + + + +
void Cypher::exor (Buffer buf,
const Buffer bit_stream 
) [protected]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual Buffer Cypher::getBitStream (u_int32_t  length,
seq_nr_t  seq_nr,
sender_id_t  sender_id 
) [protected, pure virtual]
+
+
+ +

+ +

+Implemented in NullCypher, and AesIcmCypher. +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classCypher.png b/doc/html/classCypher.png new file mode 100644 index 0000000..b7081e0 Binary files /dev/null and b/doc/html/classCypher.png differ diff --git a/doc/html/classHmacAuthAlgo-members.html b/doc/html/classHmacAuthAlgo-members.html new file mode 100644 index 0000000..2d3ff6c --- /dev/null +++ b/doc/html/classHmacAuthAlgo-members.html @@ -0,0 +1,29 @@ + + +anytun: Member List + + + + +
+
+
+
+

HmacAuthAlgo Member List

This is the complete list of members for HmacAuthAlgo, including all inherited members.

+ + + +
AuthAlgo()AuthAlgo [inline]
calc(const Buffer &buf)HmacAuthAlgo [virtual]
~AuthAlgo()AuthAlgo [inline, virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classHmacAuthAlgo.html b/doc/html/classHmacAuthAlgo.html new file mode 100644 index 0000000..0ac3279 --- /dev/null +++ b/doc/html/classHmacAuthAlgo.html @@ -0,0 +1,63 @@ + + +anytun: HmacAuthAlgo Class Reference + + + + +
+
+
+
+

HmacAuthAlgo Class Reference

#include <authAlgo.h> +

+

Inheritance diagram for HmacAuthAlgo: +

+ +AuthAlgo + +List of all members. + + + + +

Public Member Functions

auth_tag_t calc (const Buffer &buf)
+

Member Function Documentation

+ +
+
+ + + + + + + + + +
auth_tag_t HmacAuthAlgo::calc (const Buffer buf  )  [virtual]
+
+
+ +

+ +

+Implements AuthAlgo. +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classHmacAuthAlgo.png b/doc/html/classHmacAuthAlgo.png new file mode 100644 index 0000000..d7059e2 Binary files /dev/null and b/doc/html/classHmacAuthAlgo.png differ diff --git a/doc/html/classKeyDerivation-members.html b/doc/html/classKeyDerivation-members.html new file mode 100644 index 0000000..ec0e481 --- /dev/null +++ b/doc/html/classKeyDerivation-members.html @@ -0,0 +1,36 @@ + + +anytun: Member List + + + + +
+
+
+
+

KeyDerivation Member List

This is the complete list of members for KeyDerivation, including all inherited members.

+ + + + + + + + + + +
cipher_KeyDerivation [protected]
clear()KeyDerivation
generate(satp_prf_label label, seq_nr_t seq_nr, Buffer &key, uint32_t length)KeyDerivation
init(Buffer key, Buffer salt)KeyDerivation
KeyDerivation()KeyDerivation [inline]
ld_kdr_KeyDerivation [protected]
MIN_GCRYPT_VERSIONKeyDerivation [static]
salt_KeyDerivation [protected]
setLogKDRate(const uint8_t ld_rate)KeyDerivation
~KeyDerivation()KeyDerivation [inline, virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classKeyDerivation.html b/doc/html/classKeyDerivation.html new file mode 100644 index 0000000..111a3fd --- /dev/null +++ b/doc/html/classKeyDerivation.html @@ -0,0 +1,265 @@ + + +anytun: KeyDerivation Class Reference + + + + +
+
+
+
+

KeyDerivation Class Reference

#include <keyDerivation.h> +

+List of all members. + + + + + + + + + + + + + + + + + + + + + + + + +

Public Member Functions

 KeyDerivation ()
virtual ~KeyDerivation ()
void init (Buffer key, Buffer salt)
err_status_t setLogKDRate (const uint8_t ld_rate)
err_status_t generate (satp_prf_label label, seq_nr_t seq_nr, Buffer &key, uint32_t length)
void clear ()

Static Public Attributes

static const std::string MIN_GCRYPT_VERSION

Protected Attributes

int8_t ld_kdr_
Buffer salt_
gcry_cipher_hd_t cipher_
+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
KeyDerivation::KeyDerivation (  )  [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
virtual KeyDerivation::~KeyDerivation (  )  [inline, virtual]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
void KeyDerivation::init (Buffer  key,
Buffer  salt 
)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
err_status_t KeyDerivation::setLogKDRate (const uint8_t  ld_rate  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
err_status_t KeyDerivation::generate (satp_prf_label  label,
seq_nr_t  seq_nr,
Buffer key,
uint32_t  length 
)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
void KeyDerivation::clear (  ) 
+
+
+ +

+ +

+

+


Member Data Documentation

+ +
+
+ + + + +
const std::string KeyDerivation::MIN_GCRYPT_VERSION [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
int8_t KeyDerivation::ld_kdr_ [protected]
+
+
+ +

+ +

+

+ +

+
+ + + + +
Buffer KeyDerivation::salt_ [protected]
+
+
+ +

+ +

+

+ +

+
+ + + + +
gcry_cipher_hd_t KeyDerivation::cipher_ [protected]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classLock-members.html b/doc/html/classLock-members.html new file mode 100644 index 0000000..fc2f281 --- /dev/null +++ b/doc/html/classLock-members.html @@ -0,0 +1,31 @@ + + +anytun: Member List + + + + +
+
+
+
+

Lock Member List

This is the complete list of members for Lock, including all inherited members.

+ + + + + +
Lock(Mutex &m)Lock [inline]
Lock(const Lock &src)Lock [private]
mutexLock [private]
operator=(const Lock &src)Lock [private]
~Lock()Lock [inline]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classLock.html b/doc/html/classLock.html new file mode 100644 index 0000000..53dae61 --- /dev/null +++ b/doc/html/classLock.html @@ -0,0 +1,142 @@ + + +anytun: Lock Class Reference + + + + +
+
+
+
+

Lock Class Reference

#include <threadUtils.hpp> +

+List of all members. + + + + + + + + + + + + + + +

Public Member Functions

 Lock (Mutex &m)
 ~Lock ()

Private Member Functions

 Lock (const Lock &src)
void operator= (const Lock &src)

Private Attributes

Mutexmutex
+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + +
Lock::Lock (Mutex m  )  [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
Lock::~Lock (  )  [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Lock::Lock (const Lock src  )  [private]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + + +
void Lock::operator= (const Lock src  )  [private]
+
+
+ +

+ +

+

+


Member Data Documentation

+ +
+
+ + + + +
Mutex& Lock::mutex [private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following file: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classLog-members.html b/doc/html/classLog-members.html new file mode 100644 index 0000000..66945fc --- /dev/null +++ b/doc/html/classLog-members.html @@ -0,0 +1,71 @@ + + +anytun: Member List + + + + +
+
+
+
+

Log Member List

This is the complete list of members for Log, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FAC_AUTHLog [static]
FAC_AUTHPRIVLog [static]
FAC_CRONLog [static]
FAC_DAEMONLog [static]
FAC_FTPLog [static]
FAC_LOCAL0Log [static]
FAC_LOCAL1Log [static]
FAC_LOCAL2Log [static]
FAC_LOCAL3Log [static]
FAC_LOCAL4Log [static]
FAC_LOCAL5Log [static]
FAC_LOCAL6Log [static]
FAC_LOCAL7Log [static]
FAC_LPRLog [static]
FAC_MAILLog [static]
FAC_NEWSLog [static]
FAC_SYSLOGLog [static]
FAC_USERLog [static]
FAC_UUCPLog [static]
facilityLog [private]
getFacility() constLog [inline]
getLogName() constLog [inline]
instLog [private, static]
instance()Log [static]
instanceCleaner classLog [friend]
instMutexLog [private, static]
Log()Log [private]
Log(const Log &l)Log [private]
logNameLog [private]
LogStringBuilder classLog [friend]
msg(int prio=PRIO_INFO)Log [inline]
mutexLog [private]
open()Log [private]
operator=(const Log &l)Log [private]
PRIO_ALERTLog [static]
PRIO_CRITLog [static]
PRIO_DEBUGLog [static]
PRIO_EMERGLog [static]
PRIO_ERRLog [static]
PRIO_INFOLog [static]
PRIO_NOTICELog [static]
PRIO_WARNINGLog [static]
setFacility(int newFacility)Log
setLogName(std::string newLogName)Log
~Log()Log [private]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classLog.html b/doc/html/classLog.html new file mode 100644 index 0000000..c463700 --- /dev/null +++ b/doc/html/classLog.html @@ -0,0 +1,860 @@ + + +anytun: Log Class Reference + + + + +
+
+
+
+

Log Class Reference

#include <log.h> +

+List of all members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Member Functions

LogsetLogName (std::string newLogName)
std::string getLogName () const
LogsetFacility (int newFacility)
int getFacility () const
LogStringBuilder msg (int prio=PRIO_INFO)

Static Public Member Functions

static Loginstance ()

Static Public Attributes

static const int FAC_USER = LOG_USER
static const int FAC_MAIL = LOG_MAIL
static const int FAC_DAEMON = LOG_DAEMON
static const int FAC_AUTH = LOG_AUTH
static const int FAC_SYSLOG = LOG_SYSLOG
static const int FAC_LPR = LOG_LPR
static const int FAC_NEWS = LOG_NEWS
static const int FAC_UUCP = LOG_UUCP
static const int FAC_CRON = LOG_CRON
static const int FAC_AUTHPRIV = LOG_AUTHPRIV
static const int FAC_FTP = LOG_FTP
static const int FAC_LOCAL0 = LOG_LOCAL0
static const int FAC_LOCAL1 = LOG_LOCAL1
static const int FAC_LOCAL2 = LOG_LOCAL2
static const int FAC_LOCAL3 = LOG_LOCAL3
static const int FAC_LOCAL4 = LOG_LOCAL4
static const int FAC_LOCAL5 = LOG_LOCAL5
static const int FAC_LOCAL6 = LOG_LOCAL6
static const int FAC_LOCAL7 = LOG_LOCAL7
static const int PRIO_EMERG = LOG_EMERG
static const int PRIO_ALERT = LOG_ALERT
static const int PRIO_CRIT = LOG_CRIT
static const int PRIO_ERR = LOG_ERR
static const int PRIO_WARNING = LOG_WARNING
static const int PRIO_NOTICE = LOG_NOTICE
static const int PRIO_INFO = LOG_INFO
static const int PRIO_DEBUG = LOG_DEBUG

Private Member Functions

 Log ()
 ~Log ()
 Log (const Log &l)
void operator= (const Log &l)
void open ()

Private Attributes

Mutex mutex
std::string logName
int facility

Static Private Attributes

static Loginst
static Mutex instMutex

Friends

class instanceCleaner
class LogStringBuilder

Classes

class  instanceCleaner
+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
Log::Log (  )  [private]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
Log::~Log (  )  [private]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Log::Log (const Log l  )  [private]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
Log & Log::instance (  )  [static]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Log & Log::setLogName (std::string  newLogName  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
std::string Log::getLogName (  )  const [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Log & Log::setFacility (int  newFacility  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
int Log::getFacility (  )  const [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
LogStringBuilder Log::msg (int  prio = PRIO_INFO  )  [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
void Log::operator= (const Log l  )  [private]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
void Log::open (  )  [private]
+
+
+ +

+ +

+

+


Friends And Related Function Documentation

+ +
+
+ + + + +
friend class instanceCleaner [friend]
+
+
+ +

+ +

+

+ +

+
+ + + + +
friend class LogStringBuilder [friend]
+
+
+ +

+ +

+

+


Member Data Documentation

+ +
+
+ + + + +
const int Log::FAC_USER = LOG_USER [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_MAIL = LOG_MAIL [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_DAEMON = LOG_DAEMON [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_AUTH = LOG_AUTH [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_SYSLOG = LOG_SYSLOG [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_LPR = LOG_LPR [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_NEWS = LOG_NEWS [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_UUCP = LOG_UUCP [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_CRON = LOG_CRON [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_AUTHPRIV = LOG_AUTHPRIV [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_FTP = LOG_FTP [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_LOCAL0 = LOG_LOCAL0 [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_LOCAL1 = LOG_LOCAL1 [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_LOCAL2 = LOG_LOCAL2 [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_LOCAL3 = LOG_LOCAL3 [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_LOCAL4 = LOG_LOCAL4 [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_LOCAL5 = LOG_LOCAL5 [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_LOCAL6 = LOG_LOCAL6 [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::FAC_LOCAL7 = LOG_LOCAL7 [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::PRIO_EMERG = LOG_EMERG [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::PRIO_ALERT = LOG_ALERT [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::PRIO_CRIT = LOG_CRIT [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::PRIO_ERR = LOG_ERR [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::PRIO_WARNING = LOG_WARNING [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::PRIO_NOTICE = LOG_NOTICE [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::PRIO_INFO = LOG_INFO [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const int Log::PRIO_DEBUG = LOG_DEBUG [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
Log * Log::inst [static, private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
Mutex Log::instMutex [static, private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
Mutex Log::mutex [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
std::string Log::logName [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
int Log::facility [private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classLogStringBuilder-members.html b/doc/html/classLogStringBuilder-members.html new file mode 100644 index 0000000..992279e --- /dev/null +++ b/doc/html/classLogStringBuilder-members.html @@ -0,0 +1,33 @@ + + +anytun: Member List + + + + +
+
+
+
+

LogStringBuilder Member List

This is the complete list of members for LogStringBuilder, including all inherited members.

+ + + + + + + +
logLogStringBuilder [private]
LogStringBuilder(LogStringBuilder const &src)LogStringBuilder
LogStringBuilder(Log &l, int p)LogStringBuilder
operator<<(T const &value)LogStringBuilder [inline]
prioLogStringBuilder [private]
streamLogStringBuilder [private]
~LogStringBuilder()LogStringBuilder


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classLogStringBuilder.html b/doc/html/classLogStringBuilder.html new file mode 100644 index 0000000..ed7f92d --- /dev/null +++ b/doc/html/classLogStringBuilder.html @@ -0,0 +1,187 @@ + + +anytun: LogStringBuilder Class Reference + + + + +
+
+
+
+

LogStringBuilder Class Reference

#include <log.h> +

+List of all members. + + + + + + + + + + + + + + + + + + +

Public Member Functions

 LogStringBuilder (LogStringBuilder const &src)
 LogStringBuilder (Log &l, int p)
 ~LogStringBuilder ()
template<class T>
std::ostream & operator<< (T const &value)

Private Attributes

Loglog
int prio
std::stringstream stream
+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + +
LogStringBuilder::LogStringBuilder (LogStringBuilder const &  src  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + + + + + + + + + + +
LogStringBuilder::LogStringBuilder (Log l,
int  p 
)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
LogStringBuilder::~LogStringBuilder (  ) 
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+
+template<class T>
+ + + + + + + + + +
std::ostream& LogStringBuilder::operator<< (T const &  value  )  [inline]
+
+
+ +

+ +

+

+


Member Data Documentation

+ +
+
+ + + + +
Log& LogStringBuilder::log [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
int LogStringBuilder::prio [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
std::stringstream LogStringBuilder::stream [private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classLog_1_1instanceCleaner-members.html b/doc/html/classLog_1_1instanceCleaner-members.html new file mode 100644 index 0000000..f77bcb3 --- /dev/null +++ b/doc/html/classLog_1_1instanceCleaner-members.html @@ -0,0 +1,27 @@ + + +anytun: Member List + + + + +
+
+
+
+

Log::instanceCleaner Member List

This is the complete list of members for Log::instanceCleaner, including all inherited members.

+ +
~instanceCleaner()Log::instanceCleaner [inline]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classLog_1_1instanceCleaner.html b/doc/html/classLog_1_1instanceCleaner.html new file mode 100644 index 0000000..189d2d2 --- /dev/null +++ b/doc/html/classLog_1_1instanceCleaner.html @@ -0,0 +1,55 @@ + + +anytun: Log::instanceCleaner Class Reference + + + + +
+
+
+
+ +

Log::instanceCleaner Class Reference

List of all members. + + + + +

Public Member Functions

 ~instanceCleaner ()
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
Log::instanceCleaner::~instanceCleaner (  )  [inline]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following file: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classMutex-members.html b/doc/html/classMutex-members.html new file mode 100644 index 0000000..0f56161 --- /dev/null +++ b/doc/html/classMutex-members.html @@ -0,0 +1,35 @@ + + +anytun: Member List + + + + +
+
+
+
+

Mutex Member List

This is the complete list of members for Mutex, including all inherited members.

+ + + + + + + + + +
Condition classMutex [friend]
Lock classMutex [friend]
lock()Mutex [inline, private]
Mutex()Mutex [inline]
Mutex(const Mutex &src)Mutex [private]
mutexMutex [private]
operator=(const Mutex &src)Mutex [private]
unlock()Mutex [inline, private]
~Mutex()Mutex [inline]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classMutex.html b/doc/html/classMutex.html new file mode 100644 index 0000000..484c40d --- /dev/null +++ b/doc/html/classMutex.html @@ -0,0 +1,219 @@ + + +anytun: Mutex Class Reference + + + + +
+
+
+
+

Mutex Class Reference

#include <threadUtils.hpp> +

+List of all members. + + + + + + + + + + + + + + + + + + + + + + + +

Public Member Functions

 Mutex ()
 ~Mutex ()

Private Member Functions

 Mutex (const Mutex &src)
void operator= (const Mutex &src)
void lock ()
void unlock ()

Private Attributes

pthread_mutex_t mutex

Friends

class Lock
class Condition
+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
Mutex::Mutex (  )  [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
Mutex::~Mutex (  )  [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Mutex::Mutex (const Mutex src  )  [private]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + + +
void Mutex::operator= (const Mutex src  )  [private]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
void Mutex::lock (  )  [inline, private]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
void Mutex::unlock (  )  [inline, private]
+
+
+ +

+ +

+

+


Friends And Related Function Documentation

+ +
+
+ + + + +
friend class Lock [friend]
+
+
+ +

+ +

+

+ +

+
+ + + + +
friend class Condition [friend]
+
+
+ +

+ +

+

+


Member Data Documentation

+ +
+
+ + + + +
pthread_mutex_t Mutex::mutex [private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following file: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classNullAuthAlgo-members.html b/doc/html/classNullAuthAlgo-members.html new file mode 100644 index 0000000..7cba7e5 --- /dev/null +++ b/doc/html/classNullAuthAlgo-members.html @@ -0,0 +1,29 @@ + + +anytun: Member List + + + + +
+
+
+
+

NullAuthAlgo Member List

This is the complete list of members for NullAuthAlgo, including all inherited members.

+ + + +
AuthAlgo()AuthAlgo [inline]
calc(const Buffer &buf)NullAuthAlgo [virtual]
~AuthAlgo()AuthAlgo [inline, virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classNullAuthAlgo.html b/doc/html/classNullAuthAlgo.html new file mode 100644 index 0000000..f934fda --- /dev/null +++ b/doc/html/classNullAuthAlgo.html @@ -0,0 +1,63 @@ + + +anytun: NullAuthAlgo Class Reference + + + + +
+
+
+
+

NullAuthAlgo Class Reference

#include <authAlgo.h> +

+

Inheritance diagram for NullAuthAlgo: +

+ +AuthAlgo + +List of all members. + + + + +

Public Member Functions

auth_tag_t calc (const Buffer &buf)
+

Member Function Documentation

+ +
+
+ + + + + + + + + +
auth_tag_t NullAuthAlgo::calc (const Buffer buf  )  [virtual]
+
+
+ +

+ +

+Implements AuthAlgo. +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classNullAuthAlgo.png b/doc/html/classNullAuthAlgo.png new file mode 100644 index 0000000..cdfd518 Binary files /dev/null and b/doc/html/classNullAuthAlgo.png differ diff --git a/doc/html/classNullCypher-members.html b/doc/html/classNullCypher-members.html new file mode 100644 index 0000000..5d015ea --- /dev/null +++ b/doc/html/classNullCypher-members.html @@ -0,0 +1,33 @@ + + +anytun: Member List + + + + +
+
+
+
+

NullCypher Member List

This is the complete list of members for NullCypher, including all inherited members.

+ + + + + + + +
Cypher()Cypher [inline]
cypher(Buffer &buf, seq_nr_t seq_nr, sender_id_t sender_id)Cypher
exor(Buffer &buf, const Buffer &bit_stream)Cypher [protected]
getBitStream(u_int32_t length, seq_nr_t seq_nr, sender_id_t sender_id)NullCypher [protected, virtual]
setKey(Buffer key)Cypher [inline]
setSalt(Buffer salt)Cypher [inline]
~Cypher()Cypher [inline, virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classNullCypher.html b/doc/html/classNullCypher.html new file mode 100644 index 0000000..f669d9d --- /dev/null +++ b/doc/html/classNullCypher.html @@ -0,0 +1,78 @@ + + +anytun: NullCypher Class Reference + + + + +
+
+
+
+

NullCypher Class Reference

#include <cypher.h> +

+

Inheritance diagram for NullCypher: +

+ +Cypher + +List of all members. + + + + +

Protected Member Functions

Buffer getBitStream (u_int32_t length, seq_nr_t seq_nr, sender_id_t sender_id)
+

Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Buffer NullCypher::getBitStream (u_int32_t  length,
seq_nr_t  seq_nr,
sender_id_t  sender_id 
) [protected, virtual]
+
+
+ +

+ +

+Implements Cypher. +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classNullCypher.png b/doc/html/classNullCypher.png new file mode 100644 index 0000000..256fd36 Binary files /dev/null and b/doc/html/classNullCypher.png differ diff --git a/doc/html/classOptions-members.html b/doc/html/classOptions-members.html new file mode 100644 index 0000000..44cbfbe --- /dev/null +++ b/doc/html/classOptions-members.html @@ -0,0 +1,71 @@ + + +anytun: Member List + + + + +
+
+
+
+

Options Member List

This is the complete list of members for Options, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
auth_algo_Options [private]
cypher_Options [private]
dev_name_Options [private]
dev_type_Options [private]
getAuthAlgo()Options
getCypher()Options
getDevName()Options
getDevType()Options
getIfconfigParamLocal()Options
getIfconfigParamRemoteNetmask()Options
getLocalAddr()Options
getLocalPort()Options
getProgname()Options
getRemoteAddr()Options
getRemotePort()Options
getSenderId()Options
getSeqWindowSize()Options
ifconfig_param_local_Options [private]
ifconfig_param_remote_netmask_Options [private]
local_addr_Options [private]
local_port_Options [private]
mutexOptions [private]
Options()Options
parse(int argc, char *argv[])Options
printOptions()Options
printUsage()Options
progname_Options [private]
remote_addr_Options [private]
remote_port_Options [private]
sender_id_Options [private]
seq_window_size_Options [private]
setAuthAlgo(std::string a)Options
setCypher(std::string c)Options
setDevName(std::string d)Options
setDevType(std::string d)Options
setIfconfigParamLocal(std::string i)Options
setIfconfigParamRemoteNetmask(std::string i)Options
setLocalAddr(std::string l)Options
setLocalPort(u_int16_t l)Options
setProgname(std::string p)Options
setRemoteAddr(std::string r)Options
setRemoteAddrPort(std::string addr, u_int16_t port)Options
setRemotePort(u_int16_t r)Options
setSenderId(sender_id_t s)Options
setSeqWindowSize(window_size_t s)Options


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classOptions.html b/doc/html/classOptions.html new file mode 100644 index 0000000..fdf2311 --- /dev/null +++ b/doc/html/classOptions.html @@ -0,0 +1,959 @@ + + +anytun: Options Class Reference + + + + +
+
+
+
+

Options Class Reference

#include <options.h> +

+List of all members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Member Functions

 Options ()
bool parse (int argc, char *argv[])
void printUsage ()
void printOptions ()
std::string getProgname ()
OptionssetProgname (std::string p)
sender_id_t getSenderId ()
OptionssetSenderId (sender_id_t s)
std::string getLocalAddr ()
OptionssetLocalAddr (std::string l)
u_int16_t getLocalPort ()
OptionssetLocalPort (u_int16_t l)
std::string getRemoteAddr ()
OptionssetRemoteAddr (std::string r)
u_int16_t getRemotePort ()
OptionssetRemotePort (u_int16_t r)
OptionssetRemoteAddrPort (std::string addr, u_int16_t port)
std::string getDevName ()
OptionssetDevName (std::string d)
std::string getDevType ()
OptionssetDevType (std::string d)
std::string getIfconfigParamLocal ()
OptionssetIfconfigParamLocal (std::string i)
std::string getIfconfigParamRemoteNetmask ()
OptionssetIfconfigParamRemoteNetmask (std::string i)
window_size_t getSeqWindowSize ()
OptionssetSeqWindowSize (window_size_t s)
std::string getCypher ()
OptionssetCypher (std::string c)
std::string getAuthAlgo ()
OptionssetAuthAlgo (std::string a)

Private Attributes

Mutex mutex
std::string progname_
sender_id_t sender_id_
std::string local_addr_
u_int16_t local_port_
std::string remote_addr_
u_int16_t remote_port_
std::string dev_name_
std::string dev_type_
std::string ifconfig_param_local_
std::string ifconfig_param_remote_netmask_
window_size_t seq_window_size_
std::string cypher_
std::string auth_algo_
+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
Options::Options (  ) 
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
bool Options::parse (int  argc,
char *  argv[] 
)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
void Options::printUsage (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
void Options::printOptions (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
std::string Options::getProgname (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Options & Options::setProgname (std::string  p  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
sender_id_t Options::getSenderId (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Options & Options::setSenderId (sender_id_t  s  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
std::string Options::getLocalAddr (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Options & Options::setLocalAddr (std::string  l  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
u_int16_t Options::getLocalPort (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Options & Options::setLocalPort (u_int16_t  l  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
std::string Options::getRemoteAddr (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Options & Options::setRemoteAddr (std::string  r  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
u_int16_t Options::getRemotePort (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Options & Options::setRemotePort (u_int16_t  r  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + + + + + + + + + + +
Options & Options::setRemoteAddrPort (std::string  addr,
u_int16_t  port 
)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
std::string Options::getDevName (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Options & Options::setDevName (std::string  d  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
std::string Options::getDevType (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Options & Options::setDevType (std::string  d  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
std::string Options::getIfconfigParamLocal (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Options & Options::setIfconfigParamLocal (std::string  i  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
std::string Options::getIfconfigParamRemoteNetmask (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Options & Options::setIfconfigParamRemoteNetmask (std::string  i  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
window_size_t Options::getSeqWindowSize (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Options & Options::setSeqWindowSize (window_size_t  s  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
std::string Options::getCypher (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Options & Options::setCypher (std::string  c  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
std::string Options::getAuthAlgo (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Options & Options::setAuthAlgo (std::string  a  ) 
+
+
+ +

+ +

+

+


Member Data Documentation

+ +
+
+ + + + +
Mutex Options::mutex [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
std::string Options::progname_ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
sender_id_t Options::sender_id_ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
std::string Options::local_addr_ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
u_int16_t Options::local_port_ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
std::string Options::remote_addr_ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
u_int16_t Options::remote_port_ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
std::string Options::dev_name_ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
std::string Options::dev_type_ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
std::string Options::ifconfig_param_local_ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
std::string Options::ifconfig_param_remote_netmask_ [private]
+
+
+ +

+ +

+

+ +

+ +
+ +

+ +

+

+ +

+
+ + + + +
std::string Options::cypher_ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
std::string Options::auth_algo_ [private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classPacket-members.html b/doc/html/classPacket-members.html new file mode 100644 index 0000000..b48260a --- /dev/null +++ b/doc/html/classPacket-members.html @@ -0,0 +1,74 @@ + + +anytun: Member List + + + + +
+
+
+
+

Packet Member List

This is the complete list of members for Packet, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
__packed__Packet [private]
addAuthTag(auth_tag_t auth_tag)Packet
addHeader(seq_nr_t seq_nr, sender_id_t sender_id)Packet
addPayloadType(payload_type_t payload_type)Packet
AesIcmCypher classBuffer [friend]
buf_Buffer [protected]
Buffer()Buffer
Buffer(u_int32_t length)Buffer
Buffer(u_int8_t *data, u_int32_t length)Buffer
Buffer(const Buffer &src)Buffer
getAuthTag() constPacket
getBuf()Buffer
getLength() constBuffer
getPayloadType() constPacket
getSenderId() constPacket
getSeqNr() constPacket
has_auth_tag_Packet [private]
has_header_Packet [private]
has_payload_type_Packet [private]
hasAuthTag() constPacket
hasHeader() constPacket
hasPayloadType() constPacket
KeyDerivation classBuffer [friend]
leftByteShift(u_int32_t width) constBuffer [virtual]
length_Buffer [protected]
operator u_int8_t *()Buffer
operator=(const Buffer &src)Buffer
operator[](u_int32_t index)Buffer
operator[](u_int32_t index) constBuffer
operator^(const Buffer &xor_by) const Buffer [virtual]
Packet()Packet
Packet(u_int32_t length)Packet
Packet(const Buffer &src)Packet
printHexDump() constBuffer
removeAuthTag()Packet
removeHeader()Packet
removePayloadType()Packet
resizeBack(u_int32_t new_length)Buffer
resizeFront(u_int32_t new_length)Buffer
rightByteShift(u_int32_t width) constBuffer [virtual]
setSenderId(sender_id_t sender_id)Packet
setSeqNr(seq_nr_t seq_nr)Packet
TunDevice classBuffer [friend]
UDPPacketSource classBuffer [friend]
withAuthTag(bool b)Packet
withHeader(bool b)Packet
withPayloadType(bool b)Packet
~Buffer()Buffer [virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classPacket.html b/doc/html/classPacket.html new file mode 100644 index 0000000..5d2c14d --- /dev/null +++ b/doc/html/classPacket.html @@ -0,0 +1,574 @@ + + +anytun: Packet Class Reference + + + + +
+
+
+
+

Packet Class Reference

#include <packet.h> +

+

Inheritance diagram for Packet: +

+ +Buffer +satp::SATP + +List of all members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Member Functions

 Packet ()
 Packet (u_int32_t length)
 Packet (const Buffer &src)
bool hasHeader () const
PacketwithHeader (bool b)
seq_nr_t getSeqNr () const
sender_id_t getSenderId () const
PacketaddHeader (seq_nr_t seq_nr, sender_id_t sender_id)
PacketremoveHeader ()
PacketsetSeqNr (seq_nr_t seq_nr)
PacketsetSenderId (sender_id_t sender_id)
bool hasPayloadType () const
PacketwithPayloadType (bool b)
payload_type_t getPayloadType () const
PacketaddPayloadType (payload_type_t payload_type)
PacketremovePayloadType ()
bool hasAuthTag () const
PacketwithAuthTag (bool b)
auth_tag_t getAuthTag () const
PacketaddAuthTag (auth_tag_t auth_tag)
PacketremoveAuthTag ()

Private Attributes

Packet::HeaderStruct __packed__
bool has_header_
bool has_payload_type_
bool has_auth_tag_

Classes

struct  HeaderStruct
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
Packet::Packet (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Packet::Packet (u_int32_t  length  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Packet::Packet (const Buffer src  ) 
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
bool Packet::hasHeader (  )  const
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Packet & Packet::withHeader (bool  b  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
seq_nr_t Packet::getSeqNr (  )  const
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
sender_id_t Packet::getSenderId (  )  const
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + + + + + + + + + + +
Packet & Packet::addHeader (seq_nr_t  seq_nr,
sender_id_t  sender_id 
)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
Packet & Packet::removeHeader (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Packet & Packet::setSeqNr (seq_nr_t  seq_nr  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Packet & Packet::setSenderId (sender_id_t  sender_id  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
bool Packet::hasPayloadType (  )  const
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Packet & Packet::withPayloadType (bool  b  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
payload_type_t Packet::getPayloadType (  )  const
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Packet & Packet::addPayloadType (payload_type_t  payload_type  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
Packet & Packet::removePayloadType (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
bool Packet::hasAuthTag (  )  const
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Packet & Packet::withAuthTag (bool  b  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
auth_tag_t Packet::getAuthTag (  )  const
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Packet & Packet::addAuthTag (auth_tag_t  auth_tag  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
Packet & Packet::removeAuthTag (  ) 
+
+
+ +

+ +

+

+


Member Data Documentation

+ +
+
+ + + + +
struct Packet::HeaderStruct Packet::__packed__ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
bool Packet::has_header_ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
bool Packet::has_payload_type_ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
bool Packet::has_auth_tag_ [private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classPacket.png b/doc/html/classPacket.png new file mode 100644 index 0000000..fe021c7 Binary files /dev/null and b/doc/html/classPacket.png differ diff --git a/doc/html/classPacketSource-members.html b/doc/html/classPacketSource-members.html new file mode 100644 index 0000000..4f36fa3 --- /dev/null +++ b/doc/html/classPacketSource-members.html @@ -0,0 +1,29 @@ + + +anytun: Member List + + + + +
+
+
+
+

PacketSource Member List

This is the complete list of members for PacketSource, including all inherited members.

+ + + +
recv(Buffer &buf, std::string &addr, u_int16_t &port)=0PacketSource [pure virtual]
send(Buffer &buf, std::string addr, u_int16_t port)=0PacketSource [pure virtual]
~PacketSource()PacketSource [inline, virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classPacketSource.html b/doc/html/classPacketSource.html new file mode 100644 index 0000000..58e59e5 --- /dev/null +++ b/doc/html/classPacketSource.html @@ -0,0 +1,139 @@ + + +anytun: PacketSource Class Reference + + + + +
+
+
+
+

PacketSource Class Reference

#include <packetSource.h> +

+

Inheritance diagram for PacketSource: +

+ +UDPPacketSource + +List of all members. + + + + + + + + +

Public Member Functions

virtual ~PacketSource ()
virtual u_int32_t recv (Buffer &buf, std::string &addr, u_int16_t &port)=0
virtual void send (Buffer &buf, std::string addr, u_int16_t port)=0
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
virtual PacketSource::~PacketSource (  )  [inline, virtual]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual u_int32_t PacketSource::recv (Buffer buf,
std::string &  addr,
u_int16_t port 
) [pure virtual]
+
+
+ +

+ +

+Implemented in UDPPacketSource. +

+

+ +

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void PacketSource::send (Buffer buf,
std::string  addr,
u_int16_t  port 
) [pure virtual]
+
+
+ +

+ +

+Implemented in UDPPacketSource. +

+

+


The documentation for this class was generated from the following file: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classPacketSource.png b/doc/html/classPacketSource.png new file mode 100644 index 0000000..1f0d587 Binary files /dev/null and b/doc/html/classPacketSource.png differ diff --git a/doc/html/classSemaphore-members.html b/doc/html/classSemaphore-members.html new file mode 100644 index 0000000..e4c22d3 --- /dev/null +++ b/doc/html/classSemaphore-members.html @@ -0,0 +1,31 @@ + + +anytun: Member List + + + + +
+
+
+
+

Semaphore Member List

This is the complete list of members for Semaphore, including all inherited members.

+ + + + + +
down()Semaphore [inline]
semSemaphore [private]
Semaphore(unsigned int initVal=0)Semaphore [inline]
up()Semaphore [inline]
~Semaphore()Semaphore [inline]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSemaphore.html b/doc/html/classSemaphore.html new file mode 100644 index 0000000..f2123df --- /dev/null +++ b/doc/html/classSemaphore.html @@ -0,0 +1,139 @@ + + +anytun: Semaphore Class Reference + + + + +
+
+
+
+

Semaphore Class Reference

#include <threadUtils.hpp> +

+List of all members. + + + + + + + + + + + + + +

Public Member Functions

 Semaphore (unsigned int initVal=0)
 ~Semaphore ()
void down ()
void up ()

Private Attributes

sem_t sem
+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + +
Semaphore::Semaphore (unsigned int  initVal = 0  )  [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
Semaphore::~Semaphore (  )  [inline]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
void Semaphore::down (  )  [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
void Semaphore::up (  )  [inline]
+
+
+ +

+ +

+

+


Member Data Documentation

+ +
+
+ + + + +
sem_t Semaphore::sem [private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following file: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSeqWindow-members.html b/doc/html/classSeqWindow-members.html new file mode 100644 index 0000000..d277d88 --- /dev/null +++ b/doc/html/classSeqWindow-members.html @@ -0,0 +1,40 @@ + + +anytun: Member List + + + + +
+
+
+
+

SeqWindow Member List

This is the complete list of members for SeqWindow, including all inherited members.

+ + + + + + + + + + + + + + +
addSeqNr(sender_id_t sender, seq_nr_t seq)SeqWindow
clear(sender_id_t sender)SeqWindow
clear()SeqWindow
getLength(sender_id_t sender)SeqWindow
hasSeqNr(sender_id_t sender, seq_nr_t seq)SeqWindow
mutex_SeqWindow [private]
operator=(const SeqWindow &s)SeqWindow [private]
sender_SeqWindow [private]
SenderMap typedefSeqWindow
SeqDeque typedefSeqWindow
SeqWindow(window_size_t w)SeqWindow
SeqWindow(const SeqWindow &s)SeqWindow [private]
window_size_SeqWindow [private]
~SeqWindow()SeqWindow


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSeqWindow.html b/doc/html/classSeqWindow.html new file mode 100644 index 0000000..4e2bd78 --- /dev/null +++ b/doc/html/classSeqWindow.html @@ -0,0 +1,340 @@ + + +anytun: SeqWindow Class Reference + + + + +
+
+
+
+

SeqWindow Class Reference

#include <seqWindow.h> +

+List of all members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Types

typedef std::deque< seq_nr_tSeqDeque
typedef std::map< sender_id_t,
+ SeqDeque
SenderMap

Public Member Functions

 SeqWindow (window_size_t w)
 ~SeqWindow ()
SeqDeque::size_type getLength (sender_id_t sender)
bool hasSeqNr (sender_id_t sender, seq_nr_t seq)
void addSeqNr (sender_id_t sender, seq_nr_t seq)
void clear (sender_id_t sender)
void clear ()

Private Member Functions

 SeqWindow (const SeqWindow &s)
void operator= (const SeqWindow &s)

Private Attributes

window_size_t window_size_
Mutex mutex_
SenderMap sender_
+


Member Typedef Documentation

+ +
+
+ + + + +
typedef std::deque<seq_nr_t> SeqWindow::SeqDeque
+
+
+ +

+ +

+

+ +

+
+ + + + +
typedef std::map<sender_id_t, SeqDeque> SeqWindow::SenderMap
+
+
+ +

+ +

+

+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + +
SeqWindow::SeqWindow (window_size_t  w  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
SeqWindow::~SeqWindow (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
SeqWindow::SeqWindow (const SeqWindow s  )  [private]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + + +
SeqWindow::SeqDeque::size_type SeqWindow::getLength (sender_id_t  sender  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + + + + + + + + + + +
bool SeqWindow::hasSeqNr (sender_id_t  sender,
seq_nr_t  seq 
)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + + + + + + + + + + +
void SeqWindow::addSeqNr (sender_id_t  sender,
seq_nr_t  seq 
)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
void SeqWindow::clear (sender_id_t  sender  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
void SeqWindow::clear (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
void SeqWindow::operator= (const SeqWindow s  )  [private]
+
+
+ +

+ +

+

+


Member Data Documentation

+ +
+
+ + + + +
window_size_t SeqWindow::window_size_ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
Mutex SeqWindow::mutex_ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
SenderMap SeqWindow::sender_ [private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSigHupHandler-members.html b/doc/html/classSigHupHandler-members.html new file mode 100644 index 0000000..6205d43 --- /dev/null +++ b/doc/html/classSigHupHandler-members.html @@ -0,0 +1,30 @@ + + +anytun: Member List + + + + +
+
+
+
+

SigHupHandler Member List

This is the complete list of members for SigHupHandler, including all inherited members.

+ + + + +
handle()SigHupHandler [virtual]
SigHupHandler()SigHupHandler [inline]
SignalHandler(int s)SignalHandler [inline, protected]
~SignalHandler()SignalHandler [inline, virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSigHupHandler.html b/doc/html/classSigHupHandler.html new file mode 100644 index 0000000..364406a --- /dev/null +++ b/doc/html/classSigHupHandler.html @@ -0,0 +1,84 @@ + + +anytun: SigHupHandler Class Reference + + + + +
+
+
+
+

SigHupHandler Class Reference

#include <signalController.h> +

+

Inheritance diagram for SigHupHandler: +

+ +SignalHandler + +List of all members. + + + + + + +

Public Member Functions

 SigHupHandler ()
int handle ()
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
SigHupHandler::SigHupHandler (  )  [inline]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
int SigHupHandler::handle (  )  [virtual]
+
+
+ +

+ +

+Reimplemented from SignalHandler. +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSigHupHandler.png b/doc/html/classSigHupHandler.png new file mode 100644 index 0000000..dda04a9 Binary files /dev/null and b/doc/html/classSigHupHandler.png differ diff --git a/doc/html/classSigIntHandler-members.html b/doc/html/classSigIntHandler-members.html new file mode 100644 index 0000000..ea0d4b4 --- /dev/null +++ b/doc/html/classSigIntHandler-members.html @@ -0,0 +1,30 @@ + + +anytun: Member List + + + + +
+
+
+
+

SigIntHandler Member List

This is the complete list of members for SigIntHandler, including all inherited members.

+ + + + +
handle()SigIntHandler [virtual]
SigIntHandler()SigIntHandler [inline]
SignalHandler(int s)SignalHandler [inline, protected]
~SignalHandler()SignalHandler [inline, virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSigIntHandler.html b/doc/html/classSigIntHandler.html new file mode 100644 index 0000000..51939ae --- /dev/null +++ b/doc/html/classSigIntHandler.html @@ -0,0 +1,84 @@ + + +anytun: SigIntHandler Class Reference + + + + +
+
+
+
+

SigIntHandler Class Reference

#include <signalController.h> +

+

Inheritance diagram for SigIntHandler: +

+ +SignalHandler + +List of all members. + + + + + + +

Public Member Functions

 SigIntHandler ()
int handle ()
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
SigIntHandler::SigIntHandler (  )  [inline]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
int SigIntHandler::handle (  )  [virtual]
+
+
+ +

+ +

+Reimplemented from SignalHandler. +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSigIntHandler.png b/doc/html/classSigIntHandler.png new file mode 100644 index 0000000..a11134b Binary files /dev/null and b/doc/html/classSigIntHandler.png differ diff --git a/doc/html/classSigQuitHandler-members.html b/doc/html/classSigQuitHandler-members.html new file mode 100644 index 0000000..0aa24bd --- /dev/null +++ b/doc/html/classSigQuitHandler-members.html @@ -0,0 +1,30 @@ + + +anytun: Member List + + + + +
+
+
+
+

SigQuitHandler Member List

This is the complete list of members for SigQuitHandler, including all inherited members.

+ + + + +
handle()SigQuitHandler [virtual]
SignalHandler(int s)SignalHandler [inline, protected]
SigQuitHandler()SigQuitHandler [inline]
~SignalHandler()SignalHandler [inline, virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSigQuitHandler.html b/doc/html/classSigQuitHandler.html new file mode 100644 index 0000000..e191701 --- /dev/null +++ b/doc/html/classSigQuitHandler.html @@ -0,0 +1,84 @@ + + +anytun: SigQuitHandler Class Reference + + + + +
+
+
+
+

SigQuitHandler Class Reference

#include <signalController.h> +

+

Inheritance diagram for SigQuitHandler: +

+ +SignalHandler + +List of all members. + + + + + + +

Public Member Functions

 SigQuitHandler ()
int handle ()
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
SigQuitHandler::SigQuitHandler (  )  [inline]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
int SigQuitHandler::handle (  )  [virtual]
+
+
+ +

+ +

+Reimplemented from SignalHandler. +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSigQuitHandler.png b/doc/html/classSigQuitHandler.png new file mode 100644 index 0000000..d223fbd Binary files /dev/null and b/doc/html/classSigQuitHandler.png differ diff --git a/doc/html/classSigTermHandler-members.html b/doc/html/classSigTermHandler-members.html new file mode 100644 index 0000000..bbd5939 --- /dev/null +++ b/doc/html/classSigTermHandler-members.html @@ -0,0 +1,30 @@ + + +anytun: Member List + + + + +
+
+
+
+

SigTermHandler Member List

This is the complete list of members for SigTermHandler, including all inherited members.

+ + + + +
handle()SigTermHandler [virtual]
SignalHandler(int s)SignalHandler [inline, protected]
SigTermHandler()SigTermHandler [inline]
~SignalHandler()SignalHandler [inline, virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSigTermHandler.html b/doc/html/classSigTermHandler.html new file mode 100644 index 0000000..77f6fa9 --- /dev/null +++ b/doc/html/classSigTermHandler.html @@ -0,0 +1,84 @@ + + +anytun: SigTermHandler Class Reference + + + + +
+
+
+
+

SigTermHandler Class Reference

#include <signalController.h> +

+

Inheritance diagram for SigTermHandler: +

+ +SignalHandler + +List of all members. + + + + + + +

Public Member Functions

 SigTermHandler ()
int handle ()
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
SigTermHandler::SigTermHandler (  )  [inline]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
int SigTermHandler::handle (  )  [virtual]
+
+
+ +

+ +

+Reimplemented from SignalHandler. +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSigTermHandler.png b/doc/html/classSigTermHandler.png new file mode 100644 index 0000000..793b60c Binary files /dev/null and b/doc/html/classSigTermHandler.png differ diff --git a/doc/html/classSigUsr1Handler-members.html b/doc/html/classSigUsr1Handler-members.html new file mode 100644 index 0000000..9fd6576 --- /dev/null +++ b/doc/html/classSigUsr1Handler-members.html @@ -0,0 +1,30 @@ + + +anytun: Member List + + + + +
+
+
+
+

SigUsr1Handler Member List

This is the complete list of members for SigUsr1Handler, including all inherited members.

+ + + + +
handle()SigUsr1Handler [virtual]
SignalHandler(int s)SignalHandler [inline, protected]
SigUsr1Handler()SigUsr1Handler [inline]
~SignalHandler()SignalHandler [inline, virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSigUsr1Handler.html b/doc/html/classSigUsr1Handler.html new file mode 100644 index 0000000..2c7ea4f --- /dev/null +++ b/doc/html/classSigUsr1Handler.html @@ -0,0 +1,84 @@ + + +anytun: SigUsr1Handler Class Reference + + + + +
+
+
+
+

SigUsr1Handler Class Reference

#include <signalController.h> +

+

Inheritance diagram for SigUsr1Handler: +

+ +SignalHandler + +List of all members. + + + + + + +

Public Member Functions

 SigUsr1Handler ()
int handle ()
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
SigUsr1Handler::SigUsr1Handler (  )  [inline]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
int SigUsr1Handler::handle (  )  [virtual]
+
+
+ +

+ +

+Reimplemented from SignalHandler. +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSigUsr1Handler.png b/doc/html/classSigUsr1Handler.png new file mode 100644 index 0000000..e77ee94 Binary files /dev/null and b/doc/html/classSigUsr1Handler.png differ diff --git a/doc/html/classSigUsr2Handler-members.html b/doc/html/classSigUsr2Handler-members.html new file mode 100644 index 0000000..4ea2b28 --- /dev/null +++ b/doc/html/classSigUsr2Handler-members.html @@ -0,0 +1,30 @@ + + +anytun: Member List + + + + +
+
+
+
+

SigUsr2Handler Member List

This is the complete list of members for SigUsr2Handler, including all inherited members.

+ + + + +
handle()SigUsr2Handler [virtual]
SignalHandler(int s)SignalHandler [inline, protected]
SigUsr2Handler()SigUsr2Handler [inline]
~SignalHandler()SignalHandler [inline, virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSigUsr2Handler.html b/doc/html/classSigUsr2Handler.html new file mode 100644 index 0000000..608d31b --- /dev/null +++ b/doc/html/classSigUsr2Handler.html @@ -0,0 +1,84 @@ + + +anytun: SigUsr2Handler Class Reference + + + + +
+
+
+
+

SigUsr2Handler Class Reference

#include <signalController.h> +

+

Inheritance diagram for SigUsr2Handler: +

+ +SignalHandler + +List of all members. + + + + + + +

Public Member Functions

 SigUsr2Handler ()
int handle ()
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
SigUsr2Handler::SigUsr2Handler (  )  [inline]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
int SigUsr2Handler::handle (  )  [virtual]
+
+
+ +

+ +

+Reimplemented from SignalHandler. +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSigUsr2Handler.png b/doc/html/classSigUsr2Handler.png new file mode 100644 index 0000000..8f981c5 Binary files /dev/null and b/doc/html/classSigUsr2Handler.png differ diff --git a/doc/html/classSignalController-members.html b/doc/html/classSignalController-members.html new file mode 100644 index 0000000..86b4933 --- /dev/null +++ b/doc/html/classSignalController-members.html @@ -0,0 +1,39 @@ + + +anytun: Member List + + + + +
+
+
+
+

SignalController Member List

This is the complete list of members for SignalController, including all inherited members.

+ + + + + + + + + + + + + +
handle(void *s)SignalController [static]
handlerSignalController [private]
HandlerMap typedefSignalController [private]
init()SignalController
operator=(const SignalController &s)SignalController [private]
run()SignalController
SignalController()SignalController [inline]
SignalController(const SignalController &s)SignalController [private]
sigQueueSignalController [private]
sigQueueMutexSignalController [private]
sigQueueSemSignalController [private]
threadSignalController [private]
~SignalController()SignalController


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSignalController.html b/doc/html/classSignalController.html new file mode 100644 index 0000000..c7e4db8 --- /dev/null +++ b/doc/html/classSignalController.html @@ -0,0 +1,293 @@ + + +anytun: SignalController Class Reference + + + + +
+
+
+
+

SignalController Class Reference

#include <signalController.h> +

+List of all members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Member Functions

 SignalController ()
 ~SignalController ()
void init ()
int run ()

Static Public Member Functions

static void * handle (void *s)

Private Types

typedef std::map< int, SignalHandler * > HandlerMap

Private Member Functions

 SignalController (const SignalController &s)
void operator= (const SignalController &s)

Private Attributes

std::queue< int > sigQueue
Mutex sigQueueMutex
Semaphore sigQueueSem
pthread_t thread
HandlerMap handler
+


Member Typedef Documentation

+ +
+
+ + + + +
typedef std::map<int, SignalHandler*> SignalController::HandlerMap [private]
+
+
+ +

+ +

+

+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
SignalController::SignalController (  )  [inline]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
SignalController::~SignalController (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
SignalController::SignalController (const SignalController s  )  [private]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + + +
void * SignalController::handle (void *  s  )  [static]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
void SignalController::init (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
int SignalController::run (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
void SignalController::operator= (const SignalController s  )  [private]
+
+
+ +

+ +

+

+


Member Data Documentation

+ +
+
+ + + + +
std::queue<int> SignalController::sigQueue [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
Mutex SignalController::sigQueueMutex [private]
+
+
+ +

+ +

+

+ +

+ +
+ +

+ +

+

+ +

+
+ + + + +
pthread_t SignalController::thread [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
HandlerMap SignalController::handler [private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSignalHandler-members.html b/doc/html/classSignalHandler-members.html new file mode 100644 index 0000000..2dd1b94 --- /dev/null +++ b/doc/html/classSignalHandler-members.html @@ -0,0 +1,31 @@ + + +anytun: Member List + + + + +
+
+
+
+

SignalHandler Member List

This is the complete list of members for SignalHandler, including all inherited members.

+ + + + + +
handle()SignalHandler [inline, virtual]
SignalController classSignalHandler [friend]
SignalHandler(int s)SignalHandler [inline, protected]
sigNumSignalHandler [private]
~SignalHandler()SignalHandler [inline, virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSignalHandler.html b/doc/html/classSignalHandler.html new file mode 100644 index 0000000..aa149e3 --- /dev/null +++ b/doc/html/classSignalHandler.html @@ -0,0 +1,150 @@ + + +anytun: SignalHandler Class Reference + + + + +
+
+
+
+

SignalHandler Class Reference

#include <signalController.h> +

+

Inheritance diagram for SignalHandler: +

+ +SigHupHandler +SigIntHandler +SigQuitHandler +SigTermHandler +SigUsr1Handler +SigUsr2Handler + +List of all members. + + + + + + + + + + + + + + + +

Public Member Functions

virtual ~SignalHandler ()
virtual int handle ()

Protected Member Functions

 SignalHandler (int s)

Private Attributes

int sigNum

Friends

class SignalController
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
virtual SignalHandler::~SignalHandler (  )  [inline, virtual]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
SignalHandler::SignalHandler (int  s  )  [inline, protected]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
virtual int SignalHandler::handle (  )  [inline, virtual]
+
+ +

+


Friends And Related Function Documentation

+ +
+
+ + + + +
friend class SignalController [friend]
+
+
+ +

+ +

+

+


Member Data Documentation

+ +
+
+ + + + +
int SignalHandler::sigNum [private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following file: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSignalHandler.png b/doc/html/classSignalHandler.png new file mode 100644 index 0000000..8ab57ec Binary files /dev/null and b/doc/html/classSignalHandler.png differ diff --git a/doc/html/classSocket-members.html b/doc/html/classSocket-members.html new file mode 100644 index 0000000..4796866 --- /dev/null +++ b/doc/html/classSocket-members.html @@ -0,0 +1,38 @@ + + +anytun: Member List + + + + +
+
+
+
+

Socket Member List

This is the complete list of members for Socket, including all inherited members.

+ + + + + + + + + + + + +
cleanUp()Socket [static]
getLocalAddress()Socket
getLocalPort()Socket
operator=(const Socket &sock)Socket [private]
resolveService(const string &service, const string &protocol="tcp")Socket [static]
setLocalAddressAndPort(const string &localAddress, unsigned short localPort=0)Socket
setLocalPort(unsigned short localPort)Socket
sockDescSocket [protected]
Socket(const Socket &sock)Socket [private]
Socket(int type, int protocol)Socket [protected]
Socket(int sockDesc)Socket [protected]
~Socket()Socket


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSocket.html b/doc/html/classSocket.html new file mode 100644 index 0000000..6d8d32e --- /dev/null +++ b/doc/html/classSocket.html @@ -0,0 +1,385 @@ + + +anytun: Socket Class Reference + + + + +
+
+
+
+

Socket Class Reference

#include <PracticalSocket.h> +

+

Inheritance diagram for Socket: +

+ +CommunicatingSocket +TCPServerSocket +TCPSocket +UDPSocket +UDPPacketSource + +List of all members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Member Functions

 ~Socket ()
string getLocalAddress () throw (SocketException)
unsigned short getLocalPort () throw (SocketException)
void setLocalPort (unsigned short localPort) throw (SocketException)
void setLocalAddressAndPort (const string &localAddress, unsigned short localPort=0) throw (SocketException)

Static Public Member Functions

static void cleanUp () throw (SocketException)
static unsigned short resolveService (const string &service, const string &protocol="tcp")

Protected Member Functions

 Socket (int type, int protocol) throw (SocketException)
 Socket (int sockDesc)

Protected Attributes

int sockDesc

Private Member Functions

 Socket (const Socket &sock)
void operator= (const Socket &sock)
+

Detailed Description

+Base class representing basic communication endpoint +

+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
Socket::~Socket (  ) 
+
+
+ +

+Close and deallocate this socket +

+

+ +

+
+ + + + + + + + + +
Socket::Socket (const Socket sock  )  [private]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + + + + + + + + + + +
Socket::Socket (int  type,
int  protocol 
) throw (SocketException) [protected]
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
Socket::Socket (int  sockDesc  )  [protected]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
string Socket::getLocalAddress (  )  throw (SocketException)
+
+
+ +

+Get the local address

Returns:
local address of socket
+
Exceptions:
+ + +
SocketException thrown if fetch fails
+
+ +
+

+ +

+
+ + + + + + + + +
unsigned short Socket::getLocalPort (  )  throw (SocketException)
+
+
+ +

+Get the local port

Returns:
local port of socket
+
Exceptions:
+ + +
SocketException thrown if fetch fails
+
+ +
+

+ +

+
+ + + + + + + + + +
void Socket::setLocalPort (unsigned short  localPort  )  throw (SocketException)
+
+
+ +

+Set the local port to the specified port and the local address to any interface

Parameters:
+ + +
localPort local port
+
+
Exceptions:
+ + +
SocketException thrown if setting local port fails
+
+ +
+

+ +

+
+ + + + + + + + + + + + + + + + + + +
void Socket::setLocalAddressAndPort (const string &  localAddress,
unsigned short  localPort = 0 
) throw (SocketException)
+
+
+ +

+Set the local port to the specified port and the local address to the specified address. If you omit the port, a random port will be selected.

Parameters:
+ + + +
localAddress local address
localPort local port
+
+
Exceptions:
+ + +
SocketException thrown if setting local port or address fails
+
+ +
+

+ +

+
+ + + + + + + + +
void Socket::cleanUp (  )  throw (SocketException) [static]
+
+
+ +

+If WinSock, unload the WinSock DLLs; otherwise do nothing. We ignore this in our sample client code but include it in the library for completeness. If you are running on Windows and you are concerned about DLL resource consumption, call this after you are done with all Socket instances. If you execute this on Windows while some instance of Socket exists, you are toast. For portability of client code, this is an empty function on non-Windows platforms so you can always include it.

Parameters:
+ + + +
buffer buffer to receive the data
bufferLen maximum number of bytes to read into buffer
+
+
Returns:
number of bytes read, 0 for EOF, and -1 for error
+
Exceptions:
+ + +
SocketException thrown WinSock clean up fails
+
+ +
+

+ +

+
+ + + + + + + + + + + + + + + + + + +
unsigned short Socket::resolveService (const string &  service,
const string &  protocol = "tcp" 
) [static]
+
+
+ +

+Resolve the specified service for the specified protocol to the corresponding port number in host byte order

Parameters:
+ + + +
service service to resolve (e.g., "http")
protocol protocol of service to resolve. Default is "tcp".
+
+ +
+

+ +

+
+ + + + + + + + + +
void Socket::operator= (const Socket sock  )  [private]
+
+
+ +

+ +

+

+


Member Data Documentation

+ +
+
+ + + + +
int Socket::sockDesc [protected]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSocket.png b/doc/html/classSocket.png new file mode 100644 index 0000000..af55d66 Binary files /dev/null and b/doc/html/classSocket.png differ diff --git a/doc/html/classSocketException-members.html b/doc/html/classSocketException-members.html new file mode 100644 index 0000000..842894e --- /dev/null +++ b/doc/html/classSocketException-members.html @@ -0,0 +1,30 @@ + + +anytun: Member List + + + + +
+
+
+
+

SocketException Member List

This is the complete list of members for SocketException, including all inherited members.

+ + + + +
SocketException(const string &message, bool inclSysMsg=false)SocketException
userMessageSocketException [private]
what() constSocketException
~SocketException()SocketException


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classSocketException.html b/doc/html/classSocketException.html new file mode 100644 index 0000000..25d3427 --- /dev/null +++ b/doc/html/classSocketException.html @@ -0,0 +1,137 @@ + + +anytun: SocketException Class Reference + + + + +
+
+
+
+

SocketException Class Reference

#include <PracticalSocket.h> +

+List of all members. + + + + + + + + + + + +

Public Member Functions

 SocketException (const string &message, bool inclSysMsg=false) throw ()
 ~SocketException () throw ()
const char * what () const throw ()

Private Attributes

string userMessage
+


Detailed Description

+Signals a problem with the execution of a socket call. +

+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
SocketException::SocketException (const string &  message,
bool  inclSysMsg = false 
) throw ()
+
+
+ +

+Construct a SocketException with a explanatory message.

Parameters:
+ + + +
message explanatory message
incSysMsg true if system message (from strerror(errno)) should be postfixed to the user provided message
+
+ +
+

+ +

+
+ + + + + + + + +
SocketException::~SocketException (  )  throw ()
+
+
+ +

+Provided just to guarantee that no exceptions are thrown. +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
const char * SocketException::what (  )  const throw ()
+
+
+ +

+Get the exception message

Returns:
exception message
+ +
+

+


Member Data Documentation

+ +
+
+ + + + +
string SocketException::userMessage [private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classTCPServerSocket-members.html b/doc/html/classTCPServerSocket-members.html new file mode 100644 index 0000000..193c0a8 --- /dev/null +++ b/doc/html/classTCPServerSocket-members.html @@ -0,0 +1,40 @@ + + +anytun: Member List + + + + +
+
+
+
+

TCPServerSocket Member List

This is the complete list of members for TCPServerSocket, including all inherited members.

+ + + + + + + + + + + + + + +
accept()TCPServerSocket
cleanUp()Socket [static]
getLocalAddress()Socket
getLocalPort()Socket
resolveService(const string &service, const string &protocol="tcp")Socket [static]
setListen(int queueLen)TCPServerSocket [private]
setLocalAddressAndPort(const string &localAddress, unsigned short localPort=0)Socket
setLocalPort(unsigned short localPort)Socket
sockDescSocket [protected]
Socket(int type, int protocol)Socket [protected]
Socket(int sockDesc)Socket [protected]
TCPServerSocket(unsigned short localPort, int queueLen=5)TCPServerSocket
TCPServerSocket(const string &localAddress, unsigned short localPort, int queueLen=5)TCPServerSocket
~Socket()Socket


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classTCPServerSocket.html b/doc/html/classTCPServerSocket.html new file mode 100644 index 0000000..6dcb6dc --- /dev/null +++ b/doc/html/classTCPServerSocket.html @@ -0,0 +1,184 @@ + + +anytun: TCPServerSocket Class Reference + + + + +
+
+
+
+

TCPServerSocket Class Reference

#include <PracticalSocket.h> +

+

Inheritance diagram for TCPServerSocket: +

+ +Socket + +List of all members. + + + + + + + + + + + +

Public Member Functions

 TCPServerSocket (unsigned short localPort, int queueLen=5) throw (SocketException)
 TCPServerSocket (const string &localAddress, unsigned short localPort, int queueLen=5) throw (SocketException)
TCPSocketaccept () throw (SocketException)

Private Member Functions

void setListen (int queueLen) throw (SocketException)
+

Detailed Description

+TCP socket class for servers +

+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
TCPServerSocket::TCPServerSocket (unsigned short  localPort,
int  queueLen = 5 
) throw (SocketException)
+
+
+ +

+Construct a TCP socket for use with a server, accepting connections on the specified port on any interface

Parameters:
+ + + +
localPort local port of server socket, a value of zero will give a system-assigned unused port
queueLen maximum queue length for outstanding connection requests (default 5)
+
+
Exceptions:
+ + +
SocketException thrown if unable to create TCP server socket
+
+ +
+

+ +

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
TCPServerSocket::TCPServerSocket (const string &  localAddress,
unsigned short  localPort,
int  queueLen = 5 
) throw (SocketException)
+
+
+ +

+Construct a TCP socket for use with a server, accepting connections on the specified port on the interface specified by the given address

Parameters:
+ + + + +
localAddress local interface (address) of server socket
localPort local port of server socket
queueLen maximum queue length for outstanding connection requests (default 5)
+
+
Exceptions:
+ + +
SocketException thrown if unable to create TCP server socket
+
+ +
+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
TCPSocket * TCPServerSocket::accept (  )  throw (SocketException)
+
+
+ +

+Blocks until a new connection is established on this socket or error

Returns:
new connection socket
+
Exceptions:
+ + +
SocketException thrown if attempt to accept a new connection fails
+
+ +
+

+ +

+
+ + + + + + + + + +
void TCPServerSocket::setListen (int  queueLen  )  throw (SocketException) [private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classTCPServerSocket.png b/doc/html/classTCPServerSocket.png new file mode 100644 index 0000000..1a22e63 Binary files /dev/null and b/doc/html/classTCPServerSocket.png differ diff --git a/doc/html/classTCPSocket-members.html b/doc/html/classTCPSocket-members.html new file mode 100644 index 0000000..0772e58 --- /dev/null +++ b/doc/html/classTCPSocket-members.html @@ -0,0 +1,47 @@ + + +anytun: Member List + + + + +
+
+
+
+

TCPSocket Member List

This is the complete list of members for TCPSocket, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
cleanUp()Socket [static]
CommunicatingSocket(int type, int protocol)CommunicatingSocket [protected]
CommunicatingSocket(int newConnSD)CommunicatingSocket [protected]
connect(const string &foreignAddress, unsigned short foreignPort)CommunicatingSocket
getForeignAddress()CommunicatingSocket
getForeignPort()CommunicatingSocket
getLocalAddress()Socket
getLocalPort()Socket
recv(void *buffer, int bufferLen)CommunicatingSocket
resolveService(const string &service, const string &protocol="tcp")Socket [static]
send(const void *buffer, int bufferLen)CommunicatingSocket
setLocalAddressAndPort(const string &localAddress, unsigned short localPort=0)Socket
setLocalPort(unsigned short localPort)Socket
sockDescSocket [protected]
Socket(int type, int protocol)Socket [protected]
Socket(int sockDesc)Socket [protected]
TCPServerSocket classTCPSocket [friend]
TCPSocket()TCPSocket
TCPSocket(const string &foreignAddress, unsigned short foreignPort)TCPSocket
TCPSocket(int newConnSD)TCPSocket [private]
~Socket()Socket


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classTCPSocket.html b/doc/html/classTCPSocket.html new file mode 100644 index 0000000..b757215 --- /dev/null +++ b/doc/html/classTCPSocket.html @@ -0,0 +1,153 @@ + + +anytun: TCPSocket Class Reference + + + + +
+
+
+
+

TCPSocket Class Reference

#include <PracticalSocket.h> +

+

Inheritance diagram for TCPSocket: +

+ +CommunicatingSocket +Socket + +List of all members. + + + + + + + + + + + + +

Public Member Functions

 TCPSocket () throw (SocketException)
 TCPSocket (const string &foreignAddress, unsigned short foreignPort) throw (SocketException)

Private Member Functions

 TCPSocket (int newConnSD)

Friends

class TCPServerSocket
+

Detailed Description

+TCP socket for communication with other TCP sockets +

+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
TCPSocket::TCPSocket (  )  throw (SocketException)
+
+
+ +

+Construct a TCP socket with no connection

Exceptions:
+ + +
SocketException thrown if unable to create TCP socket
+
+ +
+

+ +

+
+ + + + + + + + + + + + + + + + + + +
TCPSocket::TCPSocket (const string &  foreignAddress,
unsigned short  foreignPort 
) throw (SocketException)
+
+
+ +

+Construct a TCP socket with a connection to the given foreign address and port

Parameters:
+ + + +
foreignAddress foreign address (IP address or name)
foreignPort foreign port
+
+
Exceptions:
+ + +
SocketException thrown if unable to create TCP socket
+
+ +
+

+ +

+
+ + + + + + + + + +
TCPSocket::TCPSocket (int  newConnSD  )  [private]
+
+
+ +

+ +

+

+


Friends And Related Function Documentation

+ +
+
+ + + + +
friend class TCPServerSocket [friend]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classTCPSocket.png b/doc/html/classTCPSocket.png new file mode 100644 index 0000000..2b3e546 Binary files /dev/null and b/doc/html/classTCPSocket.png differ diff --git a/doc/html/classTunDevice-members.html b/doc/html/classTunDevice-members.html new file mode 100644 index 0000000..46ff67c --- /dev/null +++ b/doc/html/classTunDevice-members.html @@ -0,0 +1,43 @@ + + +anytun: Member List + + + + +
+
+
+
+

TunDevice Member List

This is the complete list of members for TunDevice, including all inherited members.

+ + + + + + + + + + + + + + + + + +
close()TunDevice
dev_TunDevice [private]
getActualName()TunDevice
getType()TunDevice
getTypeString()TunDevice
io_mutex_TunDevice [private]
isOpen()TunDevice
open()TunDevice
operator=(const TunDevice &src)TunDevice [private]
read(Buffer &buf)TunDevice
TunDevice(const char *dev, const char *dev_type, const char *ifcfg_lp, const char *ifcfg_rnmp)TunDevice
TunDevice(const TunDevice &src)TunDevice [private]
TYPE_TAPTunDevice [static]
TYPE_TUNTunDevice [static]
TYPE_UNDEFTunDevice [static]
write(Buffer &buf)TunDevice
~TunDevice()TunDevice


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classTunDevice.html b/doc/html/classTunDevice.html new file mode 100644 index 0000000..5b88069 --- /dev/null +++ b/doc/html/classTunDevice.html @@ -0,0 +1,402 @@ + + +anytun: TunDevice Class Reference + + + + +
+
+
+
+

TunDevice Class Reference

#include <tunDevice.h> +

+List of all members. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Member Functions

 TunDevice (const char *dev, const char *dev_type, const char *ifcfg_lp, const char *ifcfg_rnmp)
 ~TunDevice ()
void open ()
void close ()
bool isOpen ()
short read (Buffer &buf)
int write (Buffer &buf)
char * getActualName ()
u_int32_t getType ()
char * getTypeString ()

Static Public Attributes

static const u_int32_t TYPE_UNDEF = 0
static const u_int32_t TYPE_TUN = 1
static const u_int32_t TYPE_TAP = 2

Private Member Functions

void operator= (const TunDevice &src)
 TunDevice (const TunDevice &src)

Private Attributes

Mutex io_mutex_
tuntap * dev_
+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
TunDevice::TunDevice (const char *  dev,
const char *  dev_type,
const char *  ifcfg_lp,
const char *  ifcfg_rnmp 
)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
TunDevice::~TunDevice (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
TunDevice::TunDevice (const TunDevice src  )  [private]
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
void TunDevice::open (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
void TunDevice::close (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
bool TunDevice::isOpen (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
short TunDevice::read (Buffer buf  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
int TunDevice::write (Buffer buf  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
char * TunDevice::getActualName (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
u_int32_t TunDevice::getType (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + +
char * TunDevice::getTypeString (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
void TunDevice::operator= (const TunDevice src  )  [private]
+
+
+ +

+ +

+

+


Member Data Documentation

+ +
+
+ + + + +
const u_int32_t TunDevice::TYPE_UNDEF = 0 [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const u_int32_t TunDevice::TYPE_TUN = 1 [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
const u_int32_t TunDevice::TYPE_TAP = 2 [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
Mutex TunDevice::io_mutex_ [private]
+
+
+ +

+ +

+

+ +

+
+ + + + +
struct tuntap* TunDevice::dev_ [private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classUDPPacketSource-members.html b/doc/html/classUDPPacketSource-members.html new file mode 100644 index 0000000..ba8122c --- /dev/null +++ b/doc/html/classUDPPacketSource-members.html @@ -0,0 +1,58 @@ + + +anytun: Member List + + + + +
+
+
+
+

UDPPacketSource Member List

This is the complete list of members for UDPPacketSource, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
cleanUp()Socket [static]
CommunicatingSocket(int type, int protocol)CommunicatingSocket [protected]
CommunicatingSocket(int newConnSD)CommunicatingSocket [protected]
connect(const string &foreignAddress, unsigned short foreignPort)CommunicatingSocket
disconnect()UDPSocket
getForeignAddress()CommunicatingSocket
getForeignPort()CommunicatingSocket
getLocalAddress()Socket
getLocalPort()Socket
joinGroup(const string &multicastGroup)UDPSocket
leaveGroup(const string &multicastGroup)UDPSocket
recv(Buffer &buf, std::string &addr, u_int16_t &port)UDPPacketSource [virtual]
UDPSocket::recv(void *buffer, int bufferLen)CommunicatingSocket
recvFrom(void *buffer, int bufferLen, string &sourceAddress, unsigned short &sourcePort)UDPSocket
resolveService(const string &service, const string &protocol="tcp")Socket [static]
send(Buffer &buf, std::string addr, u_int16_t port)UDPPacketSource [virtual]
UDPSocket::send(const void *buffer, int bufferLen)CommunicatingSocket
sendTo(const void *buffer, int bufferLen, const string &foreignAddress, unsigned short foreignPort)UDPSocket
setLocalAddressAndPort(const string &localAddress, unsigned short localPort=0)Socket
setLocalPort(unsigned short localPort)Socket
setMulticastTTL(unsigned char multicastTTL)UDPSocket
sockDescSocket [protected]
Socket(int type, int protocol)Socket [protected]
Socket(int sockDesc)Socket [protected]
UDPPacketSource()UDPPacketSource
UDPPacketSource(u_int16_t port)UDPPacketSource
UDPPacketSource(std::string localaddr, u_int16_t port)UDPPacketSource
UDPSocket()UDPSocket
UDPSocket(unsigned short localPort)UDPSocket
UDPSocket(const string &localAddress, unsigned short localPort)UDPSocket
~PacketSource()PacketSource [inline, virtual]
~Socket()Socket


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classUDPPacketSource.html b/doc/html/classUDPPacketSource.html new file mode 100644 index 0000000..c3fc1cf --- /dev/null +++ b/doc/html/classUDPPacketSource.html @@ -0,0 +1,195 @@ + + +anytun: UDPPacketSource Class Reference + + + + +
+
+
+
+

UDPPacketSource Class Reference

#include <packetSource.h> +

+

Inheritance diagram for UDPPacketSource: +

+ +PacketSource +UDPSocket +CommunicatingSocket +Socket + +List of all members. + + + + + + + + + + + + +

Public Member Functions

 UDPPacketSource ()
 UDPPacketSource (u_int16_t port)
 UDPPacketSource (std::string localaddr, u_int16_t port)
u_int32_t recv (Buffer &buf, std::string &addr, u_int16_t &port)
void send (Buffer &buf, std::string addr, u_int16_t port)
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
UDPPacketSource::UDPPacketSource (  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
UDPPacketSource::UDPPacketSource (u_int16_t  port  ) 
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + + + + + + + + + + +
UDPPacketSource::UDPPacketSource (std::string  localaddr,
u_int16_t  port 
)
+
+
+ +

+ +

+

+


Member Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
u_int32_t UDPPacketSource::recv (Buffer buf,
std::string &  addr,
u_int16_t port 
) [virtual]
+
+
+ +

+ +

+Implements PacketSource. +

+

+ +

+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void UDPPacketSource::send (Buffer buf,
std::string  addr,
u_int16_t  port 
) [virtual]
+
+
+ +

+ +

+Implements PacketSource. +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classUDPPacketSource.png b/doc/html/classUDPPacketSource.png new file mode 100644 index 0000000..f180736 Binary files /dev/null and b/doc/html/classUDPPacketSource.png differ diff --git a/doc/html/classUDPSocket-members.html b/doc/html/classUDPSocket-members.html new file mode 100644 index 0000000..7f329a0 --- /dev/null +++ b/doc/html/classUDPSocket-members.html @@ -0,0 +1,53 @@ + + +anytun: Member List + + + + +
+
+
+
+

UDPSocket Member List

This is the complete list of members for UDPSocket, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
cleanUp()Socket [static]
CommunicatingSocket(int type, int protocol)CommunicatingSocket [protected]
CommunicatingSocket(int newConnSD)CommunicatingSocket [protected]
connect(const string &foreignAddress, unsigned short foreignPort)CommunicatingSocket
disconnect()UDPSocket
getForeignAddress()CommunicatingSocket
getForeignPort()CommunicatingSocket
getLocalAddress()Socket
getLocalPort()Socket
joinGroup(const string &multicastGroup)UDPSocket
leaveGroup(const string &multicastGroup)UDPSocket
recv(void *buffer, int bufferLen)CommunicatingSocket
recvFrom(void *buffer, int bufferLen, string &sourceAddress, unsigned short &sourcePort)UDPSocket
resolveService(const string &service, const string &protocol="tcp")Socket [static]
send(const void *buffer, int bufferLen)CommunicatingSocket
sendTo(const void *buffer, int bufferLen, const string &foreignAddress, unsigned short foreignPort)UDPSocket
setBroadcast()UDPSocket [private]
setLocalAddressAndPort(const string &localAddress, unsigned short localPort=0)Socket
setLocalPort(unsigned short localPort)Socket
setMulticastTTL(unsigned char multicastTTL)UDPSocket
sockDescSocket [protected]
Socket(int type, int protocol)Socket [protected]
Socket(int sockDesc)Socket [protected]
UDPSocket()UDPSocket
UDPSocket(unsigned short localPort)UDPSocket
UDPSocket(const string &localAddress, unsigned short localPort)UDPSocket
~Socket()Socket


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classUDPSocket.html b/doc/html/classUDPSocket.html new file mode 100644 index 0000000..d3c693e --- /dev/null +++ b/doc/html/classUDPSocket.html @@ -0,0 +1,404 @@ + + +anytun: UDPSocket Class Reference + + + + +
+
+
+
+

UDPSocket Class Reference

#include <PracticalSocket.h> +

+

Inheritance diagram for UDPSocket: +

+ +CommunicatingSocket +Socket +UDPPacketSource + +List of all members. + + + + + + + + + + + + + + + + + + + + + + + +

Public Member Functions

 UDPSocket () throw (SocketException)
 UDPSocket (unsigned short localPort) throw (SocketException)
 UDPSocket (const string &localAddress, unsigned short localPort) throw (SocketException)
void disconnect () throw (SocketException)
void sendTo (const void *buffer, int bufferLen, const string &foreignAddress, unsigned short foreignPort) throw (SocketException)
int recvFrom (void *buffer, int bufferLen, string &sourceAddress, unsigned short &sourcePort) throw (SocketException)
void setMulticastTTL (unsigned char multicastTTL) throw (SocketException)
void joinGroup (const string &multicastGroup) throw (SocketException)
void leaveGroup (const string &multicastGroup) throw (SocketException)

Private Member Functions

void setBroadcast ()
+

Detailed Description

+UDP socket class +

+


Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
UDPSocket::UDPSocket (  )  throw (SocketException)
+
+
+ +

+Construct a UDP socket

Exceptions:
+ + +
SocketException thrown if unable to create UDP socket
+
+ +
+

+ +

+
+ + + + + + + + + +
UDPSocket::UDPSocket (unsigned short  localPort  )  throw (SocketException)
+
+
+ +

+Construct a UDP socket with the given local port

Parameters:
+ + +
localPort local port
+
+
Exceptions:
+ + +
SocketException thrown if unable to create UDP socket
+
+ +
+

+ +

+
+ + + + + + + + + + + + + + + + + + +
UDPSocket::UDPSocket (const string &  localAddress,
unsigned short  localPort 
) throw (SocketException)
+
+
+ +

+Construct a UDP socket with the given local port and address

Parameters:
+ + + +
localAddress local address
localPort local port
+
+
Exceptions:
+ + +
SocketException thrown if unable to create UDP socket
+
+ +
+

+


Member Function Documentation

+ +
+
+ + + + + + + + +
void UDPSocket::disconnect (  )  throw (SocketException)
+
+
+ +

+Unset foreign address and port

Returns:
true if disassociation is successful
+
Exceptions:
+ + +
SocketException thrown if unable to disconnect UDP socket
+
+ +
+

+ +

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void UDPSocket::sendTo (const void *  buffer,
int  bufferLen,
const string &  foreignAddress,
unsigned short  foreignPort 
) throw (SocketException)
+
+
+ +

+Send the given buffer as a UDP datagram to the specified address/port

Parameters:
+ + + + + +
buffer buffer to be written
bufferLen number of bytes to write
foreignAddress address (IP address or name) to send to
foreignPort port number to send to
+
+
Returns:
true if send is successful
+
Exceptions:
+ + +
SocketException thrown if unable to send datagram
+
+ +
+

+ +

+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
int UDPSocket::recvFrom (void *  buffer,
int  bufferLen,
string &  sourceAddress,
unsigned short &  sourcePort 
) throw (SocketException)
+
+
+ +

+Read read up to bufferLen bytes data from this socket. The given buffer is where the data will be placed

Parameters:
+ + + + + +
buffer buffer to receive data
bufferLen maximum number of bytes to receive
sourceAddress address of datagram source
sourcePort port of data source
+
+
Returns:
number of bytes received and -1 for error
+
Exceptions:
+ + +
SocketException thrown if unable to receive datagram
+
+ +
+

+ +

+
+ + + + + + + + + +
void UDPSocket::setMulticastTTL (unsigned char  multicastTTL  )  throw (SocketException)
+
+
+ +

+Set the multicast TTL

Parameters:
+ + +
multicastTTL multicast TTL
+
+
Exceptions:
+ + +
SocketException thrown if unable to set TTL
+
+ +
+

+ +

+
+ + + + + + + + + +
void UDPSocket::joinGroup (const string &  multicastGroup  )  throw (SocketException)
+
+
+ +

+Join the specified multicast group

Parameters:
+ + +
multicastGroup multicast group address to join
+
+
Exceptions:
+ + +
SocketException thrown if unable to join group
+
+ +
+

+ +

+
+ + + + + + + + + +
void UDPSocket::leaveGroup (const string &  multicastGroup  )  throw (SocketException)
+
+
+ +

+Leave the specified multicast group

Parameters:
+ + +
multicastGroup multicast group address to leave
+
+
Exceptions:
+ + +
SocketException thrown if unable to leave group
+
+ +
+

+ +

+
+ + + + + + + + +
void UDPSocket::setBroadcast (  )  [private]
+
+
+ +

+ +

+

+


The documentation for this class was generated from the following files: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classUDPSocket.png b/doc/html/classUDPSocket.png new file mode 100644 index 0000000..318812b Binary files /dev/null and b/doc/html/classUDPSocket.png differ diff --git a/doc/html/classsatp_1_1SATP-members.html b/doc/html/classsatp_1_1SATP-members.html new file mode 100644 index 0000000..4b243ed --- /dev/null +++ b/doc/html/classsatp_1_1SATP-members.html @@ -0,0 +1,72 @@ + + +anytun: Member List + + + + +
+
+
+
+

satp::SATP Member List

This is the complete list of members for satp::SATP, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
addAuthTag(auth_tag_t auth_tag)Packet
addHeader(seq_nr_t seq_nr, sender_id_t sender_id)Packet
addPayloadType(payload_type_t payload_type)Packet
AesIcmCypher classBuffer [friend]
buf_Buffer [protected]
Buffer()Buffer
Buffer(u_int32_t length)Buffer
Buffer(u_int8_t *data, u_int32_t length)Buffer
Buffer(const Buffer &src)Buffer
fields_descsatp::SATP [static]
getAuthTag() constPacket
getBuf()Buffer
getLength() constBuffer
getPayloadType() constPacket
getSenderId() constPacket
getSeqNr() constPacket
hasAuthTag() constPacket
hasHeader() constPacket
hasPayloadType() constPacket
KeyDerivation classBuffer [friend]
leftByteShift(u_int32_t width) constBuffer [virtual]
length_Buffer [protected]
namesatp::SATP [static]
operator u_int8_t *()Buffer
operator=(const Buffer &src)Buffer
operator[](u_int32_t index)Buffer
operator[](u_int32_t index) constBuffer
operator^(const Buffer &xor_by) const Buffer [virtual]
Packet()Packet
Packet(u_int32_t length)Packet
Packet(const Buffer &src)Packet
printHexDump() constBuffer
removeAuthTag()Packet
removeHeader()Packet
removePayloadType()Packet
resizeBack(u_int32_t new_length)Buffer
resizeFront(u_int32_t new_length)Buffer
rightByteShift(u_int32_t width) constBuffer [virtual]
setSenderId(sender_id_t sender_id)Packet
setSeqNr(seq_nr_t seq_nr)Packet
TunDevice classBuffer [friend]
UDPPacketSource classBuffer [friend]
withAuthTag(bool b)Packet
withHeader(bool b)Packet
withPayloadType(bool b)Packet
~Buffer()Buffer [virtual]


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classsatp_1_1SATP.html b/doc/html/classsatp_1_1SATP.html new file mode 100644 index 0000000..17e3ed2 --- /dev/null +++ b/doc/html/classsatp_1_1SATP.html @@ -0,0 +1,78 @@ + + +anytun: satp::SATP Class Reference + + + + +
+
+
+
+ +

satp::SATP Class Reference

Inheritance diagram for satp::SATP: +

+ +Packet +Buffer + +List of all members. + + + + + + +

Static Public Attributes

string name = "SATP"
list fields_desc
+

Member Data Documentation

+ +
+
+ + + + +
string satp::SATP::name = "SATP" [static]
+
+
+ +

+ +

+

+ +

+
+ + + + +
list satp::SATP::fields_desc [static]
+
+
+ +

+Initial value:

[
+            IntField("seq", None),
+            ShortField("id", None)
+            ]
+
+
+

+


The documentation for this class was generated from the following file: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/classsatp_1_1SATP.png b/doc/html/classsatp_1_1SATP.png new file mode 100644 index 0000000..5f85c4e Binary files /dev/null and b/doc/html/classsatp_1_1SATP.png differ diff --git a/doc/html/cypher_8cpp.html b/doc/html/cypher_8cpp.html new file mode 100644 index 0000000..e8b0915 --- /dev/null +++ b/doc/html/cypher_8cpp.html @@ -0,0 +1,33 @@ + + +anytun: cypher.cpp File Reference + + + + +
+
+
+
+

cypher.cpp File Reference

#include <stdexcept>
+#include <vector>
+#include <iostream>
+#include "cypher.h"
+#include "keyDerivation.h"
+#include <gcrypt.h>
+ + +
+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/cypher_8h-source.html b/doc/html/cypher_8h-source.html new file mode 100644 index 0000000..6ff5657 --- /dev/null +++ b/doc/html/cypher_8h-source.html @@ -0,0 +1,115 @@ + + +anytun: cypher.h Source File + + + + +
+
+
+
+

cypher.h

Go to the documentation of this file.
00001 /*
+00002  *  anytun
+00003  *
+00004  *  The secure anycast tunneling protocol (satp) defines a protocol used
+00005  *  for communication between any combination of unicast and anycast
+00006  *  tunnel endpoints.  It has less protocol overhead than IPSec in Tunnel
+00007  *  mode and allows tunneling of every ETHER TYPE protocol (e.g.
+00008  *  ethernet, ip, arp ...). satp directly includes cryptography and
+00009  *  message authentication based on the methodes used by SRTP.  It is
+00010  *  intended to deliver a generic, scaleable and secure solution for
+00011  *  tunneling and relaying of packets of any protocol.
+00012  *
+00013  *
+00014  *  Copyright (C) 2007 anytun.org <satp@wirdorange.org>
+00015  *
+00016  *  This program is free software; you can redistribute it and/or modify
+00017  *  it under the terms of the GNU General Public License version 2
+00018  *  as published by the Free Software Foundation.
+00019  *
+00020  *  This program is distributed in the hope that it will be useful,
+00021  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+00022  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+00023  *  GNU General Public License for more details.
+00024  *
+00025  *  You should have received a copy of the GNU General Public License
+00026  *  along with this program (see the file COPYING included with this
+00027  *  distribution); if not, write to the Free Software Foundation, Inc.,
+00028  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+00029  */
+00030 
+00031 #ifndef _CYPHER_H_
+00032 #define _CYPHER_H_
+00033 
+00034 
+00035 
+00036 #include "datatypes.h"
+00037 #include "buffer.h"
+00038 
+00039 extern "C" {
+00040 #include <gcrypt.h>
+00041 }
+00042 
+00043 
+00044 #include <string>
+00045 
+00046 class Cypher
+00047 {
+00048 public:
+00049   Cypher() {};
+00050   virtual ~Cypher() {};
+00051  
+00052   void setKey(Buffer key) {};
+00053   void setSalt(Buffer salt) {};
+00054   void cypher(Buffer& buf, seq_nr_t seq_nr, sender_id_t sender_id);
+00055   
+00056 protected:
+00057   void exor(Buffer& buf, const Buffer& bit_stream);
+00058   virtual Buffer getBitStream(u_int32_t length, seq_nr_t seq_nr, sender_id_t sender_id) = 0;
+00059 };
+00060 
+00061 class NullCypher : public Cypher
+00062 {
+00063 protected:
+00064   Buffer getBitStream(u_int32_t length, seq_nr_t seq_nr, sender_id_t sender_id);
+00065 };
+00066 
+00067 class AesIcmCypher : public Cypher
+00068 {
+00069 public:
+00070   AesIcmCypher();
+00071   ~AesIcmCypher();
+00072   void setKey(Buffer key);
+00073   void setSalt(Buffer salt);
+00074 
+00075   static const std::string MIN_GCRYPT_VERSION;
+00076   static const u_int32_t GCRYPT_SEC_MEM;
+00077 
+00078 protected:
+00079   Buffer getBitStream(u_int32_t length, seq_nr_t seq_nr, sender_id_t sender_id);
+00080   gcry_cipher_hd_t cipher_;
+00081   Buffer salt_;
+00082 
+00083 private:
+00084   static bool gcrypt_initialized_;
+00085 };
+00086 
+00087 const std::string AesIcmCypher::MIN_GCRYPT_VERSION = "1.2.3";
+00088 bool AesIcmCypher::gcrypt_initialized_ = false;
+00089 const u_int32_t AesIcmCypher::GCRYPT_SEC_MEM = 16384; // 16k secure memory
+00090 
+00091 #endif
+

Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/cypher_8h.html b/doc/html/cypher_8h.html new file mode 100644 index 0000000..c0bd5d8 --- /dev/null +++ b/doc/html/cypher_8h.html @@ -0,0 +1,40 @@ + + +anytun: cypher.h File Reference + + + + +
+
+
+
+

cypher.h File Reference

#include "datatypes.h"
+#include "buffer.h"
+#include <gcrypt.h>
+#include <string>
+ +

+Go to the source code of this file. + + + + + + + + +

Classes

class  Cypher
class  NullCypher
class  AesIcmCypher
+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/datatypes_8h-source.html b/doc/html/datatypes_8h-source.html new file mode 100644 index 0000000..b7da582 --- /dev/null +++ b/doc/html/datatypes_8h-source.html @@ -0,0 +1,88 @@ + + +anytun: datatypes.h Source File + + + + +
+
+
+
+

datatypes.h

Go to the documentation of this file.
00001 /*
+00002  *  anytun
+00003  *
+00004  *  The secure anycast tunneling protocol (satp) defines a protocol used
+00005  *  for communication between any combination of unicast and anycast
+00006  *  tunnel endpoints.  It has less protocol overhead than IPSec in Tunnel
+00007  *  mode and allows tunneling of every ETHER TYPE protocol (e.g.
+00008  *  ethernet, ip, arp ...). satp directly includes cryptography and
+00009  *  message authentication based on the methodes used by SRTP.  It is
+00010  *  intended to deliver a generic, scaleable and secure solution for
+00011  *  tunneling and relaying of packets of any protocol.
+00012  *
+00013  *
+00014  *  Copyright (C) 2007 anytun.org <satp@wirdorange.org>
+00015  *
+00016  *  This program is free software; you can redistribute it and/or modify
+00017  *  it under the terms of the GNU General Public License version 2
+00018  *  as published by the Free Software Foundation.
+00019  *
+00020  *  This program is distributed in the hope that it will be useful,
+00021  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+00022  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+00023  *  GNU General Public License for more details.
+00024  *
+00025  *  You should have received a copy of the GNU General Public License
+00026  *  along with this program (see the file COPYING included with this
+00027  *  distribution); if not, write to the Free Software Foundation, Inc.,
+00028  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+00029  */
+00030 
+00031 #ifndef _DATATYPES_H_
+00032 #define _DATATYPES_H_
+00033 
+00034 typedef signed char int8_t;
+00035 typedef unsigned char u_int8_t;
+00036 
+00037 typedef signed short int16;
+00038 typedef unsigned short u_int16_t;
+00039 
+00040 typedef signed int int32;
+00041 typedef unsigned int u_int32_t;
+00042 
+00043 //typedef signed long long int64_t;
+00044 //typedef unsigned long long u_int64_t;
+00045 
+00046 typedef u_int32_t window_size_t;
+00047 
+00048 typedef u_int32_t seq_nr_t;
+00049 #define SEQ_NR_T_NTOH(a) ntohl(a)
+00050 #define SEQ_NR_T_HTON(a) htonl(a)
+00051 
+00052 typedef u_int16_t sender_id_t;
+00053 #define SENDER_ID_T_NTOH(a) ntohs(a)
+00054 #define SENDER_ID_T_HTON(a) htons(a)
+00055 
+00056 typedef u_int16_t payload_type_t;
+00057 #define PAYLOAD_TYPE_T_NTOH(a) ntohs(a)
+00058 #define PAYLOAD_TYPE_T_HTON(a) htons(a)
+00059 
+00060 typedef u_int32_t auth_tag_t;
+00061 #define AUTH_TAG_T_NTOH(a) ntohl(a)
+00062 #define AUTH_TAG_T_HTON(a) htonl(a)
+00063 
+00064 #endif
+

Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/datatypes_8h.html b/doc/html/datatypes_8h.html new file mode 100644 index 0000000..137a5e0 --- /dev/null +++ b/doc/html/datatypes_8h.html @@ -0,0 +1,396 @@ + + +anytun: datatypes.h File Reference + + + + +
+
+
+
+

datatypes.h File Reference

+

+Go to the source code of this file. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Defines

#define SEQ_NR_T_NTOH(a)   ntohl(a)
#define SEQ_NR_T_HTON(a)   htonl(a)
#define SENDER_ID_T_NTOH(a)   ntohs(a)
#define SENDER_ID_T_HTON(a)   htons(a)
#define PAYLOAD_TYPE_T_NTOH(a)   ntohs(a)
#define PAYLOAD_TYPE_T_HTON(a)   htons(a)
#define AUTH_TAG_T_NTOH(a)   ntohl(a)
#define AUTH_TAG_T_HTON(a)   htonl(a)

Typedefs

typedef signed char int8_t
typedef unsigned char u_int8_t
typedef signed short int16
typedef unsigned short u_int16_t
typedef signed int int32
typedef unsigned int u_int32_t
typedef u_int32_t window_size_t
typedef u_int32_t seq_nr_t
typedef u_int16_t sender_id_t
typedef u_int16_t payload_type_t
typedef u_int32_t auth_tag_t
+


Define Documentation

+ +
+
+ + + + + + + + + +
#define AUTH_TAG_T_HTON (  )    htonl(a)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
#define AUTH_TAG_T_NTOH (  )    ntohl(a)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
#define PAYLOAD_TYPE_T_HTON (  )    htons(a)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
#define PAYLOAD_TYPE_T_NTOH (  )    ntohs(a)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
#define SENDER_ID_T_HTON (  )    htons(a)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
#define SENDER_ID_T_NTOH (  )    ntohs(a)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
#define SEQ_NR_T_HTON (  )    htonl(a)
+
+
+ +

+ +

+

+ +

+
+ + + + + + + + + +
#define SEQ_NR_T_NTOH (  )    ntohl(a)
+
+
+ +

+ +

+

+


Typedef Documentation

+ +
+
+ + + + +
typedef u_int32_t auth_tag_t
+
+
+ +

+ +

+

+ +

+
+ + + + +
typedef signed short int16
+
+
+ +

+ +

+

+ +

+
+ + + + +
typedef signed int int32
+
+
+ +

+ +

+

+ +

+
+ + + + +
typedef signed char int8_t
+
+
+ +

+ +

+

+ +

+
+ + + + +
typedef u_int16_t payload_type_t
+
+
+ +

+ +

+

+ +

+
+ + + + +
typedef u_int16_t sender_id_t
+
+
+ +

+ +

+

+ +

+
+ + + + +
typedef u_int32_t seq_nr_t
+
+
+ +

+ +

+

+ +

+
+ + + + +
typedef unsigned short u_int16_t
+
+
+ +

+ +

+

+ +

+
+ + + + +
typedef unsigned int u_int32_t
+
+
+ +

+ +

+

+ +

+
+ + + + +
typedef unsigned char u_int8_t
+
+
+ +

+ +

+

+ +

+
+ + + + +
typedef u_int32_t window_size_t
+
+
+ +

+ +

+

+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/doxygen.css b/doc/html/doxygen.css new file mode 100644 index 0000000..c7db1a8 --- /dev/null +++ b/doc/html/doxygen.css @@ -0,0 +1,358 @@ +BODY,H1,H2,H3,H4,H5,H6,P,CENTER,TD,TH,UL,DL,DIV { + font-family: Geneva, Arial, Helvetica, sans-serif; +} +BODY,TD { + font-size: 90%; +} +H1 { + text-align: center; + font-size: 160%; +} +H2 { + font-size: 120%; +} +H3 { + font-size: 100%; +} +CAPTION { font-weight: bold } +DIV.qindex { + width: 100%; + background-color: #e8eef2; + border: 1px solid #84b0c7; + text-align: center; + margin: 2px; + padding: 2px; + line-height: 140%; +} +DIV.nav { + width: 100%; + background-color: #e8eef2; + border: 1px solid #84b0c7; + text-align: center; + margin: 2px; + padding: 2px; + line-height: 140%; +} +DIV.navtab { + background-color: #e8eef2; + border: 1px solid #84b0c7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} +TD.navtab { + font-size: 70%; +} +A.qindex { + text-decoration: none; + font-weight: bold; + color: #1A419D; +} +A.qindex:visited { + text-decoration: none; + font-weight: bold; + color: #1A419D +} +A.qindex:hover { + text-decoration: none; + background-color: #ddddff; +} +A.qindexHL { + text-decoration: none; + font-weight: bold; + background-color: #6666cc; + color: #ffffff; + border: 1px double #9295C2; +} +A.qindexHL:hover { + text-decoration: none; + background-color: #6666cc; + color: #ffffff; +} +A.qindexHL:visited { text-decoration: none; background-color: #6666cc; color: #ffffff } +A.el { text-decoration: none; font-weight: bold } +A.elRef { font-weight: bold } +A.code:link { text-decoration: none; font-weight: normal; color: #0000FF} +A.code:visited { text-decoration: none; font-weight: normal; color: #0000FF} +A.codeRef:link { font-weight: normal; color: #0000FF} +A.codeRef:visited { font-weight: normal; color: #0000FF} +A:hover { text-decoration: none; background-color: #f2f2ff } +DL.el { margin-left: -1cm } +.fragment { + font-family: monospace, fixed; + font-size: 95%; +} +PRE.fragment { + border: 1px solid #CCCCCC; + background-color: #f5f5f5; + margin-top: 4px; + margin-bottom: 4px; + margin-left: 2px; + margin-right: 8px; + padding-left: 6px; + padding-right: 6px; + padding-top: 4px; + padding-bottom: 4px; +} +DIV.ah { background-color: black; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px } + +DIV.groupHeader { + margin-left: 16px; + margin-top: 12px; + margin-bottom: 6px; + font-weight: bold; +} +DIV.groupText { margin-left: 16px; font-style: italic; font-size: 90% } +BODY { + background: white; + color: black; + margin-right: 20px; + margin-left: 20px; +} +TD.indexkey { + background-color: #e8eef2; + font-weight: bold; + padding-right : 10px; + padding-top : 2px; + padding-left : 10px; + padding-bottom : 2px; + margin-left : 0px; + margin-right : 0px; + margin-top : 2px; + margin-bottom : 2px; + border: 1px solid #CCCCCC; +} +TD.indexvalue { + background-color: #e8eef2; + font-style: italic; + padding-right : 10px; + padding-top : 2px; + padding-left : 10px; + padding-bottom : 2px; + margin-left : 0px; + margin-right : 0px; + margin-top : 2px; + margin-bottom : 2px; + border: 1px solid #CCCCCC; +} +TR.memlist { + background-color: #f0f0f0; +} +P.formulaDsp { text-align: center; } +IMG.formulaDsp { } +IMG.formulaInl { vertical-align: middle; } +SPAN.keyword { color: #008000 } +SPAN.keywordtype { color: #604020 } +SPAN.keywordflow { color: #e08000 } +SPAN.comment { color: #800000 } +SPAN.preprocessor { color: #806020 } +SPAN.stringliteral { color: #002080 } +SPAN.charliteral { color: #008080 } +.mdescLeft { + padding: 0px 8px 4px 8px; + font-size: 80%; + font-style: italic; + background-color: #FAFAFA; + border-top: 1px none #E0E0E0; + border-right: 1px none #E0E0E0; + border-bottom: 1px none #E0E0E0; + border-left: 1px none #E0E0E0; + margin: 0px; +} +.mdescRight { + padding: 0px 8px 4px 8px; + font-size: 80%; + font-style: italic; + background-color: #FAFAFA; + border-top: 1px none #E0E0E0; + border-right: 1px none #E0E0E0; + border-bottom: 1px none #E0E0E0; + border-left: 1px none #E0E0E0; + margin: 0px; +} +.memItemLeft { + padding: 1px 0px 0px 8px; + margin: 4px; + border-top-width: 1px; + border-right-width: 1px; + border-bottom-width: 1px; + border-left-width: 1px; + border-top-color: #E0E0E0; + border-right-color: #E0E0E0; + border-bottom-color: #E0E0E0; + border-left-color: #E0E0E0; + border-top-style: solid; + border-right-style: none; + border-bottom-style: none; + border-left-style: none; + background-color: #FAFAFA; + font-size: 80%; +} +.memItemRight { + padding: 1px 8px 0px 8px; + margin: 4px; + border-top-width: 1px; + border-right-width: 1px; + border-bottom-width: 1px; + border-left-width: 1px; + border-top-color: #E0E0E0; + border-right-color: #E0E0E0; + border-bottom-color: #E0E0E0; + border-left-color: #E0E0E0; + border-top-style: solid; + border-right-style: none; + border-bottom-style: none; + border-left-style: none; + background-color: #FAFAFA; + font-size: 80%; +} +.memTemplItemLeft { + padding: 1px 0px 0px 8px; + margin: 4px; + border-top-width: 1px; + border-right-width: 1px; + border-bottom-width: 1px; + border-left-width: 1px; + border-top-color: #E0E0E0; + border-right-color: #E0E0E0; + border-bottom-color: #E0E0E0; + border-left-color: #E0E0E0; + border-top-style: none; + border-right-style: none; + border-bottom-style: none; + border-left-style: none; + background-color: #FAFAFA; + font-size: 80%; +} +.memTemplItemRight { + padding: 1px 8px 0px 8px; + margin: 4px; + border-top-width: 1px; + border-right-width: 1px; + border-bottom-width: 1px; + border-left-width: 1px; + border-top-color: #E0E0E0; + border-right-color: #E0E0E0; + border-bottom-color: #E0E0E0; + border-left-color: #E0E0E0; + border-top-style: none; + border-right-style: none; + border-bottom-style: none; + border-left-style: none; + background-color: #FAFAFA; + font-size: 80%; +} +.memTemplParams { + padding: 1px 0px 0px 8px; + margin: 4px; + border-top-width: 1px; + border-right-width: 1px; + border-bottom-width: 1px; + border-left-width: 1px; + border-top-color: #E0E0E0; + border-right-color: #E0E0E0; + border-bottom-color: #E0E0E0; + border-left-color: #E0E0E0; + border-top-style: solid; + border-right-style: none; + border-bottom-style: none; + border-left-style: none; + color: #606060; + background-color: #FAFAFA; + font-size: 80%; +} +.search { color: #003399; + font-weight: bold; +} +FORM.search { + margin-bottom: 0px; + margin-top: 0px; +} +INPUT.search { font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +TD.tiny { font-size: 75%; +} +a { + color: #1A41A8; +} +a:visited { + color: #2A3798; +} +.dirtab { padding: 4px; + border-collapse: collapse; + border: 1px solid #84b0c7; +} +TH.dirtab { background: #e8eef2; + font-weight: bold; +} +HR { height: 1px; + border: none; + border-top: 1px solid black; +} + +/* Style for detailed member documentation */ +.memtemplate { + font-size: 80%; + color: #606060; + font-weight: normal; +} +.memnav { + background-color: #e8eef2; + border: 1px solid #84b0c7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} +.memitem { + padding: 4px; + background-color: #eef3f5; + border-width: 1px; + border-style: solid; + border-color: #dedeee; + -moz-border-radius: 8px 8px 8px 8px; +} +.memname { + white-space: nowrap; + font-weight: bold; +} +.memdoc{ + padding-left: 10px; +} +.memproto { + background-color: #d5e1e8; + width: 100%; + border-width: 1px; + border-style: solid; + border-color: #84b0c7; + font-weight: bold; + -moz-border-radius: 8px 8px 8px 8px; +} +.paramkey { + text-align: right; +} +.paramtype { + white-space: nowrap; +} +.paramname { + color: #602020; + font-style: italic; + white-space: nowrap; +} +/* End Styling for detailed member documentation */ + +/* for the tree view */ +.ftvtree { + font-family: sans-serif; + margin:0.5em; +} +.directory { font-size: 9pt; font-weight: bold; } +.directory h3 { margin: 0px; margin-top: 1em; font-size: 11pt; } +.directory > h3 { margin-top: 0; } +.directory p { margin: 0px; white-space: nowrap; } +.directory div { display: none; margin: 0px; } +.directory img { vertical-align: -30%; } diff --git a/doc/html/doxygen.png b/doc/html/doxygen.png new file mode 100644 index 0000000..f0a274b Binary files /dev/null and b/doc/html/doxygen.png differ diff --git a/doc/html/files.html b/doc/html/files.html new file mode 100644 index 0000000..4fd1c04 --- /dev/null +++ b/doc/html/files.html @@ -0,0 +1,54 @@ + + +anytun: File Index + + + + +
+
+
+
+

anytun File List

Here is a list of all files with brief descriptions: + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
anytun.cpp
authAlgo.cpp
authAlgo.h [code]
buffer.cpp
buffer.h [code]
cypher.cpp
cypher.h [code]
datatypes.h [code]
keyDerivation.cpp
keyDerivation.h [code]
log.cpp
log.h [code]
options.cpp
options.h [code]
packet.cpp
packet.h [code]
packetSource.cpp
packetSource.h [code]
PracticalSocket.cpp
PracticalSocket.h [code]
satp.py
seqWindow.cpp
seqWindow.h [code]
signalController.cpp
signalController.h [code]
threadUtils.hpp [code]
tunDevice.cpp
tunDevice.h [code]
+
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/ftv2blank.png b/doc/html/ftv2blank.png new file mode 100644 index 0000000..493c3c0 Binary files /dev/null and b/doc/html/ftv2blank.png differ diff --git a/doc/html/ftv2doc.png b/doc/html/ftv2doc.png new file mode 100644 index 0000000..f72999f Binary files /dev/null and b/doc/html/ftv2doc.png differ diff --git a/doc/html/ftv2folderclosed.png b/doc/html/ftv2folderclosed.png new file mode 100644 index 0000000..d6d0634 Binary files /dev/null and b/doc/html/ftv2folderclosed.png differ diff --git a/doc/html/ftv2folderopen.png b/doc/html/ftv2folderopen.png new file mode 100644 index 0000000..bbe2c91 Binary files /dev/null and b/doc/html/ftv2folderopen.png differ diff --git a/doc/html/ftv2lastnode.png b/doc/html/ftv2lastnode.png new file mode 100644 index 0000000..e7b9ba9 Binary files /dev/null and b/doc/html/ftv2lastnode.png differ diff --git a/doc/html/ftv2link.png b/doc/html/ftv2link.png new file mode 100644 index 0000000..14f3fed Binary files /dev/null and b/doc/html/ftv2link.png differ diff --git a/doc/html/ftv2mlastnode.png b/doc/html/ftv2mlastnode.png new file mode 100644 index 0000000..09ceb6a Binary files /dev/null and b/doc/html/ftv2mlastnode.png differ diff --git a/doc/html/ftv2mnode.png b/doc/html/ftv2mnode.png new file mode 100644 index 0000000..3254c05 Binary files /dev/null and b/doc/html/ftv2mnode.png differ diff --git a/doc/html/ftv2node.png b/doc/html/ftv2node.png new file mode 100644 index 0000000..c9f06a5 Binary files /dev/null and b/doc/html/ftv2node.png differ diff --git a/doc/html/ftv2plastnode.png b/doc/html/ftv2plastnode.png new file mode 100644 index 0000000..0b07e00 Binary files /dev/null and b/doc/html/ftv2plastnode.png differ diff --git a/doc/html/ftv2pnode.png b/doc/html/ftv2pnode.png new file mode 100644 index 0000000..2001b79 Binary files /dev/null and b/doc/html/ftv2pnode.png differ diff --git a/doc/html/ftv2vertline.png b/doc/html/ftv2vertline.png new file mode 100644 index 0000000..b330f3a Binary files /dev/null and b/doc/html/ftv2vertline.png differ diff --git a/doc/html/functions.html b/doc/html/functions.html new file mode 100644 index 0000000..cf11b0f --- /dev/null +++ b/doc/html/functions.html @@ -0,0 +1,69 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- _ -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x61.html b/doc/html/functions_0x61.html new file mode 100644 index 0000000..f0c9059 --- /dev/null +++ b/doc/html/functions_0x61.html @@ -0,0 +1,86 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- a -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x62.html b/doc/html/functions_0x62.html new file mode 100644 index 0000000..35b6647 --- /dev/null +++ b/doc/html/functions_0x62.html @@ -0,0 +1,73 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- b -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x63.html b/doc/html/functions_0x63.html new file mode 100644 index 0000000..679141a --- /dev/null +++ b/doc/html/functions_0x63.html @@ -0,0 +1,98 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- c -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x64.html b/doc/html/functions_0x64.html new file mode 100644 index 0000000..e9a8a48 --- /dev/null +++ b/doc/html/functions_0x64.html @@ -0,0 +1,79 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- d -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x65.html b/doc/html/functions_0x65.html new file mode 100644 index 0000000..e5cb735 --- /dev/null +++ b/doc/html/functions_0x65.html @@ -0,0 +1,69 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- e -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x66.html b/doc/html/functions_0x66.html new file mode 100644 index 0000000..952d4a3 --- /dev/null +++ b/doc/html/functions_0x66.html @@ -0,0 +1,109 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- f -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x67.html b/doc/html/functions_0x67.html new file mode 100644 index 0000000..85b0e5c --- /dev/null +++ b/doc/html/functions_0x67.html @@ -0,0 +1,132 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- g -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x68.html b/doc/html/functions_0x68.html new file mode 100644 index 0000000..fd2c8f3 --- /dev/null +++ b/doc/html/functions_0x68.html @@ -0,0 +1,94 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- h -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x69.html b/doc/html/functions_0x69.html new file mode 100644 index 0000000..ed98de0 --- /dev/null +++ b/doc/html/functions_0x69.html @@ -0,0 +1,86 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- i -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x6a.html b/doc/html/functions_0x6a.html new file mode 100644 index 0000000..00ab2d4 --- /dev/null +++ b/doc/html/functions_0x6a.html @@ -0,0 +1,69 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- j -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x6b.html b/doc/html/functions_0x6b.html new file mode 100644 index 0000000..c103e47 --- /dev/null +++ b/doc/html/functions_0x6b.html @@ -0,0 +1,72 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- k -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x6c.html b/doc/html/functions_0x6c.html new file mode 100644 index 0000000..33c53d9 --- /dev/null +++ b/doc/html/functions_0x6c.html @@ -0,0 +1,94 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- l -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x6d.html b/doc/html/functions_0x6d.html new file mode 100644 index 0000000..faf5624 --- /dev/null +++ b/doc/html/functions_0x6d.html @@ -0,0 +1,86 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- m -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x6e.html b/doc/html/functions_0x6e.html new file mode 100644 index 0000000..0f5d2ea --- /dev/null +++ b/doc/html/functions_0x6e.html @@ -0,0 +1,69 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- n -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x6f.html b/doc/html/functions_0x6f.html new file mode 100644 index 0000000..f959ddf --- /dev/null +++ b/doc/html/functions_0x6f.html @@ -0,0 +1,91 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- o -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x70.html b/doc/html/functions_0x70.html new file mode 100644 index 0000000..8332b6f --- /dev/null +++ b/doc/html/functions_0x70.html @@ -0,0 +1,97 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- p -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x72.html b/doc/html/functions_0x72.html new file mode 100644 index 0000000..c3389f1 --- /dev/null +++ b/doc/html/functions_0x72.html @@ -0,0 +1,95 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- r -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x73.html b/doc/html/functions_0x73.html new file mode 100644 index 0000000..54bc48d --- /dev/null +++ b/doc/html/functions_0x73.html @@ -0,0 +1,188 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- s -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x74.html b/doc/html/functions_0x74.html new file mode 100644 index 0000000..382a229 --- /dev/null +++ b/doc/html/functions_0x74.html @@ -0,0 +1,83 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- t -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x75.html b/doc/html/functions_0x75.html new file mode 100644 index 0000000..d5a5715 --- /dev/null +++ b/doc/html/functions_0x75.html @@ -0,0 +1,78 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- u -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x77.html b/doc/html/functions_0x77.html new file mode 100644 index 0000000..a1c0d92 --- /dev/null +++ b/doc/html/functions_0x77.html @@ -0,0 +1,81 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- w -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_0x7e.html b/doc/html/functions_0x7e.html new file mode 100644 index 0000000..e172300 --- /dev/null +++ b/doc/html/functions_0x7e.html @@ -0,0 +1,105 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all class members with links to the classes they belong to: +

+

- ~ -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func.html b/doc/html/functions_func.html new file mode 100644 index 0000000..47226f1 --- /dev/null +++ b/doc/html/functions_func.html @@ -0,0 +1,78 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- a -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x62.html b/doc/html/functions_func_0x62.html new file mode 100644 index 0000000..2129cb3 --- /dev/null +++ b/doc/html/functions_func_0x62.html @@ -0,0 +1,68 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- b -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x63.html b/doc/html/functions_func_0x63.html new file mode 100644 index 0000000..f67bc59 --- /dev/null +++ b/doc/html/functions_func_0x63.html @@ -0,0 +1,85 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- c -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x64.html b/doc/html/functions_func_0x64.html new file mode 100644 index 0000000..16166b2 --- /dev/null +++ b/doc/html/functions_func_0x64.html @@ -0,0 +1,68 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- d -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x65.html b/doc/html/functions_func_0x65.html new file mode 100644 index 0000000..e57ffd0 --- /dev/null +++ b/doc/html/functions_func_0x65.html @@ -0,0 +1,66 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- e -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x67.html b/doc/html/functions_func_0x67.html new file mode 100644 index 0000000..db6ee05 --- /dev/null +++ b/doc/html/functions_func_0x67.html @@ -0,0 +1,125 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- g -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x68.html b/doc/html/functions_func_0x68.html new file mode 100644 index 0000000..317578f --- /dev/null +++ b/doc/html/functions_func_0x68.html @@ -0,0 +1,81 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- h -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x69.html b/doc/html/functions_func_0x69.html new file mode 100644 index 0000000..aa8722a --- /dev/null +++ b/doc/html/functions_func_0x69.html @@ -0,0 +1,71 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- i -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x6a.html b/doc/html/functions_func_0x6a.html new file mode 100644 index 0000000..d51ed2f --- /dev/null +++ b/doc/html/functions_func_0x6a.html @@ -0,0 +1,66 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- j -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x6b.html b/doc/html/functions_func_0x6b.html new file mode 100644 index 0000000..45cf46d --- /dev/null +++ b/doc/html/functions_func_0x6b.html @@ -0,0 +1,66 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- k -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x6c.html b/doc/html/functions_func_0x6c.html new file mode 100644 index 0000000..7a49dbd --- /dev/null +++ b/doc/html/functions_func_0x6c.html @@ -0,0 +1,76 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- l -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x6d.html b/doc/html/functions_func_0x6d.html new file mode 100644 index 0000000..3dd680b --- /dev/null +++ b/doc/html/functions_func_0x6d.html @@ -0,0 +1,68 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- m -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x6f.html b/doc/html/functions_func_0x6f.html new file mode 100644 index 0000000..135dfdd --- /dev/null +++ b/doc/html/functions_func_0x6f.html @@ -0,0 +1,86 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- o -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x70.html b/doc/html/functions_func_0x70.html new file mode 100644 index 0000000..acba6e1 --- /dev/null +++ b/doc/html/functions_func_0x70.html @@ -0,0 +1,74 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- p -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x72.html b/doc/html/functions_func_0x72.html new file mode 100644 index 0000000..30ed054 --- /dev/null +++ b/doc/html/functions_func_0x72.html @@ -0,0 +1,88 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- r -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x73.html b/doc/html/functions_func_0x73.html new file mode 100644 index 0000000..48b0410 --- /dev/null +++ b/doc/html/functions_func_0x73.html @@ -0,0 +1,148 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- s -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x74.html b/doc/html/functions_func_0x74.html new file mode 100644 index 0000000..bb82ff7 --- /dev/null +++ b/doc/html/functions_func_0x74.html @@ -0,0 +1,70 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- t -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x75.html b/doc/html/functions_func_0x75.html new file mode 100644 index 0000000..8a1b881 --- /dev/null +++ b/doc/html/functions_func_0x75.html @@ -0,0 +1,72 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- u -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x77.html b/doc/html/functions_func_0x77.html new file mode 100644 index 0000000..831b9bd --- /dev/null +++ b/doc/html/functions_func_0x77.html @@ -0,0 +1,76 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- w -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_func_0x7e.html b/doc/html/functions_func_0x7e.html new file mode 100644 index 0000000..312a881 --- /dev/null +++ b/doc/html/functions_func_0x7e.html @@ -0,0 +1,102 @@ + + +anytun: Class Members - Functions + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- ~ -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_rela.html b/doc/html/functions_rela.html new file mode 100644 index 0000000..dda54a4 --- /dev/null +++ b/doc/html/functions_rela.html @@ -0,0 +1,58 @@ + + +anytun: Class Members - Related Functions + + + + +
+
+
+
+
+ +
+  +

+

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_type.html b/doc/html/functions_type.html new file mode 100644 index 0000000..682dc77 --- /dev/null +++ b/doc/html/functions_type.html @@ -0,0 +1,44 @@ + + +anytun: Class Members - Typedefs + + + + +
+
+
+
+
+ +
+  +

+

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/functions_vars.html b/doc/html/functions_vars.html new file mode 100644 index 0000000..fa5bcea --- /dev/null +++ b/doc/html/functions_vars.html @@ -0,0 +1,287 @@ + + +anytun: Class Members - Variables + + + + +
+
+
+
+
+ +
+
+ +
+ +

+  +

+

- _ -

+

- a -

+

- b -

+

- c -

+

- d -

+

- f -

+

- g -

+

- h -

+

- i -

+

- k -

+

- l -

+

- m -

+

- n -

+

- o -

+

- p -

+

- r -

+

- s -

+

- t -

+

- u -

+

- w -

+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/globals.html b/doc/html/globals.html new file mode 100644 index 0000000..3b8d399 --- /dev/null +++ b/doc/html/globals.html @@ -0,0 +1,149 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+
+ +
+ +

+Here is a list of all file members with links to the files they belong to: +

+

- a -

+

- c -

+

- f -

+

- i -

+

- l -

+

- m -

+

- p -

+

- r -

+

- s -

+

- u -

+

- w -

+
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/globals_defs.html b/doc/html/globals_defs.html new file mode 100644 index 0000000..182c110 --- /dev/null +++ b/doc/html/globals_defs.html @@ -0,0 +1,67 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+  +

+

+
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/globals_enum.html b/doc/html/globals_enum.html new file mode 100644 index 0000000..c13d622 --- /dev/null +++ b/doc/html/globals_enum.html @@ -0,0 +1,41 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+  +

+

+
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/globals_eval.html b/doc/html/globals_eval.html new file mode 100644 index 0000000..81be342 --- /dev/null +++ b/doc/html/globals_eval.html @@ -0,0 +1,45 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+  +

+

+
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/globals_func.html b/doc/html/globals_func.html new file mode 100644 index 0000000..54a30fc --- /dev/null +++ b/doc/html/globals_func.html @@ -0,0 +1,47 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+  +

+

+
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/globals_type.html b/doc/html/globals_type.html new file mode 100644 index 0000000..e34e716 --- /dev/null +++ b/doc/html/globals_type.html @@ -0,0 +1,63 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+  +

+

+
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/globals_vars.html b/doc/html/globals_vars.html new file mode 100644 index 0000000..41911f5 --- /dev/null +++ b/doc/html/globals_vars.html @@ -0,0 +1,44 @@ + + +anytun: Class Members + + + + +
+
+
+
+
+ +
+  +

+

+
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/hierarchy.html b/doc/html/hierarchy.html new file mode 100644 index 0000000..07e4558 --- /dev/null +++ b/doc/html/hierarchy.html @@ -0,0 +1,84 @@ + + +anytun: Hierarchical Index + + + + +
+
+
+
+

anytun Class Hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically: +
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/index.html b/doc/html/index.html new file mode 100644 index 0000000..1b8693f --- /dev/null +++ b/doc/html/index.html @@ -0,0 +1,8 @@ + + +anytun + + + + + diff --git a/doc/html/keyDerivation_8cpp.html b/doc/html/keyDerivation_8cpp.html new file mode 100644 index 0000000..d6e5b1e --- /dev/null +++ b/doc/html/keyDerivation_8cpp.html @@ -0,0 +1,30 @@ + + +anytun: keyDerivation.cpp File Reference + + + + +
+
+
+
+

keyDerivation.cpp File Reference

#include "keyDerivation.h"
+#include <iostream>
+#include <srtp/crypto_kernel.h>
+ + +
+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/keyDerivation_8h-source.html b/doc/html/keyDerivation_8h-source.html new file mode 100644 index 0000000..38ccb23 --- /dev/null +++ b/doc/html/keyDerivation_8h-source.html @@ -0,0 +1,97 @@ + + +anytun: keyDerivation.h Source File + + + + +
+
+
+
+

keyDerivation.h

Go to the documentation of this file.
00001 /*
+00002  *  anytun
+00003  *
+00004  *  The secure anycast tunneling protocol (satp) defines a protocol used
+00005  *  for communication between any combination of unicast and anycast
+00006  *  tunnel endpoints.  It has less protocol overhead than IPSec in Tunnel
+00007  *  mode and allows tunneling of every ETHER TYPE protocol (e.g.
+00008  *  ethernet, ip, arp ...). satp directly includes cryptography and
+00009  *  message authentication based on the methodes used by SRTP.  It is
+00010  *  intended to deliver a generic, scaleable and secure solution for
+00011  *  tunneling and relaying of packets of any protocol.
+00012  *
+00013  *
+00014  *  Copyright (C) 2007 anytun.org <satp@wirdorange.org>
+00015  *
+00016  *  This program is free software; you can redistribute it and/or modify
+00017  *  it under the terms of the GNU General Public License version 2
+00018  *  as published by the Free Software Foundation.
+00019  *
+00020  *  This program is distributed in the hope that it will be useful,
+00021  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+00022  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+00023  *  GNU General Public License for more details.
+00024  *
+00025  *  You should have received a copy of the GNU General Public License
+00026  *  along with this program (see the file COPYING included with this
+00027  *  distribution); if not, write to the Free Software Foundation, Inc.,
+00028  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+00029  */
+00030 
+00031 #ifndef _KEYDERIVATION_H_
+00032 #define _KEYDERIVATION_H_
+00033 
+00034 #include "datatypes.h"
+00035 #include "buffer.h"
+00036 
+00037 #include <string>
+00038 
+00039 extern "C" {
+00040   #include <srtp/crypto_kernel.h>
+00041   #include <gcrypt.h>
+00042 }
+00043 
+00044 
+00045 typedef enum {
+00046   label_satp_encryption  = 0x00,
+00047   label_satp_msg_auth    = 0x01,
+00048   label_satp_salt        = 0x02,
+00049 } satp_prf_label;
+00050 
+00051 class KeyDerivation
+00052 {
+00053 public:
+00054   KeyDerivation() : ld_kdr_(-1), cipher_(NULL) {};
+00055   virtual ~KeyDerivation() {};
+00056 
+00057   void init(Buffer key, Buffer salt);
+00058   err_status_t setLogKDRate(const uint8_t ld_rate);
+00059   err_status_t generate(satp_prf_label label, seq_nr_t seq_nr, Buffer& key, uint32_t length);
+00060   void clear();
+00061 
+00062   static const std::string MIN_GCRYPT_VERSION;
+00063 
+00064 protected:
+00065   int8_t ld_kdr_;     // ld(key_derivation_rate)
+00066   Buffer salt_;
+00067 
+00068   gcry_cipher_hd_t cipher_;
+00069 };
+00070 
+00071 const std::string MIN_GCRYPT_VERSION = "1.2.3";
+00072 
+00073 #endif
+

Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/keyDerivation_8h.html b/doc/html/keyDerivation_8h.html new file mode 100644 index 0000000..ba8fff3 --- /dev/null +++ b/doc/html/keyDerivation_8h.html @@ -0,0 +1,88 @@ + + +anytun: keyDerivation.h File Reference + + + + +
+
+
+
+

keyDerivation.h File Reference

#include "datatypes.h"
+#include "buffer.h"
+#include <string>
+#include <srtp/crypto_kernel.h>
+#include <gcrypt.h>
+ +

+Go to the source code of this file. + + + + + + + + + + +

Classes

class  KeyDerivation

Enumerations

enum  satp_prf_label { label_satp_encryption = 0x00, +label_satp_msg_auth = 0x01, +label_satp_salt = 0x02 + }

Variables

const std::string MIN_GCRYPT_VERSION = "1.2.3"
+


Enumeration Type Documentation

+ +
+
+ + + + +
enum satp_prf_label
+
+
+ +

+

Enumerator:
+ + + + +
label_satp_encryption  +
label_satp_msg_auth  +
label_satp_salt  +
+
+ +
+

+


Variable Documentation

+ +
+
+ + + + +
const std::string MIN_GCRYPT_VERSION = "1.2.3"
+
+
+ +

+ +

+

+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/log_8cpp.html b/doc/html/log_8cpp.html new file mode 100644 index 0000000..f1ed570 --- /dev/null +++ b/doc/html/log_8cpp.html @@ -0,0 +1,51 @@ + + +anytun: log.cpp File Reference + + + + +
+
+
+
+

log.cpp File Reference

#include <iostream>
+#include <string>
+#include <syslog.h>
+#include "log.h"
+#include "threadUtils.hpp"
+ + + + + +

Variables

LogcLog = Log::instance()
+

Variable Documentation

+ +
+
+ + + + +
Log& cLog = Log::instance()
+
+
+ +

+ +

+

+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/log_8h-source.html b/doc/html/log_8h-source.html new file mode 100644 index 0000000..d5599f9 --- /dev/null +++ b/doc/html/log_8h-source.html @@ -0,0 +1,150 @@ + + +anytun: log.h Source File + + + + +
+
+
+
+

log.h

Go to the documentation of this file.
00001 /*
+00002  *  anytun
+00003  *
+00004  *  The secure anycast tunneling protocol (satp) defines a protocol used
+00005  *  for communication between any combination of unicast and anycast
+00006  *  tunnel endpoints.  It has less protocol overhead than IPSec in Tunnel
+00007  *  mode and allows tunneling of every ETHER TYPE protocol (e.g.
+00008  *  ethernet, ip, arp ...). satp directly includes cryptography and
+00009  *  message authentication based on the methodes used by SRTP.  It is
+00010  *  intended to deliver a generic, scaleable and secure solution for
+00011  *  tunneling and relaying of packets of any protocol.
+00012  *
+00013  *
+00014  *  Copyright (C) 2007 anytun.org <satp@wirdorange.org>
+00015  *
+00016  *  This program is free software; you can redistribute it and/or modify
+00017  *  it under the terms of the GNU General Public License version 2
+00018  *  as published by the Free Software Foundation.
+00019  *
+00020  *  This program is distributed in the hope that it will be useful,
+00021  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+00022  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+00023  *  GNU General Public License for more details.
+00024  *
+00025  *  You should have received a copy of the GNU General Public License
+00026  *  along with this program (see the file COPYING included with this
+00027  *  distribution); if not, write to the Free Software Foundation, Inc.,
+00028  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+00029  */
+00030 
+00031 #ifndef _LOG_H_
+00032 #define _LOG_H_
+00033 
+00034 #include <string>
+00035 #include <sstream>
+00036 #include <syslog.h>
+00037 
+00038 #include "threadUtils.hpp"
+00039 
+00040 class Log;
+00041 
+00042 class LogStringBuilder 
+00043 {
+00044 public:
+00045   LogStringBuilder(LogStringBuilder const& src);
+00046   LogStringBuilder(Log& l, int p);
+00047   ~LogStringBuilder();
+00048 
+00049   template<class T>
+00050   std::ostream& operator<<(T const& value) { return stream << value; }
+00051 
+00052 private:
+00053   Log& log;
+00054   int prio;
+00055   std::stringstream stream;
+00056 };
+00057 
+00058 class Log : public std::ostringstream
+00059 {
+00060 public:
+00061   static const int FAC_USER = LOG_USER;
+00062   static const int FAC_MAIL = LOG_MAIL;
+00063   static const int FAC_DAEMON = LOG_DAEMON;
+00064   static const int FAC_AUTH = LOG_AUTH;
+00065   static const int FAC_SYSLOG = LOG_SYSLOG;
+00066   static const int FAC_LPR = LOG_LPR;
+00067   static const int FAC_NEWS = LOG_NEWS;
+00068   static const int FAC_UUCP = LOG_UUCP;
+00069   static const int FAC_CRON = LOG_CRON;
+00070   static const int FAC_AUTHPRIV = LOG_AUTHPRIV;
+00071   static const int FAC_FTP = LOG_FTP;
+00072   static const int FAC_LOCAL0 = LOG_LOCAL0;
+00073   static const int FAC_LOCAL1 = LOG_LOCAL1;
+00074   static const int FAC_LOCAL2 = LOG_LOCAL2;
+00075   static const int FAC_LOCAL3 = LOG_LOCAL3;
+00076   static const int FAC_LOCAL4 = LOG_LOCAL4;
+00077   static const int FAC_LOCAL5 = LOG_LOCAL5;
+00078   static const int FAC_LOCAL6 = LOG_LOCAL6;
+00079   static const int FAC_LOCAL7 = LOG_LOCAL7;
+00080 
+00081   static const int PRIO_EMERG = LOG_EMERG;
+00082   static const int PRIO_ALERT = LOG_ALERT;
+00083   static const int PRIO_CRIT = LOG_CRIT;
+00084   static const int PRIO_ERR = LOG_ERR;
+00085   static const int PRIO_WARNING = LOG_WARNING;
+00086   static const int PRIO_NOTICE = LOG_NOTICE;
+00087   static const int PRIO_INFO = LOG_INFO;
+00088   static const int PRIO_DEBUG = LOG_DEBUG;
+00089 
+00090   static Log& instance();
+00091 
+00092   Log& setLogName(std::string newLogName); 
+00093   std::string getLogName() const { return logName; }
+00094   Log& setFacility(int newFacility);
+00095   int getFacility() const { return facility; }
+00096 
+00097   LogStringBuilder msg(int prio=PRIO_INFO) { return LogStringBuilder(*this, prio); }
+00098 
+00099 private:
+00100   Log();
+00101   ~Log();
+00102   Log(const Log &l);
+00103   void operator=(const Log &l);
+00104 
+00105   static Log* inst;
+00106   static Mutex instMutex;
+00107   class instanceCleaner {
+00108     public: ~instanceCleaner() {
+00109       if(Log::inst != 0)
+00110         delete Log::inst;
+00111     }
+00112   };
+00113   friend class instanceCleaner;
+00114 
+00115   void open();
+00116 
+00117   Mutex mutex;
+00118   friend class LogStringBuilder;
+00119 
+00120   std::string logName;
+00121   int facility;
+00122 };
+00123 
+00124 extern Log& cLog;
+00125 
+00126 #endif
+

Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/log_8h.html b/doc/html/log_8h.html new file mode 100644 index 0000000..8968c01 --- /dev/null +++ b/doc/html/log_8h.html @@ -0,0 +1,59 @@ + + +anytun: log.h File Reference + + + + +
+
+
+
+

log.h File Reference

#include <string>
+#include <sstream>
+#include <syslog.h>
+#include "threadUtils.hpp"
+ +

+Go to the source code of this file. + + + + + + + + + + + +

Classes

class  LogStringBuilder
class  Log
class  Log::instanceCleaner

Variables

LogcLog
+


Variable Documentation

+ +
+
+ + + + +
Log& cLog
+
+
+ +

+ +

+

+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/main.html b/doc/html/main.html new file mode 100644 index 0000000..db41d95 --- /dev/null +++ b/doc/html/main.html @@ -0,0 +1,26 @@ + + +anytun: Main Page + + + + +
+
+

anytun Documentation

+

+anytun

+The secure anycast tunneling protocol (satp) defines a protocol used for communication between any combination of unicast and anycast tunnel endpoints. It has less protocol overhead than IPSec in Tunnel mode and allows tunneling of every ETHER TYPE protocol (e.g. ethernet, ip, arp ...). satp directly includes cryptography and message authentication based on the methodes used by SRTP. It is intended to deliver a generic, scaleable and secure solution for tunneling and relaying of packets of any protocol.

+Copyright (C) 2007 anytun.org <satp@wirdorange.org>

+This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.

+This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

+You should have received a copy of the GNU General Public License along with this program (see the file COPYING included with this distribution); if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/namespaces.html b/doc/html/namespaces.html new file mode 100644 index 0000000..7390571 --- /dev/null +++ b/doc/html/namespaces.html @@ -0,0 +1,24 @@ + + +anytun: Namespace Index + + + + +
+
+

anytun Namespace List

Here is a list of all namespaces with brief descriptions: + + + +
satp
scapy::*
std
+
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/namespacesatp.html b/doc/html/namespacesatp.html new file mode 100644 index 0000000..db10b4a --- /dev/null +++ b/doc/html/namespacesatp.html @@ -0,0 +1,27 @@ + + +anytun: satp Namespace Reference + + + + +
+
+

satp Namespace Reference

+

+ + + + + +

Classes

class  SATP
+


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/namespacescapy_1_1_5.html b/doc/html/namespacescapy_1_1_5.html new file mode 100644 index 0000000..1fdb06e --- /dev/null +++ b/doc/html/namespacescapy_1_1_5.html @@ -0,0 +1,24 @@ + + +anytun: scapy::* Namespace Reference + + + + +
+
+

scapy::* Namespace Reference

+

+ + +
+


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/namespacestd.html b/doc/html/namespacestd.html new file mode 100644 index 0000000..f8d9d87 --- /dev/null +++ b/doc/html/namespacestd.html @@ -0,0 +1,24 @@ + + +anytun: std Namespace Reference + + + + +
+
+

std Namespace Reference

+

+ + +
+


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/options_8cpp.html b/doc/html/options_8cpp.html new file mode 100644 index 0000000..da716ce --- /dev/null +++ b/doc/html/options_8cpp.html @@ -0,0 +1,175 @@ + + +anytun: options.cpp File Reference + + + + +
+
+
+
+

options.cpp File Reference

#include <iostream>
+#include <string>
+#include <sstream>
+#include "datatypes.h"
+#include "options.h"
+ + + + + + + + + + + +

Defines

#define PARSE_BOOL_PARAM(SHORT, LONG, VALUE)
#define PARSE_INVERSE_BOOL_PARAM(SHORT, LONG, VALUE)
#define PARSE_SCALAR_PARAM(SHORT, LONG, VALUE)
#define PARSE_SCALAR_PARAM2(SHORT, LONG, VALUE1, VALUE2)
+

Define Documentation

+ +
+
+ + + + + + + + + + + + + + + +
#define PARSE_BOOL_PARAM (SHORT,
LONG,
VALUE   ) 
+
+
+ +

+Value:

else if(str == SHORT || str == LONG)                 \
+      VALUE = true;
+
+
+

+ +

+
+ + + + + + + + + + + + + + + +
#define PARSE_INVERSE_BOOL_PARAM (SHORT,
LONG,
VALUE   ) 
+
+
+ +

+Value:

else if(str == SHORT || str == LONG)                 \
+      VALUE = false;
+
+
+

+ +

+
+ + + + + + + + + + + + + + + +
#define PARSE_SCALAR_PARAM (SHORT,
LONG,
VALUE   ) 
+
+
+ +

+Value:

else if(str == SHORT || str == LONG)                 \
+    {                                                    \
+      if(argc < 1 || argv[i+1][0] == '-')                \
+        return false;                                    \
+      std::stringstream tmp;                             \
+      tmp << argv[i+1];                                  \
+      tmp >> VALUE;                                      \
+      argc--;                                            \
+      i++;                                               \
+    }
+
+
+

+ +

+
+ + + + + + + + + + + + + + + + + + +
#define PARSE_SCALAR_PARAM2 (SHORT,
LONG,
VALUE1,
VALUE2   ) 
+
+
+ +

+Value:

else if(str == SHORT || str == LONG)                 \
+    {                                                    \
+      if(argc < 2 ||                                     \
+         argv[i+1][0] == '-' || argv[i+2][0] == '-')     \
+        return false;                                    \
+      std::stringstream tmp;                             \
+      tmp << argv[i+1] << " " << argv[i+2];              \
+      tmp >> VALUE1;                                     \
+      tmp >> VALUE2;                                     \
+      argc-=2;                                           \
+      i+=2;                                              \
+    }
+
+
+

+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/options_8h-source.html b/doc/html/options_8h-source.html new file mode 100644 index 0000000..d053366 --- /dev/null +++ b/doc/html/options_8h-source.html @@ -0,0 +1,114 @@ + + +anytun: options.h Source File + + + + +
+
+
+
+

options.h

Go to the documentation of this file.
00001 /*
+00002  *  anytun
+00003  *
+00004  *  The secure anycast tunneling protocol (satp) defines a protocol used
+00005  *  for communication between any combination of unicast and anycast
+00006  *  tunnel endpoints.  It has less protocol overhead than IPSec in Tunnel
+00007  *  mode and allows tunneling of every ETHER TYPE protocol (e.g.
+00008  *  ethernet, ip, arp ...). satp directly includes cryptography and
+00009  *  message authentication based on the methodes used by SRTP.  It is
+00010  *  intended to deliver a generic, scaleable and secure solution for
+00011  *  tunneling and relaying of packets of any protocol.
+00012  *
+00013  *
+00014  *  Copyright (C) 2007 anytun.org <satp@wirdorange.org>
+00015  *
+00016  *  This program is free software; you can redistribute it and/or modify
+00017  *  it under the terms of the GNU General Public License version 2
+00018  *  as published by the Free Software Foundation.
+00019  *
+00020  *  This program is distributed in the hope that it will be useful,
+00021  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+00022  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+00023  *  GNU General Public License for more details.
+00024  *
+00025  *  You should have received a copy of the GNU General Public License
+00026  *  along with this program (see the file COPYING included with this
+00027  *  distribution); if not, write to the Free Software Foundation, Inc.,
+00028  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+00029  */
+00030 
+00031 #ifndef _OPTIONS_H_
+00032 #define _OPTIONS_H_
+00033 
+00034 #include "threadUtils.hpp"
+00035 
+00036 class Options
+00037 {
+00038 public:
+00039   Options();
+00040   bool parse(int argc, char* argv[]);
+00041   void printUsage();
+00042   void printOptions();
+00043 
+00044   std::string getProgname();
+00045   Options& setProgname(std::string p);
+00046   sender_id_t getSenderId();
+00047   Options& setSenderId(sender_id_t s);
+00048   std::string getLocalAddr();
+00049   Options& setLocalAddr(std::string l);
+00050   u_int16_t getLocalPort();
+00051   Options& setLocalPort(u_int16_t l);
+00052   std::string getRemoteAddr();
+00053   Options& setRemoteAddr(std::string r);
+00054   u_int16_t getRemotePort();
+00055   Options& setRemotePort(u_int16_t r);
+00056   Options& setRemoteAddrPort(std::string addr, u_int16_t port);
+00057   std::string getDevName();
+00058   Options& setDevName(std::string d);
+00059   std::string getDevType();
+00060   Options& setDevType(std::string d);
+00061   std::string getIfconfigParamLocal();
+00062   Options& setIfconfigParamLocal(std::string i);
+00063   std::string getIfconfigParamRemoteNetmask();
+00064   Options& setIfconfigParamRemoteNetmask(std::string i);
+00065   window_size_t getSeqWindowSize();
+00066   Options& setSeqWindowSize(window_size_t s);
+00067   std::string getCypher();
+00068   Options& setCypher(std::string c);
+00069   std::string getAuthAlgo();
+00070   Options& setAuthAlgo(std::string a);
+00071 
+00072 private:
+00073   Mutex mutex;
+00074 
+00075   std::string progname_;
+00076   sender_id_t sender_id_;
+00077   std::string local_addr_;
+00078   u_int16_t local_port_;
+00079   std::string remote_addr_;
+00080   u_int16_t remote_port_;
+00081   std::string dev_name_;
+00082   std::string dev_type_;
+00083   std::string ifconfig_param_local_;
+00084   std::string ifconfig_param_remote_netmask_;
+00085   window_size_t seq_window_size_;
+00086   std::string cypher_;
+00087   std::string auth_algo_;
+00088 };
+00089 
+00090 #endif
+

Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/options_8h.html b/doc/html/options_8h.html new file mode 100644 index 0000000..f844812 --- /dev/null +++ b/doc/html/options_8h.html @@ -0,0 +1,33 @@ + + +anytun: options.h File Reference + + + + +
+
+
+
+

options.h File Reference

#include "threadUtils.hpp"
+ +

+Go to the source code of this file. + + + + +

Classes

class  Options
+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/packetSource_8cpp.html b/doc/html/packetSource_8cpp.html new file mode 100644 index 0000000..2a05dee --- /dev/null +++ b/doc/html/packetSource_8cpp.html @@ -0,0 +1,31 @@ + + +anytun: packetSource.cpp File Reference + + + + +
+
+
+
+

packetSource.cpp File Reference

#include "datatypes.h"
+#include "packetSource.h"
+#include "buffer.h"
+#include "PracticalSocket.h"
+ + +
+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/packetSource_8h-source.html b/doc/html/packetSource_8h-source.html new file mode 100644 index 0000000..fe8acf2 --- /dev/null +++ b/doc/html/packetSource_8h-source.html @@ -0,0 +1,78 @@ + + +anytun: packetSource.h Source File + + + + +
+
+
+
+

packetSource.h

Go to the documentation of this file.
00001 /*
+00002  *  anytun
+00003  *
+00004  *  The secure anycast tunneling protocol (satp) defines a protocol used
+00005  *  for communication between any combination of unicast and anycast
+00006  *  tunnel endpoints.  It has less protocol overhead than IPSec in Tunnel
+00007  *  mode and allows tunneling of every ETHER TYPE protocol (e.g.
+00008  *  ethernet, ip, arp ...). satp directly includes cryptography and
+00009  *  message authentication based on the methodes used by SRTP.  It is
+00010  *  intended to deliver a generic, scaleable and secure solution for
+00011  *  tunneling and relaying of packets of any protocol.
+00012  *
+00013  *
+00014  *  Copyright (C) 2007 anytun.org <satp@wirdorange.org>
+00015  *
+00016  *  This program is free software; you can redistribute it and/or modify
+00017  *  it under the terms of the GNU General Public License version 2
+00018  *  as published by the Free Software Foundation.
+00019  *
+00020  *  This program is distributed in the hope that it will be useful,
+00021  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+00022  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+00023  *  GNU General Public License for more details.
+00024  *
+00025  *  You should have received a copy of the GNU General Public License
+00026  *  along with this program (see the file COPYING included with this
+00027  *  distribution); if not, write to the Free Software Foundation, Inc.,
+00028  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+00029  */
+00030 
+00031 #include "datatypes.h"
+00032 #include "buffer.h"
+00033 #include "PracticalSocket.h"
+00034 
+00035 class PacketSource
+00036 {
+00037 public:
+00038   virtual ~PacketSource() {}
+00039 
+00040   virtual u_int32_t recv(Buffer& buf, std::string& addr, u_int16_t &port) = 0;
+00041   virtual void send(Buffer& buf, std::string addr, u_int16_t port) = 0;
+00042 };
+00043 
+00044 class UDPPacketSource : public PacketSource, public UDPSocket
+00045 {  
+00046 public:
+00047   UDPPacketSource();
+00048   UDPPacketSource(u_int16_t port);
+00049   UDPPacketSource(std::string localaddr, u_int16_t port);
+00050 
+00051   u_int32_t recv(Buffer& buf, std::string& addr, u_int16_t &port);
+00052   void send(Buffer& buf, std::string addr, u_int16_t port);
+00053 };
+00054 
+

Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/packetSource_8h.html b/doc/html/packetSource_8h.html new file mode 100644 index 0000000..a547ac2 --- /dev/null +++ b/doc/html/packetSource_8h.html @@ -0,0 +1,37 @@ + + +anytun: packetSource.h File Reference + + + + +
+
+
+
+

packetSource.h File Reference

#include "datatypes.h"
+#include "buffer.h"
+#include "PracticalSocket.h"
+ +

+Go to the source code of this file. + + + + + + +

Classes

class  PacketSource
class  UDPPacketSource
+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/packet_8cpp.html b/doc/html/packet_8cpp.html new file mode 100644 index 0000000..3d8792f --- /dev/null +++ b/doc/html/packet_8cpp.html @@ -0,0 +1,31 @@ + + +anytun: packet.cpp File Reference + + + + +
+
+
+
+

packet.cpp File Reference

#include <stdexcept>
+#include <arpa/inet.h>
+#include "datatypes.h"
+#include "packet.h"
+ + +
+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/packet_8h-source.html b/doc/html/packet_8h-source.html new file mode 100644 index 0000000..cc3f8ec --- /dev/null +++ b/doc/html/packet_8h-source.html @@ -0,0 +1,100 @@ + + +anytun: packet.h Source File + + + + +
+
+
+
+

packet.h

Go to the documentation of this file.
00001 /*
+00002  *  anytun
+00003  *
+00004  *  The secure anycast tunneling protocol (satp) defines a protocol used
+00005  *  for communication between any combination of unicast and anycast
+00006  *  tunnel endpoints.  It has less protocol overhead than IPSec in Tunnel
+00007  *  mode and allows tunneling of every ETHER TYPE protocol (e.g.
+00008  *  ethernet, ip, arp ...). satp directly includes cryptography and
+00009  *  message authentication based on the methodes used by SRTP.  It is
+00010  *  intended to deliver a generic, scaleable and secure solution for
+00011  *  tunneling and relaying of packets of any protocol.
+00012  *
+00013  *
+00014  *  Copyright (C) 2007 anytun.org <satp@wirdorange.org>
+00015  *
+00016  *  This program is free software; you can redistribute it and/or modify
+00017  *  it under the terms of the GNU General Public License version 2
+00018  *  as published by the Free Software Foundation.
+00019  *
+00020  *  This program is distributed in the hope that it will be useful,
+00021  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+00022  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+00023  *  GNU General Public License for more details.
+00024  *
+00025  *  You should have received a copy of the GNU General Public License
+00026  *  along with this program (see the file COPYING included with this
+00027  *  distribution); if not, write to the Free Software Foundation, Inc.,
+00028  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+00029  */
+00030 
+00031 #ifndef _PACKET_H_
+00032 #define _PACKET_H_
+00033 
+00034 #include "datatypes.h"
+00035 #include "buffer.h"
+00036 
+00037 class Packet : public Buffer
+00038 {
+00039 public:
+00040   Packet();
+00041   Packet(u_int32_t length);
+00042   Packet(const Buffer &src);
+00043   
+00044   bool hasHeader() const;
+00045   Packet& withHeader(bool b);
+00046   seq_nr_t getSeqNr() const;
+00047   sender_id_t getSenderId() const;
+00048   Packet& addHeader(seq_nr_t seq_nr, sender_id_t sender_id);
+00049   Packet& removeHeader();
+00050   Packet& setSeqNr(seq_nr_t seq_nr);
+00051   Packet& setSenderId(sender_id_t sender_id);
+00052                        
+00053   bool hasPayloadType() const;
+00054   Packet& withPayloadType(bool b);
+00055   payload_type_t getPayloadType() const;  
+00056   Packet& addPayloadType(payload_type_t payload_type);
+00057   Packet& removePayloadType();
+00058   
+00059   bool hasAuthTag() const;
+00060   Packet& withAuthTag(bool b);
+00061   auth_tag_t getAuthTag() const;
+00062   Packet& addAuthTag(auth_tag_t auth_tag);
+00063   Packet& removeAuthTag();                     
+00064 
+00065 private:
+00066   struct HeaderStruct
+00067   {
+00068     seq_nr_t seq_nr;
+00069     sender_id_t sender_id;
+00070   }__attribute__((__packed__));
+00071   bool has_header_;
+00072   bool has_payload_type_;
+00073   bool has_auth_tag_;
+00074 };
+00075 
+00076 #endif
+

Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/packet_8h.html b/doc/html/packet_8h.html new file mode 100644 index 0000000..d929408 --- /dev/null +++ b/doc/html/packet_8h.html @@ -0,0 +1,36 @@ + + +anytun: packet.h File Reference + + + + +
+
+
+
+

packet.h File Reference

#include "datatypes.h"
+#include "buffer.h"
+ +

+Go to the source code of this file. + + + + + + +

Classes

class  Packet
struct  Packet::HeaderStruct
+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/satp_8py.html b/doc/html/satp_8py.html new file mode 100644 index 0000000..e63715e --- /dev/null +++ b/doc/html/satp_8py.html @@ -0,0 +1,35 @@ + + +anytun: satp.py File Reference + + + + +
+
+
+
+

satp.py File Reference

+ + + + + + + + + +

Namespaces

namespace  satp
namespace  scapy::*

Classes

class  satp::SATP
+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/seqWindow_8cpp.html b/doc/html/seqWindow_8cpp.html new file mode 100644 index 0000000..caf6430 --- /dev/null +++ b/doc/html/seqWindow_8cpp.html @@ -0,0 +1,30 @@ + + +anytun: seqWindow.cpp File Reference + + + + +
+
+
+
+

seqWindow.cpp File Reference

#include "threadUtils.hpp"
+#include "datatypes.h"
+#include "seqWindow.h"
+ + +
+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/seqWindow_8h-source.html b/doc/html/seqWindow_8h-source.html new file mode 100644 index 0000000..3fa4570 --- /dev/null +++ b/doc/html/seqWindow_8h-source.html @@ -0,0 +1,88 @@ + + +anytun: seqWindow.h Source File + + + + +
+
+
+
+

seqWindow.h

Go to the documentation of this file.
00001 /*
+00002  *  anytun
+00003  *
+00004  *  The secure anycast tunneling protocol (satp) defines a protocol used
+00005  *  for communication between any combination of unicast and anycast
+00006  *  tunnel endpoints.  It has less protocol overhead than IPSec in Tunnel
+00007  *  mode and allows tunneling of every ETHER TYPE protocol (e.g.
+00008  *  ethernet, ip, arp ...). satp directly includes cryptography and
+00009  *  message authentication based on the methodes used by SRTP.  It is
+00010  *  intended to deliver a generic, scaleable and secure solution for
+00011  *  tunneling and relaying of packets of any protocol.
+00012  *
+00013  *
+00014  *  Copyright (C) 2007 anytun.org <satp@wirdorange.org>
+00015  *
+00016  *  This program is free software; you can redistribute it and/or modify
+00017  *  it under the terms of the GNU General Public License version 2
+00018  *  as published by the Free Software Foundation.
+00019  *
+00020  *  This program is distributed in the hope that it will be useful,
+00021  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+00022  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+00023  *  GNU General Public License for more details.
+00024  *
+00025  *  You should have received a copy of the GNU General Public License
+00026  *  along with this program (see the file COPYING included with this
+00027  *  distribution); if not, write to the Free Software Foundation, Inc.,
+00028  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+00029  */
+00030 
+00031 #ifndef _SEQ_WINDOW_H_
+00032 #define _SEQ_WINDOW_H_
+00033 
+00034 #include <map>
+00035 #include <deque>
+00036 
+00037 #include "threadUtils.hpp"
+00038 #include "datatypes.h"
+00039 
+00040 class SeqWindow
+00041 {
+00042 public:
+00043   typedef std::deque<seq_nr_t> SeqDeque;
+00044   typedef std::map<sender_id_t, SeqDeque> SenderMap;
+00045 
+00046   SeqWindow(window_size_t w);
+00047   ~SeqWindow();
+00048 
+00049   SeqDeque::size_type getLength(sender_id_t sender);
+00050   bool hasSeqNr(sender_id_t sender, seq_nr_t seq);
+00051   void addSeqNr(sender_id_t sender, seq_nr_t seq);
+00052   void clear(sender_id_t sender);
+00053   void clear();
+00054 
+00055 private:
+00056   SeqWindow(const SeqWindow &s);
+00057   void operator=(const SeqWindow &s);
+00058 
+00059   window_size_t window_size_;
+00060   Mutex mutex_;
+00061   SenderMap sender_;
+00062 };
+00063 
+00064 #endif
+

Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/seqWindow_8h.html b/doc/html/seqWindow_8h.html new file mode 100644 index 0000000..600e329 --- /dev/null +++ b/doc/html/seqWindow_8h.html @@ -0,0 +1,36 @@ + + +anytun: seqWindow.h File Reference + + + + +
+
+
+
+

seqWindow.h File Reference

#include <map>
+#include <deque>
+#include "threadUtils.hpp"
+#include "datatypes.h"
+ +

+Go to the source code of this file. + + + + +

Classes

class  SeqWindow
+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/signalController_8cpp.html b/doc/html/signalController_8cpp.html new file mode 100644 index 0000000..57ecffa --- /dev/null +++ b/doc/html/signalController_8cpp.html @@ -0,0 +1,33 @@ + + +anytun: signalController.cpp File Reference + + + + +
+
+
+
+

signalController.cpp File Reference

#include <csignal>
+#include <map>
+#include <iostream>
+#include "threadUtils.hpp"
+#include "signalController.h"
+#include "log.h"
+ + +
+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/signalController_8h-source.html b/doc/html/signalController_8h-source.html new file mode 100644 index 0000000..9a4e4bb --- /dev/null +++ b/doc/html/signalController_8h-source.html @@ -0,0 +1,145 @@ + + +anytun: signalController.h Source File + + + + +
+
+
+
+

signalController.h

Go to the documentation of this file.
00001 /*
+00002  *  anytun
+00003  *
+00004  *  The secure anycast tunneling protocol (satp) defines a protocol used
+00005  *  for communication between any combination of unicast and anycast
+00006  *  tunnel endpoints.  It has less protocol overhead than IPSec in Tunnel
+00007  *  mode and allows tunneling of every ETHER TYPE protocol (e.g.
+00008  *  ethernet, ip, arp ...). satp directly includes cryptography and
+00009  *  message authentication based on the methodes used by SRTP.  It is
+00010  *  intended to deliver a generic, scaleable and secure solution for
+00011  *  tunneling and relaying of packets of any protocol.
+00012  *
+00013  *
+00014  *  Copyright (C) 2007 anytun.org <satp@wirdorange.org>
+00015  *
+00016  *  This program is free software; you can redistribute it and/or modify
+00017  *  it under the terms of the GNU General Public License version 2
+00018  *  as published by the Free Software Foundation.
+00019  *
+00020  *  This program is distributed in the hope that it will be useful,
+00021  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+00022  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+00023  *  GNU General Public License for more details.
+00024  *
+00025  *  You should have received a copy of the GNU General Public License
+00026  *  along with this program (see the file COPYING included with this
+00027  *  distribution); if not, write to the Free Software Foundation, Inc.,
+00028  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+00029  */
+00030 
+00031 #ifndef _SIGNAL_CONTROLLER_H_
+00032 #define _SIGNAL_CONTROLLER_H_
+00033 
+00034 #include <csignal>
+00035 #include <map>
+00036 #include <queue>
+00037 
+00038 #include "threadUtils.hpp"
+00039 
+00040 class SignalHandler
+00041 {
+00042 public:
+00043   virtual ~SignalHandler() {}
+00044 
+00045   virtual int handle() { return 0; }
+00046 
+00047 protected:
+00048   SignalHandler(int s) : sigNum(s) {}
+00049 
+00050 private:
+00051   int sigNum;
+00052   friend class SignalController;
+00053 };
+00054 
+00055 class SigIntHandler : public SignalHandler
+00056 {
+00057 public:
+00058   SigIntHandler() : SignalHandler(SIGINT) {}
+00059   int handle();
+00060 };
+00061 
+00062 class SigQuitHandler : public SignalHandler
+00063 {
+00064 public:
+00065   SigQuitHandler() : SignalHandler(SIGQUIT) {}
+00066   int handle();
+00067 };
+00068 
+00069 class SigHupHandler : public SignalHandler
+00070 {
+00071 public:
+00072   SigHupHandler() : SignalHandler(SIGHUP) {}
+00073   int handle();
+00074 };
+00075 
+00076 class SigUsr1Handler : public SignalHandler
+00077 {
+00078 public:
+00079   SigUsr1Handler() : SignalHandler(SIGUSR1) {}
+00080   int handle();
+00081 };
+00082 
+00083 class SigUsr2Handler : public SignalHandler
+00084 {
+00085 public:
+00086   SigUsr2Handler() : SignalHandler(SIGUSR2) {}
+00087   int handle();
+00088 };
+00089 
+00090 class SigTermHandler : public SignalHandler
+00091 {
+00092 public:
+00093   SigTermHandler() : SignalHandler(SIGTERM) {}
+00094   int handle();
+00095 };
+00096 
+00097 class SignalController
+00098 {
+00099 public:
+00100   SignalController() {}
+00101   ~SignalController();
+00102   static void* handle(void* s);
+00103 
+00104   void init();
+00105   int run();
+00106 
+00107 private:
+00108   typedef std::map<int, SignalHandler*> HandlerMap;
+00109 
+00110   SignalController(const SignalController &s);
+00111   void operator=(const SignalController &s);
+00112   
+00113   std::queue<int> sigQueue;
+00114   Mutex sigQueueMutex;
+00115   Semaphore sigQueueSem;
+00116 
+00117   pthread_t thread;
+00118   HandlerMap handler;
+00119 };
+00120 
+00121 #endif
+

Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/signalController_8h.html b/doc/html/signalController_8h.html new file mode 100644 index 0000000..213cc41 --- /dev/null +++ b/doc/html/signalController_8h.html @@ -0,0 +1,50 @@ + + +anytun: signalController.h File Reference + + + + +
+
+
+
+

signalController.h File Reference

#include <csignal>
+#include <map>
+#include <queue>
+#include "threadUtils.hpp"
+ +

+Go to the source code of this file. + + + + + + + + + + + + + + + + + + +

Classes

class  SignalHandler
class  SigIntHandler
class  SigQuitHandler
class  SigHupHandler
class  SigUsr1Handler
class  SigUsr2Handler
class  SigTermHandler
class  SignalController
+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/structPacket_1_1HeaderStruct-members.html b/doc/html/structPacket_1_1HeaderStruct-members.html new file mode 100644 index 0000000..86f6bad --- /dev/null +++ b/doc/html/structPacket_1_1HeaderStruct-members.html @@ -0,0 +1,28 @@ + + +anytun: Member List + + + + +
+
+
+
+

Packet::HeaderStruct Member List

This is the complete list of members for Packet::HeaderStruct, including all inherited members.

+ + +
sender_idPacket::HeaderStruct
seq_nrPacket::HeaderStruct


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/structPacket_1_1HeaderStruct.html b/doc/html/structPacket_1_1HeaderStruct.html new file mode 100644 index 0000000..1727242 --- /dev/null +++ b/doc/html/structPacket_1_1HeaderStruct.html @@ -0,0 +1,68 @@ + + +anytun: Packet::HeaderStruct Struct Reference + + + + +
+
+
+
+ +

Packet::HeaderStruct Struct Reference

List of all members. + + + + + + +

Public Attributes

seq_nr_t seq_nr
sender_id_t sender_id
+

Member Data Documentation

+ +
+ +
+ +

+ +

+

+ +

+ +
+ +

+ +

+

+


The documentation for this struct was generated from the following file: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/structParam-members.html b/doc/html/structParam-members.html new file mode 100644 index 0000000..05e965e --- /dev/null +++ b/doc/html/structParam-members.html @@ -0,0 +1,33 @@ + + +anytun: Member List + + + + +
+
+
+
+

Param Member List

This is the complete list of members for Param, including all inherited members.

+ + + + + + + +
aParam
cParam
devParam
kdParam
optParam
seqParam
srcParam


Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/structParam.html b/doc/html/structParam.html new file mode 100644 index 0000000..5ecf596 --- /dev/null +++ b/doc/html/structParam.html @@ -0,0 +1,151 @@ + + +anytun: Param Struct Reference + + + + +
+
+
+
+

Param Struct Reference

List of all members. + + + + + + + + + + + + + + + + +

Public Attributes

Optionsopt
TunDevicedev
KeyDerivationkd
Cypherc
AuthAlgoa
PacketSourcesrc
SeqWindowseq
+

Member Data Documentation

+ +
+
+ + + + +
Options& Param::opt
+
+
+ +

+ +

+

+ +

+
+ + + + +
TunDevice& Param::dev
+
+
+ +

+ +

+

+ +

+
+ + + + +
KeyDerivation& Param::kd
+
+
+ +

+ +

+

+ +

+
+ + + + +
Cypher& Param::c
+
+
+ +

+ +

+

+ +

+
+ + + + +
AuthAlgo& Param::a
+
+
+ +

+ +

+

+ +

+
+ + + + +
PacketSource& Param::src
+
+
+ +

+ +

+

+ +

+
+ + + + +
SeqWindow& Param::seq
+
+
+ +

+ +

+

+


The documentation for this struct was generated from the following file: +
Generated on Sun Oct 7 23:43:50 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/tab_b.gif b/doc/html/tab_b.gif new file mode 100644 index 0000000..0d62348 Binary files /dev/null and b/doc/html/tab_b.gif differ diff --git a/doc/html/tab_l.gif b/doc/html/tab_l.gif new file mode 100644 index 0000000..9b1e633 Binary files /dev/null and b/doc/html/tab_l.gif differ diff --git a/doc/html/tab_r.gif b/doc/html/tab_r.gif new file mode 100644 index 0000000..ce9dd9f Binary files /dev/null and b/doc/html/tab_r.gif differ diff --git a/doc/html/tabs.css b/doc/html/tabs.css new file mode 100644 index 0000000..a61552a --- /dev/null +++ b/doc/html/tabs.css @@ -0,0 +1,102 @@ +/* tabs styles, based on http://www.alistapart.com/articles/slidingdoors */ + +DIV.tabs +{ + float : left; + width : 100%; + background : url("tab_b.gif") repeat-x bottom; + margin-bottom : 4px; +} + +DIV.tabs UL +{ + margin : 0px; + padding-left : 10px; + list-style : none; +} + +DIV.tabs LI, DIV.tabs FORM +{ + display : inline; + margin : 0px; + padding : 0px; +} + +DIV.tabs FORM +{ + float : right; +} + +DIV.tabs A +{ + float : left; + background : url("tab_r.gif") no-repeat right top; + border-bottom : 1px solid #84B0C7; + font-size : x-small; + font-weight : bold; + text-decoration : none; +} + +DIV.tabs A:hover +{ + background-position: 100% -150px; +} + +DIV.tabs A:link, DIV.tabs A:visited, +DIV.tabs A:active, DIV.tabs A:hover +{ + color: #1A419D; +} + +DIV.tabs SPAN +{ + float : left; + display : block; + background : url("tab_l.gif") no-repeat left top; + padding : 5px 9px; + white-space : nowrap; +} + +DIV.tabs INPUT +{ + float : right; + display : inline; + font-size : 1em; +} + +DIV.tabs TD +{ + font-size : x-small; + font-weight : bold; + text-decoration : none; +} + + + +/* Commented Backslash Hack hides rule from IE5-Mac \*/ +DIV.tabs SPAN {float : none;} +/* End IE5-Mac hack */ + +DIV.tabs A:hover SPAN +{ + background-position: 0% -150px; +} + +DIV.tabs LI#current A +{ + background-position: 100% -150px; + border-width : 0px; +} + +DIV.tabs LI#current SPAN +{ + background-position: 0% -150px; + padding-bottom : 6px; +} + +DIV.nav +{ + background : none; + border : none; + border-bottom : 1px solid #84B0C7; +} diff --git a/doc/html/threadUtils_8hpp-source.html b/doc/html/threadUtils_8hpp-source.html new file mode 100644 index 0000000..509d9fd --- /dev/null +++ b/doc/html/threadUtils_8hpp-source.html @@ -0,0 +1,198 @@ + + +anytun: threadUtils.hpp Source File + + + + +
+
+
+
+

threadUtils.hpp

Go to the documentation of this file.
00001 /*
+00002  *  anytun
+00003  *
+00004  *  The secure anycast tunneling protocol (satp) defines a protocol used
+00005  *  for communication between any combination of unicast and anycast
+00006  *  tunnel endpoints.  It has less protocol overhead than IPSec in Tunnel
+00007  *  mode and allows tunneling of every ETHER TYPE protocol (e.g.
+00008  *  ethernet, ip, arp ...). satp directly includes cryptography and
+00009  *  message authentication based on the methodes used by SRTP.  It is
+00010  *  intended to deliver a generic, scaleable and secure solution for
+00011  *  tunneling and relaying of packets of any protocol.
+00012  *
+00013  *
+00014  *  Copyright (C) 2007 anytun.org <satp@wirdorange.org>
+00015  *
+00016  *  This program is free software; you can redistribute it and/or modify
+00017  *  it under the terms of the GNU General Public License version 2
+00018  *  as published by the Free Software Foundation.
+00019  *
+00020  *  This program is distributed in the hope that it will be useful,
+00021  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+00022  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+00023  *  GNU General Public License for more details.
+00024  *
+00025  *  You should have received a copy of the GNU General Public License
+00026  *  along with this program (see the file COPYING included with this
+00027  *  distribution); if not, write to the Free Software Foundation, Inc.,
+00028  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+00029  */
+00030 
+00031 #ifndef _THREADUTILS_HPP_
+00032 #define _THREADUTILS_HPP_
+00033 
+00034 #include <stdexcept>
+00035 #include <semaphore.h>
+00036 
+00037 class Mutex 
+00038 {
+00039 public:
+00040   Mutex() 
+00041   { 
+00042     if(pthread_mutex_init(&mutex,NULL)) 
+00043       throw std::runtime_error("can't create mutex");
+00044   }
+00045 
+00046   ~Mutex()
+00047   {
+00048     pthread_mutex_destroy(&mutex);
+00049   }
+00050   
+00051 private:
+00052   Mutex(const Mutex& src);
+00053   void operator=(const Mutex& src);
+00054   
+00055   void lock()
+00056   {
+00057     if(pthread_mutex_lock(&mutex)) 
+00058       throw std::runtime_error("can't lock mutex");
+00059   }
+00060   
+00061   void unlock()
+00062   {
+00063     if(pthread_mutex_unlock(&mutex)) 
+00064       throw std::runtime_error("can't unlock mutex");
+00065   }
+00066   friend class Lock;
+00067   friend class Condition;
+00068   pthread_mutex_t mutex;
+00069 };
+00070 
+00071 
+00072 class Lock
+00073 {
+00074 public:
+00075   Lock(Mutex &m) : mutex(m)
+00076   {
+00077     mutex.lock();
+00078   }
+00079   
+00080   ~Lock()
+00081   {
+00082     mutex.unlock();
+00083   }
+00084 
+00085 private:
+00086   Lock(const Lock& src);
+00087   void operator=(const Lock& src);
+00088 
+00089   Mutex &mutex;
+00090 };
+00091 
+00092 class Condition
+00093 {
+00094 public:
+00095   Condition()
+00096   {
+00097     if(pthread_cond_init(&cond, NULL)) 
+00098       throw std::runtime_error("can't create condition");
+00099   }
+00100 
+00101   ~Condition()
+00102   {
+00103     pthread_cond_destroy(&cond);
+00104   }
+00105   
+00106   void wait()
+00107   {
+00108     mutex.lock();
+00109     if(pthread_cond_wait(&cond, &mutex.mutex)) 
+00110     {
+00111       mutex.unlock();
+00112       throw std::runtime_error("error on waiting for condition");
+00113     }
+00114     mutex.unlock();
+00115   }
+00116 
+00117   void signal()
+00118   {
+00119     mutex.lock();
+00120     if(pthread_cond_signal(&cond)) 
+00121     {
+00122       mutex.unlock();
+00123       throw std::runtime_error("can't signal condition");
+00124     }
+00125     mutex.unlock();
+00126   }
+00127 
+00128   void broadcast()
+00129   {
+00130     mutex.lock();
+00131     if(pthread_cond_broadcast(&cond)) 
+00132     {
+00133       mutex.unlock();
+00134       throw std::runtime_error("can't broadcast condition");
+00135     }
+00136     mutex.unlock();
+00137   }
+00138   
+00139 private:
+00140   pthread_cond_t cond;
+00141   Mutex mutex;
+00142 };
+00143 
+00144 class Semaphore
+00145 {
+00146 public:
+00147   Semaphore(unsigned int initVal=0)
+00148   {
+00149     if(sem_init(&sem, 0, initVal))
+00150       throw std::runtime_error("can't create semaphore");
+00151   }
+00152 
+00153   ~Semaphore()
+00154   {
+00155     sem_destroy(&sem);
+00156   }
+00157   
+00158   void down()
+00159   {
+00160     if(sem_wait(&sem)) 
+00161       throw std::runtime_error("error on semaphore down");
+00162   }
+00163 
+00164   void up()
+00165   {
+00166     if(sem_post(&sem)) 
+00167       throw std::runtime_error("error on semaphore up");
+00168   }
+00169 
+00170 private:
+00171   sem_t sem;
+00172 };
+00173 
+00174 #endif
+

Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/threadUtils_8hpp.html b/doc/html/threadUtils_8hpp.html new file mode 100644 index 0000000..8177a66 --- /dev/null +++ b/doc/html/threadUtils_8hpp.html @@ -0,0 +1,40 @@ + + +anytun: threadUtils.hpp File Reference + + + + +
+
+
+
+

threadUtils.hpp File Reference

#include <stdexcept>
+#include <semaphore.h>
+ +

+Go to the source code of this file. + + + + + + + + + + +

Classes

class  Mutex
class  Lock
class  Condition
class  Semaphore
+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/tree.html b/doc/html/tree.html new file mode 100644 index 0000000..c507854 --- /dev/null +++ b/doc/html/tree.html @@ -0,0 +1,210 @@ + + + + + + + TreeView + + + + +
+

anytun

+
+

o*Main Page

+

o+Class List

+ +

o+Class Hierarchy

+ +

o*Class Members

+

o+Namespace List

+
+

|o*satp

+

|o*scapy::*

+

|\*std

+
+

o+File List

+ +

\*File Members

+
+
+ + diff --git a/doc/html/tunDevice_8cpp.html b/doc/html/tunDevice_8cpp.html new file mode 100644 index 0000000..c708286 --- /dev/null +++ b/doc/html/tunDevice_8cpp.html @@ -0,0 +1,34 @@ + + +anytun: tunDevice.cpp File Reference + + + + +
+
+
+
+

tunDevice.cpp File Reference

#include <stdexcept>
+#include <poll.h>
+#include "openvpn/config.h"
+#include "openvpn/syshead.h"
+#include "openvpn/tun.h"
+#include "tunDevice.h"
+#include "threadUtils.hpp"
+ + +
+
Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/tunDevice_8h-source.html b/doc/html/tunDevice_8h-source.html new file mode 100644 index 0000000..b3761d9 --- /dev/null +++ b/doc/html/tunDevice_8h-source.html @@ -0,0 +1,90 @@ + + +anytun: tunDevice.h Source File + + + + +
+
+
+
+

tunDevice.h

Go to the documentation of this file.
00001 /*
+00002  *  anytun
+00003  *
+00004  *  The secure anycast tunneling protocol (satp) defines a protocol used
+00005  *  for communication between any combination of unicast and anycast
+00006  *  tunnel endpoints.  It has less protocol overhead than IPSec in Tunnel
+00007  *  mode and allows tunneling of every ETHER TYPE protocol (e.g.
+00008  *  ethernet, ip, arp ...). satp directly includes cryptography and
+00009  *  message authentication based on the methodes used by SRTP.  It is
+00010  *  intended to deliver a generic, scaleable and secure solution for
+00011  *  tunneling and relaying of packets of any protocol.
+00012  *
+00013  *
+00014  *  Copyright (C) 2007 anytun.org <satp@wirdorange.org>
+00015  *
+00016  *  This program is free software; you can redistribute it and/or modify
+00017  *  it under the terms of the GNU General Public License version 2
+00018  *  as published by the Free Software Foundation.
+00019  *
+00020  *  This program is distributed in the hope that it will be useful,
+00021  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
+00022  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+00023  *  GNU General Public License for more details.
+00024  *
+00025  *  You should have received a copy of the GNU General Public License
+00026  *  along with this program (see the file COPYING included with this
+00027  *  distribution); if not, write to the Free Software Foundation, Inc.,
+00028  *  59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+00029  */
+00030 
+00031 #ifndef _TUNDEVICE_H_
+00032 #define _TUNDEVICE_H_
+00033 
+00034 #include "buffer.h"
+00035 #include "threadUtils.hpp"
+00036 
+00037 class TunDevice
+00038 {
+00039 public:
+00040   static const u_int32_t TYPE_UNDEF = 0;
+00041   static const u_int32_t TYPE_TUN = 1;
+00042   static const u_int32_t TYPE_TAP = 2;
+00043 
+00044   TunDevice(const char* dev,const char* dev_type, const char* ifcfg_lp, const char* ifcfg_rnmp);
+00045   ~TunDevice();
+00046   
+00047   void open();
+00048   void close();
+00049   bool isOpen();
+00050 
+00051   short read(Buffer& buf);
+00052   int write(Buffer& buf);
+00053 
+00054   char* getActualName();
+00055   u_int32_t getType();
+00056   char* getTypeString();
+00057 
+00058 private:
+00059   void operator=(const TunDevice &src);
+00060   TunDevice(const TunDevice &src);
+00061 
+00062   Mutex io_mutex_;
+00063   struct tuntap *dev_;
+00064 };
+00065 
+00066 #endif
+

Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + diff --git a/doc/html/tunDevice_8h.html b/doc/html/tunDevice_8h.html new file mode 100644 index 0000000..bb4f280 --- /dev/null +++ b/doc/html/tunDevice_8h.html @@ -0,0 +1,34 @@ + + +anytun: tunDevice.h File Reference + + + + +
+
+
+
+

tunDevice.h File Reference

#include "buffer.h"
+#include "threadUtils.hpp"
+ +

+Go to the source code of this file. + + + + +

Classes

class  TunDevice
+


Generated on Sun Oct 7 23:43:49 2007 for anytun by  + +doxygen 1.5.1
+ + -- cgit v1.2.3