OA::ExternalBuffer ocpi_outBuffer = ocpi_outPort->getBuffer((uint8_t&)out_data, out_length, opcode, EOD);
when calling this function and there is no buffer available i would expect the out_length variable to return 0 not a large garbage number like: 1423507729.
When the return value is NULL no other fields are changed or set since that would simply be overhead for no reason.
Was this a case where the return value was not NULL?