X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=src%2Frmr%2Fsi%2Fsrc%2Fsr_si_static.c;h=e79a3bce2a1bd35971b937d924668eb1c0eeead5;hb=ece5bbead6922f59982227c9941babdd6054cf17;hp=391962144d26accc12bd5a3c972fc3398f2ca528;hpb=c113b0836f3ebd58911c30de1636a707174efe55;p=ric-plt%2Flib%2Frmr.git diff --git a/src/rmr/si/src/sr_si_static.c b/src/rmr/si/src/sr_si_static.c index 3919621..e79a3bc 100644 --- a/src/rmr/si/src/sr_si_static.c +++ b/src/rmr/si/src/sr_si_static.c @@ -39,13 +39,13 @@ static void dump_n( char *p, char* label, int n ) { 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 ); @@ -126,6 +126,7 @@ static inline void insert_mlen( uint32_t len, char* buf ) { 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 } @@ -351,7 +352,8 @@ static inline rmr_mbuf_t* clone_msg( rmr_mbuf_t* old_msg ) { 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; @@ -789,6 +791,7 @@ static rmr_mbuf_t* mtosend_msg( void* vctx, rmr_mbuf_t* msg, int max_to ) { } 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