X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Fio%2FslipBio.cpp;h=29bc41e328d663179e7b19c02fde4dafc9bddfec;hb=e290d5b161394e00585e85a4c8cff37605eb81ed;hp=f3db8204c1eef6272e870c3b22827d6967a013bf;hpb=e8abb7ca28c05c91fef58d23c40d3f2b1d5322ff;p=cassiopeia.git diff --git a/src/io/slipBio.cpp b/src/io/slipBio.cpp index f3db820..29bc41e 100644 --- a/src/io/slipBio.cpp +++ b/src/io/slipBio.cpp @@ -1,12 +1,12 @@ #include "slipBio.h" #include - +#include #include #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( 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 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" );