1
0
Fork 0

use pdu_stream string i/o

This commit is contained in:
Kevin Matz 2021-08-17 14:20:17 -04:00
parent 6e47d8690f
commit ba3e17361d
1 changed files with 4 additions and 29 deletions

View File

@ -101,23 +101,10 @@ void Pdu::iStream(ACN::PDU::Stream stream)
*/
void client_connect_data::iStream(ACN::PDU::Stream stream)
{
char scope_buffer[63];
char domain_buffer[231];
stream->read(reinterpret_cast<uint8_t*>(scope_buffer), sizeof(scope_buffer));
if (stream->gcount() != sizeof(scope_buffer))
return stream->setstate(std::ios_base::failbit);
clientScope = std::string(scope_buffer);
stream->readString(clientScope, 63);
*stream >> version;
stream->read(reinterpret_cast<uint8_t*>(domain_buffer), sizeof(scope_buffer));
if (stream->gcount() != sizeof(domain_buffer))
return stream->setstate(std::ios_base::failbit);
searchDomain = std::string(domain_buffer);
stream->readString(searchDomain, 231);
*stream >> flags.byte;
pdu->iStream(stream);
}
@ -128,22 +115,10 @@ void client_connect_data::iStream(ACN::PDU::Stream stream)
*/
void client_connect_data::oStream(ACN::PDU::Stream stream) const
{
for (size_t i = 0; i < 63; i++)
if (i < clientScope.size())
*stream << static_cast<uint8_t>(clientScope.at(i));
else
stream->writeType<uint8_t>(0);
stream->writeString(clientScope, 63);
*stream << version;
for (size_t i = 0; i < 231; i++)
if (i < searchDomain.size())
*stream << static_cast<uint8_t>(searchDomain.at(i));
else
stream->writeType<uint8_t>(0);
stream->writeString(searchDomain, 231);
*stream << flags.byte;
pdu->oStream(stream);
}