- ObjectId roid,ObjectId woid,Boolean f_bit) {
- SequenceNumber sn_tmp;
-
- if (max_msg_len<28) return -1;
- rtps_msg[0]=(uint8_t)ACK;
- rtps_msg[1]=ORTE_MY_MBO;
- if (f_bit) rtps_msg[1]|=2;
- *((ParameterLength*)(rtps_msg+2))=24;
- conv_u32(&roid,0);
- *((ObjectId*)(rtps_msg+4))=roid;
- conv_u32(&woid,0);
- *((ObjectId*)(rtps_msg+8))=woid;
+ ObjectId roid,ObjectId woid,Boolean f_bit)
+{
+ SequenceNumber sn_tmp;
+ CDR_Endianness data_endian;
+ CORBA_octet flags;
+
+ if (cdrCodec->buf_len<cdrCodec->wptr+28) return -1;
+
+ /* submessage id */
+ CDR_put_octet(cdrCodec,ACK);
+
+ /* flags */
+ flags=cdrCodec->data_endian;
+ if (f_bit) flags|=2;
+ CDR_put_octet(cdrCodec,flags);
+
+ /* length */
+ CDR_put_ushort(cdrCodec,24);
+
+ /* next data are sent in big endianing */
+ data_endian=cdrCodec->data_endian;
+ cdrCodec->data_endian=FLAG_BIG_ENDIAN;
+
+ /* readerObjectId */
+ CDR_put_ulong(cdrCodec,roid);
+
+ /* writerObjectId */
+ CDR_put_ulong(cdrCodec,woid);
+
+ cdrCodec->data_endian=data_endian;
+