mirror of
https://github.com/polserver/polserver
synced 2026-08-13 08:23:08 -04:00
Include cleanup Reworked buildsystem (Linux only) Removed dynamic libs, Linux now again uses static linking (like windows)
55 lines
883 B
C++
55 lines
883 B
C++
/** @file
|
|
*
|
|
* @par History
|
|
*/
|
|
|
|
|
|
#include "fdump.h"
|
|
|
|
namespace Pol
|
|
{
|
|
namespace Clib
|
|
{
|
|
void dump16( fmt::Writer& writer, const unsigned char* s, int len )
|
|
{
|
|
int i;
|
|
for ( i = 0; i < 16; i++ )
|
|
{
|
|
if ( i < len )
|
|
writer.Format( "{:02x} " ) << (int)s[i];
|
|
else
|
|
writer << " ";
|
|
if ( i == 7 )
|
|
writer << " ";
|
|
}
|
|
writer << " ";
|
|
|
|
for ( i = 0; i < 16; i++ )
|
|
{
|
|
if ( i >= len || !isprint( s[i] ) )
|
|
writer << '.';
|
|
else
|
|
writer.Format( "{}" ) << s[i];
|
|
|
|
if ( i == 7 )
|
|
writer << ' ';
|
|
}
|
|
writer << '\n';
|
|
}
|
|
|
|
void fdump( fmt::Writer& writer, const void* data, int len )
|
|
{
|
|
int i;
|
|
const unsigned char* s = (const unsigned char*)data;
|
|
|
|
for ( i = 0; i < len; i += 16 )
|
|
{
|
|
int nprint = len - i;
|
|
if ( nprint > 16 )
|
|
nprint = 16;
|
|
writer.Format( "{:04x} " ) << i;
|
|
dump16( writer, &s[i], nprint );
|
|
}
|
|
}
|
|
}
|
|
}
|