Yes. One way is to set the world.asn1prnt function pointer of the instance of ossGlobal structure to your personal printing function which outputs to a memory buffer of your choice:
... ossinit(&world, _primary_control_table); world.asn1prnt = OSSTraceFunc; ... int OSSTraceFunc(FILE *pFile, const char *format, ...) { #define nBufLen 1024 va_list args; char szBuf[nBufLen]; int nRC; memset(szBuf, '\0', nBufLen); va_start(args, format); nRC = vsprintf(szBuf, format, args); va_end(args); fputs(szBuf, pFile); fflush(pFile); return nRC; }
If your platform does not support FILE pointers, you may also try passing a NULL value for the stream argument (first argument). The other way is to use ossSetUserPrint() or ossSetUserVprint() passing your printing function pointer and/or the stream pointer.
The samples included with some of the Knowledge Center answers are meant for your general understanding of the OSS products. Different versions of the products might produce slightly different outputs. Consult the products documentation and samples for the most up-to-date products information and code examples.
Test drive the OSS Nokalva ASN.1, LTE, and XML Tools now! Your trial includes complete software, documentation, sample programs, free 24x7 technical support and more.
Our expert personnel can help you learn ASN.1!
We offer 4-day ASN.1 courses at our headquarters or your premises.