]> WPIA git - cassiopeia.git/blobdiff - src/io/slipBio.cpp
upd: clean up valgrind stuff
[cassiopeia.git] / src / io / slipBio.cpp
index f3db8204c1eef6272e870c3b22827d6967a013bf..29bc41e328d663179e7b19c02fde4dafc9bddfec 100644 (file)
@@ -1,12 +1,12 @@
 #include "slipBio.h"
 
 #include <unistd.h>
-
+#include <exception>
 #include <iostream>
 
 #include "log/logger.hpp"
 
-static constexpr std::size_t buffer_size = 8192;
+static constexpr std::size_t buffer_size =  2 * 0xFFFF + 20;//8192;
 
 #define SLIP_ESCAPE_CHAR ( (char) 0xDB)
 #define SLIP_CONNECTION ( (char) 0xC0)
@@ -44,7 +44,7 @@ std::string toHex( const char* buf, int len ) {
     return data;
 }
 
-SlipBIO::SlipBIO() : buffer( std::vector<char>( buffer_size ) ), decodeTarget( 0 ), decodePos( 0 ), rawPos( 0 ) {
+SlipBIO::SlipBIO() : buffer( buffer_size ), decodeTarget( 0 ), decodePos( 0 ), rawPos( 0 ) {
 }
 
 void SlipBIO::setTarget( std::shared_ptr<OpensslBIO> target, bool server ) {
@@ -111,7 +111,7 @@ int SlipBIO::write( const char* buf, int num ) {
 #endif
 
         if( dlen < 0 ) {
-            throw "Error, target write failed";
+            throw std::runtime_error("Error, target write failed");
         } else if( dlen == 0 ) {
             // sleep
             logger::note( "waiting for write ability" );