The main interface classes are:
T_ASC_Network *net; // network initialization code not shown, T_ASC_Parameters *params; // we just assume these pointers to be valid // create TLS object that initializes the random generator through a file // "random.dat" containing random data (1 kByte is sufficient). DcmTLSTransportLayer *tLayer = new DcmTLSTransportLayer( DICOM_APPLICATION_REQUESTOR, "random.dat"); if (TCS_ok != tLayer->setPrivateKeyFile("privkey.pem", SSL_FILETYPE_PEM)) { cerr << "unable to load private key" << endl; return; } if (TCS_ok != tLayer->setCertificateFile("certificate.pem", SSL_FILETYPE_PEM)) { cerr << "unable to load certificate" << endl; return; } // enable the TLS_RSA_WITH_3DES_EDE_CBC_SHA ciphersuite tLayer->setCipherSuites(SSL3_TXT_RSA_DES_192_CBC3_SHA); // accept any certificate from the remote site (not recommended) tLayer->setCertificateVerification(DCV_ignoreCertificate); // register and activate TLS layer ASC_setTransportLayer(net, tLayer, 1); ASC_setTransportLayerType(params, 1);