changelog
    
    
    - Mon, 10 Apr 2023 10:42:45 +0300
 
    - by Teemu Piippo <teemu.s.piippo@gmail.com> [Mon, 10 Apr 2023 10:42:45 +0300] rev 201
 
    - Now builds again
 
    - Fri, 05 Feb 2021 11:36:38 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Fri, 05 Feb 2021 11:36:38 +0200] rev 200
 
    - refactor
 
    - Thu, 28 Jan 2021 11:39:48 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 28 Jan 2021 11:39:48 +0200] rev 199
 
    - merged with default
 
    - Thu, 28 Jan 2021 11:39:30 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 28 Jan 2021 11:39:30 +0200] rev 198
 
    - reduce delta with protocol5
 
    - Thu, 28 Jan 2021 11:37:36 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Thu, 28 Jan 2021 11:37:36 +0200] rev 197
 
    - merged with default
 
    - Wed, 27 Jan 2021 23:11:41 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 23:11:41 +0200] rev 196
 
    - updated the documentation of the string functions
 
    - Wed, 27 Jan 2021 19:48:41 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 19:48:41 +0200] rev 195
 
    - merged with default
 
    - Wed, 27 Jan 2021 19:44:36 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 19:44:36 +0200] rev 194
 
    - added a lot of 'this->'
 
    - Wed, 27 Jan 2021 19:42:49 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 19:42:49 +0200] rev 193
 
    - update the status bar after getting disconnected
 
    - Wed, 27 Jan 2021 19:39:14 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 19:39:14 +0200] rev 192
 
    - handle exiting ZFC without using exceptions
 
    - Wed, 27 Jan 2021 19:32:55 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 19:32:55 +0200] rev 191
 
    - various little touchups
 
    - Wed, 27 Jan 2021 19:28:18 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 19:28:18 +0200] rev 190
 
    - updated copyright year
 
    - Wed, 27 Jan 2021 19:27:23 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 19:27:23 +0200] rev 189
 
    - various changes, better network error handling
 
    - Wed, 27 Jan 2021 19:01:37 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 19:01:37 +0200] rev 188
 
    - validate the ip address octets better
 
    - Wed, 27 Jan 2021 18:55:14 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 18:55:14 +0200] rev 187
 
    - fixed an off-by-one error
 
    - Wed, 27 Jan 2021 18:55:03 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 18:55:03 +0200] rev 186
 
    - cleanup ip address code
 
    - Wed, 27 Jan 2021 14:16:58 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 14:16:58 +0200] rev 185
 
    - removed the Range class too
 
    - Wed, 27 Jan 2021 14:06:45 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 14:06:45 +0200] rev 184
 
    - deleted constructors from IPAddress
 
    - Wed, 27 Jan 2021 14:05:39 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 14:05:39 +0200] rev 183
 
    - renamed String and StringList uses
 
    - Wed, 27 Jan 2021 14:04:53 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 14:04:53 +0200] rev 182
 
    - removed the String class in favor of std::string
 
    - Wed, 27 Jan 2021 13:17:11 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 13:17:11 +0200] rev 181
 
    - removed Container classes in favor of std::vector
 
    - Wed, 27 Jan 2021 13:08:51 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 13:08:51 +0200] rev 180
 
    - continue cleanup
 
    - Wed, 27 Jan 2021 13:02:51 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 13:02:51 +0200] rev 179
 
    - start cleaning up unused code
 
    - Wed, 27 Jan 2021 12:42:39 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 12:42:39 +0200] rev 178
 
    - readd PacketHeader structure into packetqueue branch
 
    - Wed, 27 Jan 2021 12:42:22 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 12:42:22 +0200] rev 177
 
    - merge commit
 
    - Wed, 27 Jan 2021 12:41:50 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 12:41:50 +0200] rev 176
 
    - remove PacketHeader from base protocol5
 
    - Wed, 27 Jan 2021 12:39:18 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 12:39:18 +0200] rev 175
 
    - merged with default
 
    - Wed, 27 Jan 2021 12:39:00 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 12:39:00 +0200] rev 174
 
    - reduce delta with default
 
    - Wed, 27 Jan 2021 12:38:00 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 12:38:00 +0200] rev 173
 
    - added protocol5 branch's string reading function which seems to be more reliable
 
    - Wed, 27 Jan 2021 12:34:56 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 12:34:56 +0200] rev 172
 
    - added packet queue as a new head
 
    - Wed, 27 Jan 2021 12:34:26 +0200
 
    - by Teemu Piippo <teemu@hecknology.net> [Wed, 27 Jan 2021 12:34:26 +0200] rev 171
 
    - remove the packet queue for now
 
    - Sat, 23 Jul 2016 12:35:43 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Sat, 23 Jul 2016 12:35:43 +0300] rev 170
 
    - Reduce delta between branches
 
    - Sat, 23 Jul 2016 12:34:05 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Sat, 23 Jul 2016 12:34:05 +0300] rev 169
 
    - Merged with default
 
    - Sat, 23 Jul 2016 12:32:23 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Sat, 23 Jul 2016 12:32:23 +0300] rev 168
 
    - Reduce delta to protocol5 branch by importing the change to RCONSessoin::handlePacket's signature
 
    - Sat, 23 Jul 2016 12:28:52 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Sat, 23 Jul 2016 12:28:52 +0300] rev 167
 
    - Added the PacketQueue class to make use of the sequence numbering to process packets in the correct order, and the ZFC9000 end of packet recovery protocol.
 
    - Sat, 23 Jul 2016 12:28:07 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Sat, 23 Jul 2016 12:28:07 +0300] rev 166
 
    - Fixed compilation problem
 
    - Sat, 23 Jul 2016 12:27:03 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Sat, 23 Jul 2016 12:27:03 +0300] rev 165
 
    - Merged with default
 
    - Sat, 23 Jul 2016 12:23:07 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Sat, 23 Jul 2016 12:23:07 +0300] rev 164
 
    - Fixed Container::splice() method trimming the last element even when not supposed to
 
    - Sat, 23 Jul 2016 12:22:23 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Sat, 23 Jul 2016 12:22:23 +0300] rev 163
 
    - Added the ByteArray::quote() method to return a string representation of the byte array, and used it to print out the contents of unparseable packets.
 
    - Sat, 23 Jul 2016 12:15:52 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Sat, 23 Jul 2016 12:15:52 +0300] rev 162
 
    - Added Doxygen configuration
 
    - Sat, 23 Jul 2016 12:14:20 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Sat, 23 Jul 2016 12:14:20 +0300] rev 161
 
    - Added versions of min() and max() that find the smallest and largest values in an iterable.
 
    - Fri, 22 Jul 2016 18:03:50 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Fri, 22 Jul 2016 18:03:50 +0300] rev 160
 
    - Fixed compilation problems.
 
    - Fri, 22 Jul 2016 17:59:55 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Fri, 22 Jul 2016 17:59:55 +0300] rev 159
 
    - Merged with default
 
    - Fri, 22 Jul 2016 17:52:23 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Fri, 22 Jul 2016 17:52:23 +0300] rev 158
 
    - Added the ByteArray typedef for Vector<unsigned char>
 
    - Fri, 22 Jul 2016 17:50:00 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Fri, 22 Jul 2016 17:50:00 +0300] rev 157
 
    - Bytestream now behaves more like a cursor. It does not store the data anymore, rather it leaves the user to specify a vector to use for storage.
 
    - Wed, 20 Jul 2016 22:56:16 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Wed, 20 Jul 2016 22:56:16 +0300] rev 156
 
    - Restyled RCONSession method names and paren style
 
    - Wed, 20 Jul 2016 18:31:19 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Wed, 20 Jul 2016 18:31:19 +0300] rev 155
 
    - Merged with default
 
    - Wed, 20 Jul 2016 18:29:13 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Wed, 20 Jul 2016 18:29:13 +0300] rev 154
 
    - Eliminated unnecessary difference to the protocol5 branch
 
    - Wed, 20 Jul 2016 18:24:13 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Wed, 20 Jul 2016 18:24:13 +0300] rev 153
 
    - Merged with default
 
    - Wed, 20 Jul 2016 18:20:20 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Wed, 20 Jul 2016 18:20:20 +0300] rev 152
 
    - Renamed Datagram members, RCONSession::handle_packet now takes the datagram as the parameter.
 
    - Wed, 20 Jul 2016 17:57:35 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Wed, 20 Jul 2016 17:57:35 +0300] rev 151
 
    - Fixed complation problems.
 
    - Wed, 20 Jul 2016 17:56:40 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Wed, 20 Jul 2016 17:56:40 +0300] rev 150
 
    - Merged with default
 
    - Wed, 20 Jul 2016 17:53:13 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Wed, 20 Jul 2016 17:53:13 +0300] rev 149
 
    - Restored the String::vsprintf buffer to 1024 characters, it only was 64 characters long for testing.
 
    - Wed, 20 Jul 2016 17:47:42 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Wed, 20 Jul 2016 17:47:42 +0300] rev 148
 
    - Made String::vsprintf behave properly with long strings.
 
    - Wed, 20 Jul 2016 17:31:51 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Wed, 20 Jul 2016 17:31:51 +0300] rev 147
 
    - Documented mystring.cpp. String::trim removed as it does the same as String::removeFromEnd.
 
    - Wed, 20 Jul 2016 16:52:00 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Wed, 20 Jul 2016 16:52:00 +0300] rev 146
 
    - Added doxygen documentation to mystring.h
 
    - Wed, 20 Jul 2016 16:01:10 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Wed, 20 Jul 2016 16:01:10 +0300] rev 145
 
    - Renamed String methods, and reformatted mystring.h
 
    - Wed, 20 Jul 2016 15:07:57 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Wed, 20 Jul 2016 15:07:57 +0300] rev 144
 
    - Restyled geometry.h
 
    - Wed, 20 Jul 2016 15:07:03 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Wed, 20 Jul 2016 15:07:03 +0300] rev 143
 
    - Renamed the methods of ColoredLine
 
    - Wed, 20 Jul 2016 15:06:00 +0300
 
    - by Teemu Piippo <teemu@compsta2.com> [Wed, 20 Jul 2016 15:06:00 +0300] rev 142
 
    - Restyled parentheses in coloredline.cpp/.h