if( label ) {
- fprintf( stderr, ">>>>> %s p=%p %d bytes\n", label, p, n );
+ fprintf( stderr, "[DUMP] %s p=%p %d bytes\n", label, p, n );
}
rows = (n/16) + ((n % 16) ? 1 : 0);
for( j = 0; j < rows; j++ ) {
- fprintf( stderr, "%04x: ", j * 16 );
+ fprintf( stderr, "[DUMP] %04x: ", j * 16 );
for( i = 0; t < n && i < 16; i++, t++ ) {
fprintf( stderr, "%02x ", (unsigned char) *p );
blen++;
*blen = htonl( len ); // new systems want a converted integer
+ memset( &buf[TP_SZFIELD_LEN], 0, 4 ); // clear to prevent future conversion issues
buf[TP_SZFIELD_LEN-1] = TP_SZ_MARKER; // marker to flag this is generated by a new message
}
v1hdr = (uta_v1mhdr_t *) old_msg->header; // v1 will work to dig header out of any version
switch( ntohl( v1hdr->rmr_ver ) ) {
case 1:
- memcpy( v1hdr, old_msg->header, sizeof( *v1hdr ) ); // copy complete header
+ hdr = nm->header;
+ memcpy( hdr, old_msg->header, sizeof( *v1hdr ) ); // copy complete header
nm->payload = (void *) v1hdr + sizeof( *v1hdr );
break;
} else {
ok_sends++;
msg = clone_m; // clone will be the next to send
+ msg->state = RMR_OK;
}
} else {
msg = send_msg( ctx, msg, nn_sock, max_to ); // send the last, and allocate a new buffer; drops the clone if it was