Obviously I was a little bit confused with the string conventions ... sometimes, you have to allocate the string-buffers yourself, sometimes not.
pCfg->pOPC = UA_Server_new();
UA_ServerConfig *pUACFG = UA_Server_getConfig(pCfg->pOPC);
UA_ServerConfig_setMinimal(pUACFG,pCfg->OPC.Port,(pCfg->OPC.ena_cert && pCfg->OPC.certificate.length)?&pCfg->OPC.certificate:NULL);
if (pCfg->OPC.strName[0]) pUACFG->applicationDescription.applicationName = UA_LOCALIZEDTEXT("en-US",pCfg->OPC.strName);
This code works now.
Thanks
FireHeart