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/buffer_8h-source.html | 98 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 doc/html/buffer_8h-source.html (limited to 'doc/html/buffer_8h-source.html') 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
+ + -- cgit v1.2.3