Summary: | AET name is not transferred to Orthanc using dcmtk 3.6.0 (but ok in 3.6.1) [Fix included] | ||
---|---|---|---|
Product: | Orthanc | Reporter: | Sébastien Jodogne <s.jodogne> |
Component: | Orthanc Core | Assignee: | Sébastien Jodogne <s.jodogne> |
Status: | RESOLVED FIXED | ||
Severity: | normal | ||
Priority: | --- | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | All |
Description
Sébastien Jodogne
2020-06-29 15:12:04 CEST
[BitBucket user: asch99] [BitBucket date: 2017-03-14.15:27:35] As extra information, running a storescp instead of Orthanc does not give rise to this error. I tried the binary versions of 3.6.0 and 3.6.1 as well as compiling myself from the dcmtk-3.6.0 sources used in the compilation of Orthanc. Somehow the error already originates in the ASC_receiveAssociation() call in acceptAssociation() of CommandDispatcher.cpp, which results in an assoc with empty DULparams. [BitBucket user: asch99] [BitBucket date: 2017-03-14.18:09:56] OK, turns out a time-out occurs in dul.cc: DUL_ReceiveAssociationRQ() The issue can be solved by patching the dul.cc file of dcmtk-3.6.0, just replace line 627 with the corresponding line in dcmtk-3.6.1: old: cond = PRV_NextPDUType(association, block, timeout, &pduType); new: cond = PRV_NextPDUType(association, DUL_NOBLOCK, PRV_DEFAULTTIMEOUT, &pduType); [BitBucket user: Sébastien Jodogne] [BitBucket date: 2017-03-17.15:09:19] fix issue #35 → https://hg.orthanc-server.com/orthanc/changeset/bfcf5a7f92e7 [BitBucket user: Sébastien Jodogne] [BitBucket date: 2017-03-17.15:12:38] Thanks for your great investigation! In order to benefit from the fix, you'll will have to compile the mainline version of Orthanc entirely in static mode (add the `-DSTATIC_BUILD=ON` flag to cmake), or statically link against DCMTK (add the `-DUSE_SYSTEM_DCMTK=OFF` flag to cmake). Unfortunately, I have no way to test this fix by myself. |