Skip to content

Add promiscuous mode for ServerAssociation#500

Merged
Enet4 merged 2 commits intoEnet4:masterfrom
nickamzol:feature/promiscuous-mode
Apr 25, 2024
Merged

Add promiscuous mode for ServerAssociation#500
Enet4 merged 2 commits intoEnet4:masterfrom
nickamzol:feature/promiscuous-mode

Conversation

@nickamzol
Copy link
Copy Markdown
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
Copy Markdown
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
Copy Markdown
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
Copy Markdown

Great @nickamzol that is exactly what we need!

Copy link
Copy Markdown
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
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