Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add promiscuous mode for ServerAssociation #500

Merged
merged 2 commits into from
Apr 25, 2024

Conversation

nickamzol
Copy link
Contributor

@nickamzol nickamzol commented Apr 18, 2024

This PR introduces a new promiscuous flag field for ServerAssociationOptions to allow unknown abstract syntaxes.

Fixes #477

@Enet4 Enet4 added enhancement A-lib Area: library C-ul Crate: dicom-ul labels Apr 18, 2024
@Enet4
Copy link
Owner

Enet4 commented Apr 18, 2024

Thank you for looking into this @nickamzol! Could you write a test with this PR? You can see some examples of client/server DICOM interactions in directory ul/tests, it should be mostly a matter of creating a new test file with a similar DICOM association scenario with presentation context negotiation where the association acceptor is set in promiscuous mode.

@nickamzol nickamzol force-pushed the feature/promiscuous-mode branch from b12d229 to 5052dab Compare April 18, 2024 21:41
@nickamzol
Copy link
Contributor Author

As requested, I've added both a positive and a negative test case for the new promiscuous mode.

In the positive test case, a server association with promiscuous mode enabled is established. The client requests MR Image Storage, which is not explicitly defined in the server association options as an accepted SOP class. The SCP will accept this as it is set to promiscuous mode.

In the negative test case, a server association with promiscuous mode disabled and Ultrasound Image Storage as an acceptable SOP class is established. The client requests MR Image Storage again, but this is expected to fail, because the SCP does not explicitly accept this SOP class and it's not set to promiscuous mode.

@luckfamousa
Copy link

Great @nickamzol that is exactly what we need!

Copy link
Owner

@Enet4 Enet4 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The code looks spot on, and it's well tested! 👍

I will take care of expanding this capability to dicom-storescp. Thank you!

@Enet4 Enet4 merged commit 651f482 into Enet4:master Apr 25, 2024
4 checks passed
Enet4 added a commit that referenced this pull request Apr 25, 2024
- add `promiscuous`, implemented by #500
- adjust documentation of other arguments
PierreBou91 pushed a commit to PierreBou91/dicom-rs that referenced this pull request May 15, 2024
- add `promiscuous`, implemented by Enet4#500
- adjust documentation of other arguments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-lib Area: library C-ul Crate: dicom-ul enhancement
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Storescp promiscuous mode
3 participants