Merged revisions 262,264-265,267-282,284-298,300-311 via svnmerge from
https://svn.berlios.de/svnroot/repos/senf/branches/new-packet
................
r265 | g0dil | 2007-06-18 12:09:56 +0200 (Mon, 18 Jun 2007) | 9 lines
Blocked revisions 262 via svnmerge
........
r262 | g0dil | 2007-06-18 12:04:02 +0200 (Mon, 18 Jun 2007) | 3 lines
Initialized merge tracking via "svnmerge" with revisions "1-261" from
https://svn.berlios.de/svnroot/repos/senf/branches/new-packet
........
................
r267 | g0dil | 2007-06-19 13:24:56 +0200 (Tue, 19 Jun 2007) | 1 line
Add support for customized refcounting to intrusive_refcount
................
r269 | g0dil | 2007-06-25 13:17:23 +0200 (Mon, 25 Jun 2007) | 2 lines
Add/Implement pool_alloc_mixin
Simplify friend declarations needed for intrusive_refcount_t
................
r270 | g0dil | 2007-06-25 16:38:30 +0200 (Mon, 25 Jun 2007) | 3 lines
Packet library facelift:
* Removed old implementation (will be re-added later)
* First implementation of low-level classes (incl. unit-testing)
................
r271 | g0dil | 2007-06-25 16:39:56 +0200 (Mon, 25 Jun 2007) | 1 line
Add boost::intrusive library to the repository (will be part of the next boost release)
................
r272 | g0dil | 2007-06-25 20:49:25 +0200 (Mon, 25 Jun 2007) | 2 lines
Utils: update documentation
Utils: add singleton mixin class
................
r273 | g0dil | 2007-06-25 21:22:58 +0200 (Mon, 25 Jun 2007) | 1 line
Utils: more concise contiguous_storage_iterator usage example
................
r274 | g0dil | 2007-06-27 10:54:20 +0200 (Wed, 27 Jun 2007) | 1 line
Packets: Further implementation (PacketInterpreter::create etc)
................
r275 | g0dil | 2007-06-28 14:27:48 +0200 (Thu, 28 Jun 2007) | 2 lines
Packet: Finish first round of the PacketInterpreter interface (will need to extend later when adding the handles)
Packet: Start implementing the new parser framework
................
r276 | g0dil | 2007-06-28 15:37:48 +0200 (Thu, 28 Jun 2007) | 1 line
Packet: Re-added and migrated integer parsers
................
r277 | g0dil | 2007-06-29 01:46:34 +0200 (Fri, 29 Jun 2007) | 3 lines
Packet: Temporarily removed most DefaultBundle files
Packet: Re-added and integrated PacketRegistry
Packet: Migrated EthernetPacket
................
r278 | g0dil | 2007-06-29 15:09:20 +0200 (Fri, 29 Jun 2007) | 1 line
Packet: Add missing file 'PacketRegistry.cc'
................
r281 | g0dil | 2007-07-02 17:50:51 +0200 (Mon, 02 Jul 2007) | 6 lines
Packet: Extended the factory interface to allow access to all (!) construction functions
Packet: Fix bug setting wrong ranges in appendClone
Packet: Add further interpreter chain methods (parseNextAs, is, as)
Packet: Add noinit constructors
Packet: Unit-Test the complete PacketInterpreter interface
Packet: Add nothrow lookup members to the PacketRegistry
................
r284 | g0dil | 2007-07-03 10:41:47 +0200 (Tue, 03 Jul 2007) | 2 lines
Packet: Implement PacketInterpreterBase::append
Packet: Fix 'noinit' semantics to be more consistent
................
r286 | g0dil | 2007-07-04 16:41:50 +0200 (Wed, 04 Jul 2007) | 6 lines
Packet: Implemented Packet and ConcretePacket (the handle)
Packet: fix finalize() implementation
Packet: much simpler append() implementation
Packet: Add key-lookup by dynamic packet type
Packet: Change 'interpreter' argument in PacketTypeBase to 'packet'
Packet/DefaultBundle: Adjust EthernetPacket
................
r287 | g0dil | 2007-07-04 20:46:56 +0200 (Wed, 04 Jul 2007) | 3 lines
Packet: Implement automatic packet parsing
Packet: Add chain-search members to Packet
Packet: Add some addional members: Packet::factory, Packet::size
................
r288 | g0dil | 2007-07-04 20:47:54 +0200 (Wed, 04 Jul 2007) | 1 line
Paccket: Add files missing in last commit
................
r289 | g0dil | 2007-07-06 13:06:34 +0200 (Fri, 06 Jul 2007) | 5 lines
Packets: Renamed 'PacketParserBase::iterator' to 'data_iterator'
Packets: Add additioal integer-indexed 'PacketParserBase::parse' member
Packets: Add #define SENF_PACKET_PARSER_INIT to simplify defining parsers
Packets: Port ParseArray
Packets: Add optional 'bytes' member to fixed-size parsers
................
r290 | g0dil | 2007-07-07 00:21:36 +0200 (Sat, 07 Jul 2007) | 2 lines
Packet: Cleaned up PacketParser interface
Packet: Ported Parse_Vector
................
r293 | g0dil | 2007-07-10 14:28:04 +0200 (Tue, 10 Jul 2007) | 6 lines
Packets: Extend PacketParser interface:
* Add size information for all parsers
* Add init members to allow creating new objects
* Provide macros to simplify packet definition and fulfill the new interface
Packets: Migrate all parsers to the extended interface
Packets/DefaultBundle: Change EthernetPacket to use the new Parser definition macros
................
r294 | g0dil | 2007-07-10 14:53:54 +0200 (Tue, 10 Jul 2007) | 2 lines
Add files mixxing in last commit
Packets: Make PacketTypeMixin use the new parser interface to provide defaults for initSize() and init()
................
r295 | g0dil | 2007-07-10 16:48:24 +0200 (Tue, 10 Jul 2007) | 3 lines
Packets: Add additional mutating members to Packrse_Vector and Parse_Vector_Container
Packets: Add boost::disable_if conditions to suppress invalid but ambiguous overloads (suppress int-types used as iterator)
Packets: Update PacketType documentation
................
r297 | g0dil | 2007-07-10 22:45:46 +0200 (Tue, 10 Jul 2007) | 1 line
Packets: Fix ParseVec init() handling
................
r301 | g0dil | 2007-07-12 09:39:44 +0200 (Thu, 12 Jul 2007) | 5 lines
Packets: Implement policy controlled list parser Parser_List
Packets: Remove dubious 'offset' argument from SimpleVectorSizer
Packets: Rename SimpleVectorSizer to Parse_VectorN_Sizer and provide Parser_VectorN 'template typedef' (a struct)
Packets: Make the Parser_Vector_Container copy constructible and assignable
Packets: Implement (broken) Parse_ListB (list with size header in bytes)
................
r302 | g0dil | 2007-07-12 16:06:29 +0200 (Thu, 12 Jul 2007) | 1 line
Packets: Implemented Parse_ListN
................
r303 | g0dil | 2007-07-12 20:21:21 +0200 (Thu, 12 Jul 2007) | 2 lines
Utils: Add ComparableSafeBool helper
Packets: Implement safe_data_iterator and SafePacketParser wrapper
................
r304 | g0dil | 2007-07-14 14:26:47 +0200 (Sat, 14 Jul 2007) | 7 lines
Packets: Simplify header dependencies by moving safe_data_iterator into PacketData.* and SafePacketParser into PacketParser.*
Packets: Add workaround for recursive include to packetData.hh
Packets: Ipmlement generic parser assignment as operator<<
Packets: Add 'update()' member to list policy
Packets: ParseList: separate parser policy from container policy
Packets: Lots of Fixes in ParseList regarding iterator invalidation
Packets: Almost completely re-implement ParseListB policy to make it work
................
r305 | g0dil | 2007-07-14 17:24:20 +0200 (Sat, 14 Jul 2007) | 3 lines
Packets: Implement DataPacket as the defautl payload packet
Packets: Use DataPacket for the payload when no other payload type is found
Packets/DefaultBundle: Change MACAddress to be based on boost::array
................
r306 | g0dil | 2007-07-14 21:48:10 +0200 (Sat, 14 Jul 2007) | 1 line
Packets/DefaultBundle: Ported IpV4Packet
................
r307 | g0dil | 2007-07-14 23:31:12 +0200 (Sat, 14 Jul 2007) | 2 lines
Packets: add const_iterator typedef to make container-parsers range compatible
Packets/DefaultBundle: Ported IpV6Packet and IpV6Extensions
................
r308 | g0dil | 2007-07-15 00:31:20 +0200 (Sun, 15 Jul 2007) | 3 lines
Packets: BUGFIX: Fix fixed_bytes value of Parse_Flag
Packets/DefaultBundle: Port UDPPacket
Packets/DefaultBundle: Enable missing IpV6Packet and IpV6Extensions unit tests
................
r310 | g0dil | 2007-07-15 01:44:19 +0200 (Sun, 15 Jul 2007) | 2 lines
Packets: Move RTPBundle into retired branch since we can't update it to the new library now
................
r311 | g0dil | 2007-07-16 10:21:33 +0200 (Mon, 16 Jul 2007) | 4 lines
Packets: BUGFIX: Ensure complete chain before dump()
Packets: Adjust unit test to take the final DataPacket automatically added into consideration
Packets: Make ParseArray validate the array
Examples: Ported all examples to the new packet library
................
git-svn-id: https://svn.berlios.de/svnroot/repos/senf/trunk@312
270642c3-0616-0410-b53a-bc976706d245