From a9f1ff2b647369e38cc890a113ebd0846e1e21b2 Mon Sep 17 00:00:00 2001 From: Ivan Kluchnikov Date: Thu, 24 May 2012 22:25:06 +0400 Subject: [PATCH] Modified PCU debugging/logging system. Now we use functions from osmocom logging system. --- csn1.cpp | 201 ++++++++++++++++++++++----------------------- gprs_bssgp_pcu.cpp | 8 +- gprs_bssgp_pcu.h | 3 +- gprs_rlcmac.cpp | 34 ++++---- gsm_rlcmac.cpp | 85 ++++++++++--------- pcu_l1_if.cpp | 10 +-- pcu_main.cpp | 15 ++-- 7 files changed, 183 insertions(+), 173 deletions(-) diff --git a/csn1.cpp b/csn1.cpp index ddaa91d7..e30eb353 100644 --- a/csn1.cpp +++ b/csn1.cpp @@ -33,6 +33,7 @@ #include #include #include "csn1.h" +#include #define pvDATA(_pv, _offset) ((void*) ((unsigned char*)_pv + _offset)) @@ -43,7 +44,6 @@ /* used to tag existence of next element in variable length lists */ #define STANDARD_TAG 1 #define REVERSED_TAG 0 -#define LOG(INFO) cout using namespace std; static const unsigned char ixBitsTab[] = {0, 1, 1, 2, 2, 3, 3, 3, 4, 4, 4, 4, 4, 4, 4, 4, 5}; @@ -109,11 +109,11 @@ ProcessError( size_t readIndex, const char* sz, gint16 err, const CSN_DESCR* pDe gint16 i = MIN(-err, ((gint16) ElementsOf(ErrCodes)-1)); if (i >= 0) { - LOG(ERR) << sz << "Error code: "<< ErrCodes[i] << pDescr?(pDescr->sz):"-"; + //LOG(ERR) << sz << "Error code: "<< ErrCodes[i] << pDescr?(pDescr->sz):"-"; } else { - LOG(ERR) << sz << ": " << pDescr?(pDescr->sz):"-"; + //LOG(ERR) << sz << ": " << pDescr?(pDescr->sz):"-"; } return err; } @@ -169,7 +169,6 @@ static gboolean existNextElement(bitvec *vector, size_t& readIndex, guint8 Tag) { guint8 res = bitvec_read_field(vector, readIndex, 1); - //LOG(INFO) << "EXIST TAG = " << (unsigned)res; if (Tag == STANDARD_TAG) { return (res > 0); @@ -204,7 +203,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ { pui8 = pui8DATA(data, pDescr->offset); *pui8 = bitvec_read_field(vector, readIndex, 1); - LOG(INFO) << pDescr->sz << " = " <<(unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); /* end add the bit value to protocol tree */ } else @@ -235,21 +234,21 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ guint8 ui8 = bitvec_read_field(vector, readIndex, no_of_bits); pui8 = pui8DATA(data, pDescr->offset); *pui8 = ui8; - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); } else if (no_of_bits <= 16) { guint16 ui16 = bitvec_read_field(vector, readIndex, no_of_bits); pui16 = pui16DATA(data, pDescr->offset); *pui16 = ui16; - LOG(INFO) << pDescr->sz << " = " << *pui16 << "\n";; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , *pui16); } else if (no_of_bits <= 32) { guint32 ui32 = bitvec_read_field(vector, readIndex, no_of_bits); pui32 = pui32DATA(data, pDescr->offset); *pui32 = ui32; - LOG(INFO) << pDescr->sz << " = " << *pui32 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = 0x%08x | ", pDescr->sz , *pui32); } else { @@ -278,21 +277,21 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ guint8 ui8 = bitvec_read_field(vector, readIndex, no_of_bits); pui8 = pui8DATA(data, pDescr->offset); *pui8 = ui8 + (guint8)pDescr->descr.value; - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); } else if (no_of_bits <= 16) { guint16 ui16 = bitvec_read_field(vector, readIndex, no_of_bits); pui16 = pui16DATA(data, pDescr->offset); *pui16 = ui16 + (guint16)pDescr->descr.value; - LOG(INFO) << pDescr->sz << " = " << *pui16 << "\n";; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , *pui16); } else if (no_of_bits <= 32) { guint32 ui32 = bitvec_read_field(vector, readIndex, no_of_bits); pui32 = pui32DATA(data, pDescr->offset); *pui32 = ui32 + (guint16)pDescr->descr.value; - LOG(INFO) << pDescr->sz << " = " << *pui32 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , *pui32); } else { @@ -322,7 +321,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ guint8 ui8 = get_masked_bits8(vector, readIndex, bit_offset, no_of_bits); pui8 = pui8DATA(data, pDescr->offset); *pui8 = ui8; - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); } else {/* Maybe we should support more than 8 bits ? */ @@ -359,7 +358,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ do { *pui8 = bitvec_read_field(vector, readIndex, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; bit_offset += no_of_bits; } while (--nCount > 0); @@ -410,7 +409,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ * but no bits shall be read from bitstream */ - LOG(INFO) << pDescr->sz << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s | ", pDescr->sz); csnStreamInit(&arT, bit_offset, remaining_bits_len); Status = csnStreamDecoder(&arT, (const CSN_DESCR*)pDescr->descr.ptr, vector, readIndex, pui8); if (Status >= 0) @@ -444,7 +443,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ guint8 ui8 = bitvec_read_field(vector, readIndex, 8); pui8 = pui8DATA(data, pDescr->offset+ib); *pui8 = ui8; - LOG(INFO) << pDescr->sz <<"[" << ib << "]= " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s[%u] = %u | ", pDescr->sz , ib, (unsigned)*pui8); } } else if (no_of_bits <= 64) @@ -454,7 +453,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ guint8 ui8 = bitvec_read_field(vector, readIndex, 8); pui8 = pui8DATA(data, pDescr->offset+ib); *pui8 = ui8; - LOG(INFO) << pDescr->sz <<"[" << ib << "]= " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s[%u] = %u | ", pDescr->sz , ib, (unsigned)*pui8); } } else @@ -476,10 +475,10 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ { gint16 Status; csnStream_t arT = *ar; - LOG(INFO) << ": " << pDescr->sz << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, " : %s | ", pDescr->sz); csnStreamInit(&arT, bit_offset, remaining_bits_len); Status = csnStreamDecoder(&arT, (const CSN_DESCR*)pDescr->descr.ptr, vector, readIndex, pvDATA(data, pDescr->offset)); - LOG(INFO) << ": End " << pDescr->sz << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, ": End %s | ", pDescr->sz); if (Status >= 0) { remaining_bits_len = arT.remaining_bits_len; @@ -516,7 +515,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ descr[1].type = CSN_END; pui8 = pui8DATA(data, pDescr->offset); *pui8 = i; - LOG(INFO) << "Choice " << pDescr->sz << " = " << (unsigned)value << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "Choice %s = %u | ", pDescr->sz , (unsigned)value); bit_offset += no_of_bits; remaining_bits_len -= no_of_bits; @@ -551,7 +550,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ csnStream_t arT = *ar; gint16 Status = -1; - LOG(INFO) << pDescr->sz << " length = " << bitvec_read_field(vector, readIndex, 7) << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s length = %d | ", pDescr->sz , (int)bitvec_read_field(vector, readIndex, 7)); arT.direction = 1; bit_offset += 7; remaining_bits_len -= 7; @@ -616,7 +615,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ /* script index to continue on, limited in case we do not have a power of 2 */ pDescr += (MIN(index + 1, count)); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); switch (pDescr->type) { /* get the right element of the union based on computed index */ @@ -629,7 +628,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ { *pui8 = 0x01; } - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); remaining_bits_len -= 1; bit_offset++; pDescr++; @@ -654,21 +653,21 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ guint8 ui8 = bitvec_read_field(vector, readIndex, no_of_bits); pui8 = pui8DATA(data, pDescr->offset); *pui8 = ui8; - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); } else if (no_of_bits <= 16) { guint16 ui16 = bitvec_read_field(vector, readIndex, no_of_bits); pui16 = pui16DATA(data, pDescr->offset); *pui16 = ui16; - LOG(INFO) << pDescr->sz << " = " << *pui16 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , *pui16); } else if (no_of_bits <= 32) { guint32 ui32 = bitvec_read_field(vector, readIndex, no_of_bits); pui32 = pui32DATA(data, pDescr->offset); *pui32 = ui32; - LOG(INFO) << pDescr->sz << " = " << *pui32 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , *pui32); } else { @@ -696,21 +695,21 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ guint8 ui8 = bitvec_read_field(vector, readIndex, no_of_bits); pui8 = pui8DATA(data, pDescr->offset); *pui8 = ui8 + (guint8)pDescr->descr.value; - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); } else if (no_of_bits <= 16) { guint16 ui16 = bitvec_read_field(vector, readIndex, no_of_bits); pui16 = pui16DATA(data, pDescr->offset); *pui16 = ui16 + (guint16)pDescr->descr.value; - LOG(INFO) << pDescr->sz << " = " << *pui16 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , *pui16); } else if (no_of_bits <= 32) { guint32 ui32 = bitvec_read_field(vector, readIndex, no_of_bits); pui32 = pui32DATA(data, pDescr->offset); *pui32 = ui32 + (guint16)pDescr->descr.value; - LOG(INFO) << pDescr->sz << " = " << *pui32 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , *pui32); } else { @@ -738,7 +737,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ guint8 ui8 = get_masked_bits8(vector, readIndex, bit_offset, no_of_bits); pui8 = pui8DATA(data, pDescr->offset); *pui8 = ui8; - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); } else { /* Maybe we should support more than 8 bits ? */ @@ -775,7 +774,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ while (nCount > 0) { *pui8 = bitvec_read_field(vector, readIndex, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; bit_offset += no_of_bits; nCount--; @@ -788,7 +787,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ while (nCount > 0) { *pui16 = bitvec_read_field(vector, readIndex, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << *pui16 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , *pui16); pui16++; bit_offset += no_of_bits; nCount--; @@ -835,7 +834,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ while (nCount--) /* Changed to handle length = 0. */ { - LOG(INFO) << pDescr->sz << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s | ", pDescr->sz); csnStreamInit(&arT, bit_offset, remaining_bits_len); Status = csnStreamDecoder(&arT, (const CSN_DESCR*)pDescr->descr.ptr, vector, readIndex, pui8); if (Status >= 0) @@ -866,14 +865,13 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ guint32 ui32 = bitvec_read_field(vector, readIndex, no_of_bits); pui32 = pui32DATA(data, pDescr->offset); *pui32 = ui32; - LOG(INFO) << pDescr->sz << " = " << *pui32 << "\n"; } else if (no_of_bits <= 64) { guint64 ui64 = bitvec_read_field(vector, readIndex, no_of_bits); pui64 = pui64DATA(data, pDescr->offset); *pui64 = ui64; - LOG(INFO) << pDescr->sz << " = " << *pui64 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , *pui64); } else { @@ -894,10 +892,10 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ { gint16 Status; csnStream_t arT = *ar; - LOG(INFO) << ": " << pDescr->sz << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, " : %s | ", pDescr->sz); csnStreamInit(&arT, bit_offset, remaining_bits_len); Status = csnStreamDecoder(&arT, (const CSN_DESCR*)pDescr->descr.ptr, vector, readIndex, pvDATA(data, pDescr->offset)); - LOG(INFO) << ": End " << pDescr->sz << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, " : End %s | ", pDescr->sz); if (Status >= 0) { remaining_bits_len = arT.remaining_bits_len; @@ -939,7 +937,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ } *pui8 = fExist; - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 <<"\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pDescr++; remaining_bits_len -= 1; @@ -987,7 +985,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ *pui8 = fExist; remaining_bits_len -= 1; - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); ++bit_offset; if (fExist == 0) @@ -1024,7 +1022,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ /* the "regular" M_NEXT_EXIST_LH description element */ fExist = get_masked_bits8(vector,readIndex,bit_offset, 1); - LOG(INFO) << pDescr->sz << " = " << (unsigned)fExist << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)fExist); *pui8++ = fExist; remaining_bits_len -= 1; @@ -1074,7 +1072,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ if (nB1 > 0) { /* take care of the first byte - it will be right aligned */ *pui8 = bitvec_read_field(vector, readIndex, nB1); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; no_of_bits -= nB1; bit_offset += nB1; /* (nB1 is no_of_bits Mod 8) */ @@ -1084,7 +1082,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ while (no_of_bits > 0) { *pui8 = bitvec_read_field(vector, readIndex, 8); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; no_of_bits -= 8; } @@ -1129,14 +1127,14 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ while (no_of_bits > 0) { *pui8 = bitvec_read_field(vector, readIndex, 8); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; no_of_bits -= 8; } if (nB1 > 0) { *pui8 = bitvec_read_field(vector, readIndex, nB1); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; no_of_bits -= nB1; bit_offset += nB1; /* (nB1 is no_of_bits Mod 8) */ @@ -1175,7 +1173,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ { readIndex -= 8; *pui8 = bitvec_read_field(vector, readIndex, 8); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; bit_offset += 8; count--; @@ -1202,13 +1200,13 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ while (existNextElement(vector, readIndex, Tag)) { /* tag control shows existence of next list elements */ - LOG(INFO) << pDescr->sz << " = Exist \n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = Exist | ", pDescr->sz); bit_offset++; remaining_bits_len--; /* extract and store no_of_bits long element from bitstream */ *pui8 = bitvec_read_field(vector, readIndex, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; remaining_bits_len -= no_of_bits; ElementCount++; @@ -1221,7 +1219,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ bit_offset += no_of_bits; } - LOG(INFO) << pDescr->sz << " = " << bitvec_read_field(vector, readIndex, 1) << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)bitvec_read_field(vector, readIndex, 1)); /* existNextElement() returned FALSE, 1 bit consumed */ bit_offset++; @@ -1243,7 +1241,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ while (existNextElement(vector, readIndex, Tag)) { /* tag control shows existence of next list elements */ - LOG(INFO) << pDescr->sz << " = Exist \n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = Exist | ", pDescr->sz); /* existNextElement() returned TRUE, 1 bit consumed */ bit_offset++; remaining_bits_len--; @@ -1273,7 +1271,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ } } - LOG(INFO) << pDescr->sz << " = " << bitvec_read_field(vector, readIndex, 1) << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)bitvec_read_field(vector, readIndex, 1)); /* existNextElement() returned FALSE, 1 bit consumed */ bit_offset++; @@ -1311,7 +1309,8 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ { /* get data element */ ElementCount++; - LOG(INFO) << pDescr->sz << " { \n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s { | ", pDescr->sz); + csnStreamInit(&arT, bit_offset, remaining_bits_len); Status = csnStreamDecoder(&arT, (const CSN_DESCR*)pDescr->descr.ptr, vector, readIndex, pvDATA(data, pDescr->offset)); @@ -1332,7 +1331,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ } /* control of next element's tag */ - LOG(INFO) << pDescr->sz << " } \n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s } | ", pDescr->sz); EndOfList = !(existNextElement(vector, readIndex, Tag)); bit_offset++; @@ -1365,7 +1364,7 @@ csnStreamDecoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector, size_ return ProcessError(readIndex,"csnStreamDecoder FIXED value does not match", -1, pDescr); } - LOG(INFO) << pDescr->sz<< " = " << ui32 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , (unsigned int)ui32); remaining_bits_len -= no_of_bits; bit_offset += no_of_bits; pDescr++; @@ -1432,7 +1431,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector { pui8 = pui8DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui8, 1); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); /* end add the bit value to protocol tree */ } else @@ -1462,19 +1461,19 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector { pui8 = pui8DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui8, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); } else if (no_of_bits <= 16) { pui16 = pui16DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui16, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << *pui16 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , *pui16); } else if (no_of_bits <= 32) { pui32 = pui32DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui32, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << *pui32 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , *pui32); } else { @@ -1502,19 +1501,19 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector { pui8 = pui8DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui8 - (guint8)pDescr->descr.value, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << (unsigned)(*pui8 - (guint8)pDescr->descr.value) << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)(*pui8 - (guint8)pDescr->descr.value)); } else if (no_of_bits <= 16) { pui16 = pui16DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui16 - (guint16)pDescr->descr.value, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << *pui16 - (guint16)pDescr->descr.value << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , (unsigned short)(*pui16 - (guint16)pDescr->descr.value)); } else if (no_of_bits <= 32) { pui32 = pui32DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui32 - (guint16)pDescr->descr.value, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << *pui32 - (guint16)pDescr->descr.value << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , (unsigned int)(*pui32 - (guint16)pDescr->descr.value)); } else { @@ -1548,7 +1547,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector guint8 ui8 = get_masked_bits8(vector, writeIndex, bit_offset, no_of_bits); writeIndex -= no_of_bits; bitvec_write_field(vector, writeIndex, ui8, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); } else @@ -1585,8 +1584,8 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector pui8 = pui8DATA(data, pDescr->offset); do { - bitvec_write_field(vector, writeIndex, *pui8, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + bitvec_write_field(vector, writeIndex, *pui8, no_of_bits); + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; bit_offset += no_of_bits; } while (--nCount > 0); @@ -1637,7 +1636,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector * but no bits shall be read from bitstream */ - LOG(INFO) << pDescr->sz << " : \n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s : | ", pDescr->sz); csnStreamInit(&arT, bit_offset, remaining_bits_len); Status = csnStreamEncoder(&arT, (const CSN_DESCR*)pDescr->descr.ptr, vector, writeIndex, pui8); if (Status >= 0) @@ -1671,7 +1670,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector { pui8 = pui8DATA(data, pDescr->offset+ib); bitvec_write_field(vector, writeIndex, *pui8, 8); - LOG(INFO) << pDescr->sz <<"[" << ib << "]= " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s[%u] = %u | ", pDescr->sz , ib, (unsigned)*pui8); } } else if (no_of_bits <= 64) @@ -1680,7 +1679,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector { pui8 = pui8DATA(data, pDescr->offset+ib); bitvec_write_field(vector, writeIndex, *pui8, 8); - LOG(INFO) << pDescr->sz <<"[" << ib << "]= " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s[%u] = %u | ", pDescr->sz , ib, (unsigned)*pui8); } } else @@ -1702,10 +1701,10 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector { gint16 Status; csnStream_t arT = *ar; - LOG(INFO) << ": " << pDescr->sz << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, " : %s | ", pDescr->sz); csnStreamInit(&arT, bit_offset, remaining_bits_len); Status = csnStreamEncoder(&arT, (const CSN_DESCR*)pDescr->descr.ptr, vector, writeIndex, pvDATA(data, pDescr->offset)); - LOG(INFO) << ": End " << pDescr->sz << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, " : End %s | ", pDescr->sz); if (Status >= 0) { @@ -1733,7 +1732,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector pChoice += i; guint8 no_of_bits = pChoice->bits; guint8 value = pChoice->value; - LOG(INFO) << pChoice->descr.sz << " = " << (unsigned)value << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pChoice->descr.sz , (unsigned)value); bitvec_write_field(vector, writeIndex, value, no_of_bits); CSN_DESCR descr[2]; @@ -1780,7 +1779,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector Status = serialize(&arT, vector, writeIndex, pvDATA(data, pDescr->offset)); bitvec_write_field(vector, lengthIndex, writeIndex-lengthIndex-7, 7); - LOG(INFO) << pDescr->sz << " length = " << writeIndex-lengthIndex << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s length = %u | ", pDescr->sz , (unsigned)(writeIndex-lengthIndex)); if (Status >= 0) { @@ -1847,7 +1846,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector /* script index to continue on, limited in case we do not have a power of 2 */ pDescr += (MIN(index + 1, count)); - LOG(INFO) << pDescr->sz << " = " << (unsigned)index << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)index); switch (pDescr->type) { /* get the right element of the union based on computed index */ @@ -1856,7 +1855,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector { pui8 = pui8DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui8, 1); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); remaining_bits_len -= 1; bit_offset++; pDescr++; @@ -1880,19 +1879,19 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector { pui8 = pui8DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui8, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); } else if (no_of_bits <= 16) { pui16 = pui16DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui16, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << *pui16 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , *pui16); } else if (no_of_bits <= 32) { pui32 = pui32DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui32, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << *pui32 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , *pui32); } else { @@ -1919,19 +1918,19 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector { pui8 = pui8DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui8 - (guint8)pDescr->descr.value, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << (unsigned)(*pui8 - (guint8)pDescr->descr.value) << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)(*pui8 - (guint8)pDescr->descr.value)); } else if (no_of_bits <= 16) { pui16 = pui16DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui16 - (guint16)pDescr->descr.value, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << *pui16 - (guint16)pDescr->descr.value << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , (unsigned short)(*pui16 - (guint16)pDescr->descr.value)); } else if (no_of_bits <= 32) { pui32 = pui32DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui32 - (guint16)pDescr->descr.value, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << *pui32 - (guint16)pDescr->descr.value << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , (unsigned int)(*pui32 - (guint16)pDescr->descr.value)); } else { @@ -1965,7 +1964,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector guint8 ui8 = get_masked_bits8(vector, writeIndex, bit_offset, no_of_bits); writeIndex -= no_of_bits; bitvec_write_field(vector, writeIndex, ui8, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); } else @@ -2002,8 +2001,8 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector pui8 = pui8DATA(data, pDescr->offset); do { - bitvec_write_field(vector, writeIndex, *pui8, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + bitvec_write_field(vector, writeIndex, *pui8, no_of_bits); + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; bit_offset += no_of_bits; } while (--nCount > 0); @@ -2054,7 +2053,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector * but no bits shall be read from bitstream */ - LOG(INFO) << pDescr->sz << " : \n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s : | ", pDescr->sz); csnStreamInit(&arT, bit_offset, remaining_bits_len); Status = csnStreamEncoder(&arT, (const CSN_DESCR*)pDescr->descr.ptr, vector, writeIndex, pui8); if (Status >= 0) @@ -2085,13 +2084,13 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector { pui32 = pui32DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui32, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << *pui32 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , *pui32); } else if (no_of_bits <= 64) { pui64 = pui64DATA(data, pDescr->offset); bitvec_write_field(vector, writeIndex, *pui64, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << *pui64 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %d | ", pDescr->sz , *pui64); } else { @@ -2112,10 +2111,10 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector { gint16 Status; csnStream_t arT = *ar; - LOG(INFO) << ": " << pDescr->sz << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, " : %s | ", pDescr->sz); csnStreamInit(&arT, bit_offset, remaining_bits_len); Status = csnStreamEncoder(&arT, (const CSN_DESCR*)pDescr->descr.ptr, vector, writeIndex, pvDATA(data, pDescr->offset)); - LOG(INFO) << ": End " << pDescr->sz << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, " : End %s | ", pDescr->sz); if (Status >= 0) { remaining_bits_len = arT.remaining_bits_len; @@ -2160,7 +2159,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector } writeIndex--; bitvec_write_field(vector, writeIndex, fExist, 1); - LOG(INFO) << pDescr->sz << " = " << (unsigned)fExist << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz, (unsigned)fExist); pDescr++; remaining_bits_len -= 1; @@ -2197,7 +2196,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector bitvec_write_field(vector, writeIndex, *pui8, 1); fExist = *pui8; - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); remaining_bits_len -= 1; ++bit_offset; @@ -2289,7 +2288,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector if (nB1 > 0) { /* take care of the first byte - it will be right aligned */ bitvec_write_field(vector, writeIndex, *pui8, nB1); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; no_of_bits -= nB1; bit_offset += nB1; /* (nB1 is no_of_bits Mod 8) */ @@ -2299,7 +2298,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector while (no_of_bits > 0) { bitvec_write_field(vector, writeIndex, *pui8, 8); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; no_of_bits -= 8; } @@ -2345,14 +2344,14 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector while (no_of_bits > 0) { bitvec_write_field(vector, writeIndex, *pui8, 8); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; no_of_bits -= 8; } if (nB1 > 0) { bitvec_write_field(vector, writeIndex, *pui8, nB1); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; no_of_bits -= nB1; bit_offset += nB1; /* (nB1 is no_of_bits Mod 8) */ @@ -2391,7 +2390,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector while (count > 0) { bitvec_write_field(vector, writeIndex, *pui8, 8); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; bit_offset += 8; count--; @@ -2418,13 +2417,13 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector while (ElementCount > 0) { /* tag control shows existence of next list elements */ bitvec_write_field(vector, writeIndex, Tag, 1); - LOG(INFO) << pDescr->sz << " = " << (unsigned)Tag << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)Tag); bit_offset++; remaining_bits_len--; /* extract and store no_of_bits long element from bitstream */ bitvec_write_field(vector, writeIndex, *pui8, no_of_bits); - LOG(INFO) << pDescr->sz << " = " << (unsigned)*pui8 << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)*pui8); pui8++; remaining_bits_len -= no_of_bits; ElementCount--; @@ -2438,7 +2437,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector } bitvec_write_field(vector, writeIndex, !Tag, 1); - LOG(INFO) << pDescr->sz << " = " << (unsigned)(!Tag) << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)(!Tag)); bit_offset++; pDescr++; @@ -2459,7 +2458,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector while (ElementCount > 0) { /* tag control shows existence of next list elements */ bitvec_write_field(vector, writeIndex, Tag, 1); - LOG(INFO) << pDescr->sz << " = " << (unsigned)Tag << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)Tag); bit_offset++; remaining_bits_len--; @@ -2490,7 +2489,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector } bitvec_write_field(vector, writeIndex, !Tag, 1); - LOG(INFO) << pDescr->sz << " = " << (unsigned)(!Tag) << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)(!Tag)); bit_offset++; pDescr++; @@ -2528,15 +2527,15 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector if (ElementCount != ElementNum) { bitvec_write_field(vector, writeIndex, Tag, 1); - LOG(INFO) << pDescr->sz << " = " << (unsigned)Tag << "\n" ; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)Tag); bit_offset++; remaining_bits_len--; } ElementCount--; - LOG(INFO) << pDescr->sz << " { \n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s { | ", pDescr->sz); csnStreamInit(&arT, bit_offset, remaining_bits_len); Status = csnStreamEncoder(&arT, (const CSN_DESCR*)pDescr->descr.ptr, vector, writeIndex, pvDATA(data, pDescr->offset)); - LOG(INFO) << pDescr->sz << " } \n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s } | ", pDescr->sz); if (Status >= 0) { /* successful completion */ pui8 += nSizeElement; /* -> to next */ @@ -2565,7 +2564,7 @@ gint16 csnStreamEncoder(csnStream_t* ar, const CSN_DESCR* pDescr, bitvec *vector { /* Verify the fixed bits */ guint8 no_of_bits = (guint8) pDescr->i; bitvec_write_field(vector, writeIndex, pDescr->offset, no_of_bits); - LOG(INFO) << pDescr->sz<< " = " << pDescr->offset << "\n"; + LOGPC(DCSN1, LOGL_NOTICE, "%s = %u | ", pDescr->sz , (unsigned)pDescr->offset); remaining_bits_len -= no_of_bits; bit_offset += no_of_bits; pDescr++; diff --git a/gprs_bssgp_pcu.cpp b/gprs_bssgp_pcu.cpp index 13479a37..2cf3f5b6 100644 --- a/gprs_bssgp_pcu.cpp +++ b/gprs_bssgp_pcu.cpp @@ -44,8 +44,9 @@ int gprs_bssgp_pcu_rx_dl_ud(struct msgb *msg) tbf->direction = GPRS_RLCMAC_DL_TBF; tbf->state = GPRS_RLCMAC_WAIT_DATA_SEQ_START; tbf->tlli = ntohl(budh->tlli); + LOGP(DRLCMAC, LOGL_NOTICE, "TBF: [DOWNLINK] START TFI: %u TLLI: 0x%08x \n", tbf->tfi, tbf->tlli); - LOGP(DBSSGP, LOGL_NOTICE, "rx BSSGP TLLI=0x%08x \n", ntohl(budh->tlli)); + //LOGP(DBSSGP, LOGL_NOTICE, "rx BSSGP TLLI=0x%08x \n", ntohl(budh->tlli)); for (i = 4; i < MAX_LEN_PDU; i++) { //LOGP(DBSSGP, LOGL_NOTICE, "SERCH data = -0x%02x\n", budh ->data[i]); @@ -61,10 +62,9 @@ int gprs_bssgp_pcu_rx_dl_ud(struct msgb *msg) tbf->rlc_data[data_index] = budh->data[i]; data_index++; } - DEBUGP(DBSSGP, "BSSGP Catch from SGSN=%u octets. Send it to OpenBTS.\n", data_index); + //DEBUGP(DBSSGP, "BSSGP Catch from SGSN=%u octets. Send it to OpenBTS.\n", data_index); gsmtap_send_llc(tbf->rlc_data,data_index); tbf->data_index = data_index; - gprs_rlcmac_downlink_assignment(tbf); } @@ -87,7 +87,7 @@ int gprs_bssgp_pcu_rx_ptp(struct msgb *msg, struct tlv_parsed *tp, struct bssgp_ switch (pdu_type) { case BSSGP_PDUT_DL_UNITDATA: - LOGP(DBSSGP, LOGL_NOTICE, "rx BSSGP_PDUT_DL_UNITDATA\n"); + LOGP(DBSSGP, LOGL_NOTICE, "RX: [SGSN->PCU] BSSGP_PDUT_DL_UNITDATA\n"); gprs_bssgp_pcu_rx_dl_ud(msg); break; case BSSGP_PDUT_PAGING_PS: diff --git a/gprs_bssgp_pcu.h b/gprs_bssgp_pcu.h index 1308cf7a..61759176 100644 --- a/gprs_bssgp_pcu.h +++ b/gprs_bssgp_pcu.h @@ -24,7 +24,7 @@ extern "C" { #include #include -#include +#include #include #include #include @@ -36,6 +36,7 @@ int bssgp_tx_ul_ud(struct bssgp_bvc_ctx *bctx, uint32_t tlli, const uint8_t *qos struct bssgp_bvc_ctx *btsctx_alloc(uint16_t bvci, uint16_t nsei); } +#include #define BVCI 7 #define NSEI 3 diff --git a/gprs_rlcmac.cpp b/gprs_rlcmac.cpp index 81c5df25..80814c02 100644 --- a/gprs_rlcmac.cpp +++ b/gprs_rlcmac.cpp @@ -131,6 +131,7 @@ static void tbf_gsm_timer_cb(void *_tbf) case 0: // This is timer for delay RLC/MAC data sending after Downlink Immediate Assignment on CCCH. gprs_rlcmac_segment_llc_pdu(tbf); + LOGP(DRLCMAC, LOGL_NOTICE, "TBF: [DOWNLINK] END TFI: %u TLLI: 0x%08x \n", tbf->tfi, tbf->tlli); break; default: COUT("Timer expired in unknown mode" << tbf->fT); @@ -410,11 +411,13 @@ void gprs_rlcmac_tx_ul_ack(uint8_t tfi, uint32_t tlli, RlcMacUplinkDataBlock_t * bitvec *packet_uplink_ack_vec = bitvec_alloc(23); bitvec_unhex(packet_uplink_ack_vec, "2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b"); write_packet_uplink_ack(packet_uplink_ack_vec, tfi, tlli, ul_data_block->CV, ul_data_block->BSN); - COUT("RLCMAC_CONTROL_BLOCK>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"); + LOGP(DRLCMAC, LOGL_NOTICE, "TX: [PCU -> BTS] TFI: %u TLLI: 0x%08x Packet Uplink Ack\n", tfi, tlli); RlcMacDownlink_t * packet_uplink_ack = (RlcMacDownlink_t *)malloc(sizeof(RlcMacDownlink_t)); + LOGP(DRLCMAC, LOGL_NOTICE, "+++++++++++++++++++++++++ TX : Packet Uplink Ack +++++++++++++++++++++++++\n"); decode_gsm_rlcmac_downlink(packet_uplink_ack_vec, packet_uplink_ack); + LOGPC(DRLCMAC, LOGL_NOTICE, "\n"); + LOGP(DRLCMAC, LOGL_NOTICE, "------------------------- TX : Packet Uplink Ack -------------------------\n"); free(packet_uplink_ack); - COUT("RLCMAC_CONTROL_BLOCK_END------------------------------"); pcu_l1if_tx(packet_uplink_ack_vec, GsmL1_Sapi_Pacch); bitvec_free(packet_uplink_ack_vec); } @@ -456,11 +459,11 @@ int gprs_rlcmac_rcv_data_block(bitvec *rlc_block) { struct gprs_rlcmac_tbf *tbf; - COUT("RLCMAC_DATA_BLOCK<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"); + LOGP(DRLCMAC, LOGL_NOTICE, "RX: [PCU <- BTS] Uplink Data Block\n"); RlcMacUplinkDataBlock_t * ul_data_block = (RlcMacUplinkDataBlock_t *)malloc(sizeof(RlcMacUplinkDataBlock_t)); + LOGP(DRLCMAC, LOGL_NOTICE, "+++++++++++++++++++++++++ RX : Uplink Data Block +++++++++++++++++++++++++\n"); decode_gsm_rlcmac_uplink_data(rlc_block, ul_data_block); - COUT("RLCMAC_DATA_BLOCK_END------------------------------"); - + LOGP(DRLCMAC, LOGL_NOTICE, "------------------------- RX : Uplink Data Block -------------------------\n"); tbf = tbf_by_tfi(ul_data_block->TFI); if (!tbf) { return 0; @@ -511,11 +514,11 @@ int gprs_rlcmac_rcv_control_block(bitvec *rlc_block) uint32_t tlli = 0; struct gprs_rlcmac_tbf *tbf; - COUT("RLCMAC_CONTROL_BLOCK<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<"); RlcMacUplink_t * ul_control_block = (RlcMacUplink_t *)malloc(sizeof(RlcMacUplink_t)); + LOGP(DRLCMAC, LOGL_NOTICE, "+++++++++++++++++++++++++ RX : Uplink Control Block +++++++++++++++++++++++++\n"); decode_gsm_rlcmac_uplink(rlc_block, ul_control_block); - COUT("RLCMAC_CONTROL_BLOCK_END------------------------------"); - + LOGPC(DRLCMAC, LOGL_NOTICE, "\n"); + LOGP(DRLCMAC, LOGL_NOTICE, "------------------------- RX : Uplink Control Block -------------------------\n"); switch (ul_control_block->u.MESSAGE_TYPE) { case MT_PACKET_CONTROL_ACK: tlli = ul_control_block->u.Packet_Control_Acknowledgement.TLLI; @@ -532,7 +535,7 @@ int gprs_rlcmac_rcv_control_block(bitvec *rlc_block) if (!tbf) { return 0; } - COUT("SEND PacketUplinkAssignment>>>>>>>>>>>>>>>>>>"); + LOGP(DRLCMAC, LOGL_NOTICE, "TX: [PCU -> BTS] TFI: %u TLLI: 0x%08x Packet Uplink Assignment\n", tbf->tfi, tbf->tlli); bitvec *packet_uplink_assignment = bitvec_alloc(23); bitvec_unhex(packet_uplink_assignment, "2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b"); write_packet_uplink_assignment(packet_uplink_assignment, tbf->tfi, tbf->tlli); @@ -575,9 +578,9 @@ int gprs_rlcmac_rcv_rach(uint8_t ra, uint32_t Fn, uint16_t ta) tbf = tbf_alloc(tfi); tbf->direction = GPRS_RLCMAC_UL_TBF; tbf->state = GPRS_RLCMAC_WAIT_DATA_SEQ_START; - COUT("[UPLINK TBF : " << tfi << " ] : START"); - - COUT("SEND Immidiate Assignment>>>>>>>>>>>>>>>>>>"); + LOGP(DRLCMAC, LOGL_NOTICE, "TBF: [UPLINK] START TFI: %u\n", tbf->tfi); + LOGP(DRLCMAC, LOGL_NOTICE, "RX: [PCU <- BTS] TFI: %u RACH\n", tbf->tfi); + LOGP(DRLCMAC, LOGL_NOTICE, "TX: [PCU -> BTS] TFI: %u Packet Immidiate Assignment\n", tbf->tfi); bitvec *immediate_assignment = bitvec_alloc(23); bitvec_unhex(immediate_assignment, "2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b"); int len = write_immediate_assignment(immediate_assignment, 0, ra, Fn, ta, tbf->tfi); @@ -619,7 +622,10 @@ void gprs_rlcmac_tx_dl_data_block(uint32_t tlli, uint8_t tfi, uint8_t *pdu, int for(i = j; i < j + spare_len; i++) { data_block->RLC_DATA[i] = 0x2b; } + LOGP(DRLCMAC, LOGL_NOTICE, "TX: [PCU -> BTS] Downlink Data Block\n"); + LOGP(DRLCMAC, LOGL_NOTICE, "+++++++++++++++++++++++++ TX : Downlink Data Block +++++++++++++++++++++++++\n"); encode_gsm_rlcmac_downlink_data(data_block_vector, data_block); + LOGP(DRLCMAC, LOGL_NOTICE, "------------------------- TX : Downlink Data Block -------------------------\n"); free(data_block); pcu_l1if_tx(data_block_vector, GsmL1_Sapi_Pdtch); bitvec_free(data_block_vector); @@ -670,7 +676,7 @@ void gprs_rlcmac_tx_ul_ud(gprs_rlcmac_tbf *tbf) struct msgb *llc_pdu; unsigned msg_len = NS_HDR_LEN + BSSGP_HDR_LEN + tbf->data_index; - LOGP(DBSSGP, LOGL_DEBUG, "Data len %u TLLI 0x%08x , TFI 0x%02x", tbf->data_index, tbf->tlli, tbf->tfi); + LOGP(DBSSGP, LOGL_DEBUG, "TX: [PCU -> SGSN ] TFI: %u TLLI: 0x%08x DataLen: %u", tbf->tfi, tbf->tlli, tbf->data_index); //for (unsigned i = 0; i < dataLen; i++) // LOGP(DBSSGP, LOGL_DEBUG, " Data[%u] = %u", i, rlc_data[i]); @@ -689,7 +695,7 @@ void gprs_rlcmac_tx_ul_ud(gprs_rlcmac_tbf *tbf) void gprs_rlcmac_downlink_assignment(gprs_rlcmac_tbf *tbf) { - COUT("SEND IA Rest Octets Downlink Assignment>>>>>>>>>>>>>>>>>>"); + LOGP(DRLCMAC, LOGL_NOTICE, "TX: [PCU -> BTS] TFI: %u TLLI: 0x%08x Immidiate Assignment (CCCH)\n", tbf->tfi, tbf->tlli); bitvec *immediate_assignment = bitvec_alloc(23); bitvec_unhex(immediate_assignment, "2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b"); int len = write_immediate_assignment(immediate_assignment, 1, 125, get_current_fn(), (l1fh->fl1h)->channel_info.ta, tbf->tfi, tbf->tlli); diff --git a/gsm_rlcmac.cpp b/gsm_rlcmac.cpp index 995ca2b1..211d7af3 100644 --- a/gsm_rlcmac.cpp +++ b/gsm_rlcmac.cpp @@ -34,7 +34,7 @@ */ #include #include -#define LOG(INFO) cout +#include using namespace std; /* Payload type as defined in TS 44.060 / 10.4.7 */ @@ -4724,12 +4724,12 @@ void decode_gsm_rlcmac_uplink(bitvec * vector, RlcMacUplink_t * data) if (payload_type == PAYLOAD_TYPE_DATA) { - LOG(INFO) << "Payload Type: DATA (0), not implemented"; + LOGPC(DRLCMACDATA, LOGL_NOTICE, "Payload Type: DATA (0), not implemented"); return; } else if (payload_type == PAYLOAD_TYPE_RESERVED) { - LOG(INFO) << "Payload Type: RESERVED (3)"; + LOGPC(DRLCMACDATA, LOGL_NOTICE, "Payload Type: RESERVED (3)"); return; } data->NrOfBits = (23 - 1) * 8; @@ -4835,12 +4835,12 @@ void decode_gsm_rlcmac_downlink(bitvec * vector, RlcMacDownlink_t * data) if (data->PAYLOAD_TYPE == PAYLOAD_TYPE_DATA) { - LOG(INFO) << "Payload Type: DATA (0), not implemented"; + LOGPC(DRLCMACDATA, LOGL_NOTICE, "Payload Type: DATA (0), not implemented"); return; } else if (data->PAYLOAD_TYPE == PAYLOAD_TYPE_RESERVED) { - LOG(INFO) << "Payload Type: RESERVED (3)"; + LOGPC(DRLCMACDATA, LOGL_NOTICE, "Payload Type: RESERVED (3)"); return; } /* We can decode the message */ @@ -5115,12 +5115,12 @@ void encode_gsm_rlcmac_downlink(bitvec * vector, RlcMacDownlink_t * data) if (data->PAYLOAD_TYPE == PAYLOAD_TYPE_DATA) { - LOG(INFO) << "Payload Type: DATA (0), not implemented"; + LOGPC(DRLCMACDATA, LOGL_NOTICE, "Payload Type: DATA (0), not implemented"); return; } else if (data->PAYLOAD_TYPE == PAYLOAD_TYPE_RESERVED) { - LOG(INFO) << "Payload Type: RESERVED (3)"; + LOGPC(DRLCMACDATA, LOGL_NOTICE, "Payload Type: RESERVED (3)"); return; } /* We can decode the message */ @@ -5308,25 +5308,26 @@ void decode_gsm_rlcmac_uplink_data(bitvec * vector, RlcMacUplinkDataBlock_t * da data->CV = bitvec_read_field(vector, readIndex, 4); data->SI = bitvec_read_field(vector, readIndex, 1); data->R = bitvec_read_field(vector, readIndex, 1); - LOG(INFO) << " PAYLOAD_TYPE = " << (unsigned)(data->PAYLOAD_TYPE); - LOG(INFO) << " CV = " << (unsigned)(data->CV); - LOG(INFO) << " SI = " << (unsigned)(data->SI); - LOG(INFO) << " R = " << (unsigned)(data->R); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "PAYLOAD_TYPE = %u ", (unsigned)(data->PAYLOAD_TYPE)); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "CV = %u ", (unsigned)(data->CV)); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "SI = %u ", (unsigned)(data->SI)); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "R = %u ", (unsigned)(data->R)); // Octet 1 data->spare = bitvec_read_field(vector, readIndex, 1); data->PI = bitvec_read_field(vector, readIndex, 1); data->TFI = bitvec_read_field(vector, readIndex, 5); data->TI = bitvec_read_field(vector, readIndex, 1); - LOG(INFO) << " spare = " << (unsigned)(data->spare); - LOG(INFO) << " PI = " << (unsigned)(data->PI); - LOG(INFO) << " TFI = " << (unsigned)(data->TFI); - LOG(INFO) << " TI = " << (unsigned)(data->TI); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "spare = %u ", (unsigned)(data->spare)); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "PI = %u ", (unsigned)(data->PI)); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "TFI = %u ", (unsigned)(data->TFI)); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "TI = %u ", (unsigned)(data->TI)); // Octet 2 data->BSN = bitvec_read_field(vector, readIndex, 7); data->E_1 = bitvec_read_field(vector, readIndex, 1); - LOG(INFO) << " BSN = " << (unsigned)(data->BSN); - LOG(INFO) << " E_1 = " << (unsigned)(data->E_1); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "BSN = %u ", (unsigned)(data->BSN)); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "E_1 = %u ", (unsigned)(data->E_1)); + if(data->E_1 == 0) // Extension octet follows immediately { @@ -5337,35 +5338,36 @@ void decode_gsm_rlcmac_uplink_data(bitvec * vector, RlcMacUplinkDataBlock_t * da data->LENGTH_INDICATOR[i] = bitvec_read_field(vector, readIndex, 6); data->M[i] = bitvec_read_field(vector, readIndex, 1); data->E[i] = bitvec_read_field(vector, readIndex, 1); - LOG(INFO) << " LENGTH_INDICATOR[" << i << "] = " << (unsigned)(data->LENGTH_INDICATOR[i]); - LOG(INFO) << " M[" << i << "] = " << (unsigned)(data->M[i]); - LOG(INFO) << " E[" << i << "] = " << (unsigned)(data->E[i]); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "LENGTH_INDICATOR[%u] = %u ", i, (unsigned)(data->LENGTH_INDICATOR[i])); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "M[%u] = %u ", i, (unsigned)(data->M[i])); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "E[%u] = %u ", i, (unsigned)(data->E[i])); i++; } while((data->M[i-1] == 1)&&(data->E[i-1] == 0)); } if(data->TI == 1) // TLLI field is present { data->TLLI = bitvec_read_field(vector, readIndex, 32); - LOG(INFO) << " TLLI = " << data->TLLI; + LOGPC(DRLCMACDATA, LOGL_NOTICE, "TLLI = %08x ", data->TLLI); if (data->PI == 1) // PFI is present if TI field indicates presence of TLLI { data->PFI = bitvec_read_field(vector, readIndex, 7); data->E_2 = bitvec_read_field(vector, readIndex, 1); - LOG(INFO) << " PFI = " << (unsigned)(data->PFI); - LOG(INFO) << " E_2 = " << (unsigned)(data->E_2); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "PFI = %u ", (unsigned)(data->PFI)); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "E_2 = %u ", (unsigned)(data->E_2)); } } unsigned dataLen = 23 - readIndex/8; + LOGPC(DRLCMACDATA, LOGL_NOTICE, "DATA[%u] = ", dataLen); for (unsigned i = 0; i < dataLen; i++) { data->RLC_DATA[i] = bitvec_read_field(vector, readIndex, 8); - LOG(INFO) << " DATA[" << i << "] = " << (unsigned)(data->RLC_DATA[i]); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "%02x", (unsigned)(data->RLC_DATA[i])); } - LOG(INFO) << "\n"; + LOGPC(DRLCMACDATA, LOGL_NOTICE, "\n"); } else { - LOG(INFO) << "Payload Type: RESERVED (3)"; + LOGPC(DRLCMACDATA, LOGL_NOTICE, "Payload Type: RESERVED (3)"); return; } } @@ -5381,22 +5383,25 @@ void encode_gsm_rlcmac_downlink_data(bitvec * vector, RlcMacDownlinkDataBlock_t bitvec_write_field(vector, writeIndex, data->RRBP, 2); bitvec_write_field(vector, writeIndex, data->SP, 1); bitvec_write_field(vector, writeIndex, data->USF, 3); - LOG(INFO) << " PAYLOAD_TYPE = " << (unsigned)(data->PAYLOAD_TYPE); - LOG(INFO) << " RRBP = " << (unsigned)(data->RRBP); - LOG(INFO) << " SP = " << (unsigned)(data->SP); - LOG(INFO) << " USF = " << (unsigned)(data->USF); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "PAYLOAD_TYPE = %u ", (unsigned)(data->PAYLOAD_TYPE)); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "RRBP = %u ", (unsigned)(data->RRBP)); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "SP = %u ", (unsigned)(data->SP)); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "USF = %u ", (unsigned)(data->USF)); + // Octet 1 bitvec_write_field(vector, writeIndex, data->PR, 2); bitvec_write_field(vector, writeIndex, data->TFI, 5); bitvec_write_field(vector, writeIndex, data->FBI, 1); - LOG(INFO) << " PR = " << (unsigned)(data->PR); - LOG(INFO) << " TFI = " << (unsigned)(data->TFI); - LOG(INFO) << " FBI = " << (unsigned)(data->FBI); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "PR = %u ", (unsigned)(data->PR)); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "TFI = %u ", (unsigned)(data->TFI)); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "FBI = %u ", (unsigned)(data->FBI)); + // Octet 2 bitvec_write_field(vector, writeIndex, data->BSN, 7); bitvec_write_field(vector, writeIndex, data->E_1, 1); - LOG(INFO) << " BSN = " << (unsigned)(data->BSN); - LOG(INFO) << " E_1 = " << (unsigned)(data->E_1); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "BSN = %u ", (unsigned)(data->BSN)); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "E_1 = %u ", (unsigned)(data->E_1)); + // Octet 3 (optional) if(data->E_1 == 0) { @@ -5406,18 +5411,20 @@ void encode_gsm_rlcmac_downlink_data(bitvec * vector, RlcMacDownlinkDataBlock_t bitvec_write_field(vector, writeIndex, data->LENGTH_INDICATOR[i], 6); bitvec_write_field(vector, writeIndex, data->M[i], 1); bitvec_write_field(vector, writeIndex, data->E[i], 1); - LOG(INFO) << " LENGTH_INDICATOR[" << i << "] = " << (unsigned)(data->LENGTH_INDICATOR[i]); - LOG(INFO) << " M[" << i << "] = " << (unsigned)(data->M[i]); - LOG(INFO) << " E[" << i << "] = " << (unsigned)(data->E[i]); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "LENGTH_INDICATOR[%u] = %u ", i, (unsigned)(data->LENGTH_INDICATOR[i])); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "M[%u] = %u ", i, (unsigned)(data->M[i])); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "E[%u] = %u ", i, (unsigned)(data->E[i])); i++; } while ((data->M[i-1] == 1) && (data->E[i-1] == 0)); } unsigned dataNumOctets = 23 - writeIndex/8; + LOGPC(DRLCMACDATA, LOGL_NOTICE, "DATA[%u] = ", dataNumOctets); for (unsigned i = 0; i < dataNumOctets; i++) { bitvec_write_field(vector, writeIndex, data->RLC_DATA[i], 8); - LOG(INFO) << " DATA[" << i << "] = " << (unsigned)(data->RLC_DATA[i]); + LOGPC(DRLCMACDATA, LOGL_NOTICE, "%02x", (unsigned)(data->RLC_DATA[i])); } + LOGPC(DRLCMACDATA, LOGL_NOTICE, "\n"); } } diff --git a/pcu_l1_if.cpp b/pcu_l1_if.cpp index 4aa97073..b95c512a 100644 --- a/pcu_l1_if.cpp +++ b/pcu_l1_if.cpp @@ -20,8 +20,8 @@ #include #include #include -#include #include +#include #define MAX_UDP_LENGTH 1500 @@ -78,7 +78,6 @@ void pcu_l1if_tx(bitvec * block, GsmL1_Sapi_t sapi, int len) prim->u.phDataReq.sapi = sapi; bitvec_pack(block, prim->u.phDataReq.msgUnitParam.u8Buffer); prim->u.phDataReq.msgUnitParam.u8Size = len; - //COUT("Add Block to WRITE QUEUE: " << *block); osmo_wqueue_enqueue(queue, msg); } @@ -86,7 +85,6 @@ int pcu_l1if_rx_pdch(GsmL1_PhDataInd_t *data_ind) { bitvec *block = bitvec_alloc(data_ind->msgUnitParam.u8Size); bitvec_unpack(block, data_ind->msgUnitParam.u8Buffer); - //COUT("RX: " << *block); gprs_rlcmac_rcv_block(block); bitvec_free(block); } @@ -96,8 +94,8 @@ static int handle_ph_connect_ind(struct femtol1_hdl *fl1, GsmL1_PhConnectInd_t * (l1fh->fl1h)->channel_info.arfcn = connect_ind->u16Arfcn; (l1fh->fl1h)->channel_info.tn = connect_ind->u8Tn; (l1fh->fl1h)->channel_info.tsc = connect_ind->u8Tsc; - COUT("RX: [ PCU <- BTS ] PhConnectInd: ARFCN: " << connect_ind->u16Arfcn - <<" TN: " << (unsigned)connect_ind->u8Tn << " TSC: " << (unsigned)connect_ind->u8Tsc); + LOGP(DL1IF, LOGL_NOTICE, "RX: [ PCU <- BTS ] PhConnectInd: ARFCN: %u TN: %u TSC: %u \n", + connect_ind->u16Arfcn, (unsigned)connect_ind->u8Tn, (unsigned)connect_ind->u8Tsc); } static int handle_ph_readytosend_ind(struct femtol1_hdl *fl1, GsmL1_PhReadyToSendInd_t *readytosend_ind) @@ -135,7 +133,7 @@ static int handle_ph_data_ind(struct femtol1_hdl *fl1, GsmL1_PhDataInd_t *data_i case GsmL1_Sapi_Prach: break; default: - //LOGP(DGPRS, LOGL_NOTICE, "Rx PH-DATA.ind for unknown L1 SAPI %u \n", data_ind->sapi); + LOGP(DL1IF, LOGL_NOTICE, "Rx PH-DATA.ind for unknown L1 SAPI %u \n", data_ind->sapi); break; } diff --git a/pcu_main.cpp b/pcu_main.cpp index 2417d08b..f26c6d86 100644 --- a/pcu_main.cpp +++ b/pcu_main.cpp @@ -18,10 +18,10 @@ */ #include -#include -#include +#include #include #include +#include // TODO: We should move this parameters to config file. #define SGSN_IP "127.0.0.1" @@ -40,7 +40,7 @@ int sgsn_ns_cb(enum gprs_ns_evt event, struct gprs_nsvc *nsvc, struct msgb *msg, rc = gprs_bssgp_pcu_rcvmsg(msg); break; default: - LOGP(DGPRS, LOGL_ERROR, "RLCMAC: Unknown event %u from NS\n", event); + LOGP(DPCU, LOGL_ERROR, "RLCMAC: Unknown event %u from NS\n", event); if (msg) talloc_free(msg); rc = -EIO; @@ -91,11 +91,11 @@ static int udp_write_cb(struct osmo_fd *ofd, struct msgb *msg) rc = sendto(ofd->fd, msg->l1h, msgb_l1len(msg), 0, (const struct sockaddr *)&l1fh->remote_sa, l1fh->remote_sa_len); if (rc < 0) { - LOGP(DGPRS, LOGL_ERROR, "error writing to L1 msg_queue: %s\n", + LOGP(DPCU, LOGL_ERROR, "error writing to L1 msg_queue: %s\n", strerror(errno)); return rc; } else if (rc < msgb_l1len(msg)) { - LOGP(DGPRS, LOGL_ERROR, "short write to L1 msg_queue: " + LOGP(DPCU, LOGL_ERROR, "short write to L1 msg_queue: " "%u < %u\n", rc, msgb_l1len(msg)); return -EIO; } @@ -145,8 +145,7 @@ int main(int argc, char *argv[]) uint16_t nsvci = NSVCI; struct gprs_ns_inst *sgsn_nsi; struct gprs_nsvc *nsvc; - - osmo_init_logging(&log_info); + osmo_init_logging(&gprs_log_info); pcu_l1if_open(); sgsn_nsi = gprs_ns_instantiate(&sgsn_ns_cb); @@ -154,7 +153,7 @@ int main(int argc, char *argv[]) if (!bssgp_nsi) { - LOGP(DGPRS, LOGL_ERROR, "Unable to instantiate NS\n"); + LOGP(DPCU, LOGL_ERROR, "Unable to instantiate NS\n"); exit(1); } bctx = btsctx_alloc(BVCI, NSEI);