Mercurial > hg > orthanc
comparison OrthancServer/Sources/main.cpp @ 4656:82a314325351
New configuration option: "DicomTlsRemoteCertificateRequired"
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 06 May 2021 18:39:19 +0200 |
parents | e915102093de |
children | f0038043fb97 ec8aef42a7db |
comparison
equal
deleted
inserted
replaced
4655:9f7eef20bc7d | 4656:82a314325351 |
---|---|
67 static const char* const KEY_DICOM_TLS_PRIVATE_KEY = "DicomTlsPrivateKey"; | 67 static const char* const KEY_DICOM_TLS_PRIVATE_KEY = "DicomTlsPrivateKey"; |
68 static const char* const KEY_DICOM_TLS_ENABLED = "DicomTlsEnabled"; | 68 static const char* const KEY_DICOM_TLS_ENABLED = "DicomTlsEnabled"; |
69 static const char* const KEY_DICOM_TLS_CERTIFICATE = "DicomTlsCertificate"; | 69 static const char* const KEY_DICOM_TLS_CERTIFICATE = "DicomTlsCertificate"; |
70 static const char* const KEY_DICOM_TLS_TRUSTED_CERTIFICATES = "DicomTlsTrustedCertificates"; | 70 static const char* const KEY_DICOM_TLS_TRUSTED_CERTIFICATES = "DicomTlsTrustedCertificates"; |
71 static const char* const KEY_MAXIMUM_PDU_LENGTH = "MaximumPduLength"; | 71 static const char* const KEY_MAXIMUM_PDU_LENGTH = "MaximumPduLength"; |
72 static const char* const KEY_DICOM_TLS_REMOTE_CERTIFICATE_REQUIRED = "DicomTlsRemoteCertificateRequired"; | |
72 | 73 |
73 | 74 |
74 class OrthancStoreRequestHandler : public IStoreRequestHandler | 75 class OrthancStoreRequestHandler : public IStoreRequestHandler |
75 { | 76 { |
76 private: | 77 private: |
1207 dicomServer.SetTrustedCertificatesPath( | 1208 dicomServer.SetTrustedCertificatesPath( |
1208 lock.GetConfiguration().GetStringParameter(KEY_DICOM_TLS_TRUSTED_CERTIFICATES, "")); | 1209 lock.GetConfiguration().GetStringParameter(KEY_DICOM_TLS_TRUSTED_CERTIFICATES, "")); |
1209 } | 1210 } |
1210 | 1211 |
1211 dicomServer.SetMaximumPduLength(lock.GetConfiguration().GetUnsignedIntegerParameter(KEY_MAXIMUM_PDU_LENGTH, 16384)); | 1212 dicomServer.SetMaximumPduLength(lock.GetConfiguration().GetUnsignedIntegerParameter(KEY_MAXIMUM_PDU_LENGTH, 16384)); |
1213 | |
1214 // New option in Orthanc 1.9.3 | |
1215 dicomServer.SetRemoteCertificateRequired( | |
1216 lock.GetConfiguration().GetBooleanParameter(KEY_DICOM_TLS_REMOTE_CERTIFICATE_REQUIRED, true)); | |
1212 } | 1217 } |
1213 | 1218 |
1214 #if ORTHANC_ENABLE_PLUGINS == 1 | 1219 #if ORTHANC_ENABLE_PLUGINS == 1 |
1215 if (plugins != NULL) | 1220 if (plugins != NULL) |
1216 { | 1221 { |
1465 lock.GetConfiguration().GetStringParameter(KEY_DICOM_TLS_CERTIFICATE, "")); | 1470 lock.GetConfiguration().GetStringParameter(KEY_DICOM_TLS_CERTIFICATE, "")); |
1466 DicomAssociationParameters::SetDefaultTrustedCertificatesPath( | 1471 DicomAssociationParameters::SetDefaultTrustedCertificatesPath( |
1467 lock.GetConfiguration().GetStringParameter(KEY_DICOM_TLS_TRUSTED_CERTIFICATES, "")); | 1472 lock.GetConfiguration().GetStringParameter(KEY_DICOM_TLS_TRUSTED_CERTIFICATES, "")); |
1468 DicomAssociationParameters::SetDefaultMaximumPduLength( | 1473 DicomAssociationParameters::SetDefaultMaximumPduLength( |
1469 lock.GetConfiguration().GetUnsignedIntegerParameter(KEY_MAXIMUM_PDU_LENGTH, 16384)); | 1474 lock.GetConfiguration().GetUnsignedIntegerParameter(KEY_MAXIMUM_PDU_LENGTH, 16384)); |
1475 | |
1476 // New option in Orthanc 1.9.3 | |
1477 DicomAssociationParameters::SetDefaultRemoteCertificateRequired( | |
1478 lock.GetConfiguration().GetBooleanParameter(KEY_DICOM_TLS_REMOTE_CERTIFICATE_REQUIRED, true)); | |
1470 } | 1479 } |
1471 | 1480 |
1472 ServerContext context(database, storageArea, false /* not running unit tests */, maxCompletedJobs); | 1481 ServerContext context(database, storageArea, false /* not running unit tests */, maxCompletedJobs); |
1473 | 1482 |
1474 { | 1483 { |