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

Fix crash if server does not provide DiscoveryUrls #1388

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Fix crash if server does not provide DiscoveryUrls
The OPC UA specification does not forbid that a server does not offer DiscoveryUrls. This can lead to a crash when calling the function application_to_strings().

Check DiscoveryUrls for None or empty before iterating to avoid the crash described in #1127.
  • Loading branch information
CuriousCrook authored Sep 27, 2021
commit 7cb1626bdc5a57d8fd193ed9bcc4191d27525f12
5 changes: 3 additions & 2 deletions opcua/tools.py
Original file line number Diff line number Diff line change
Expand Up @@ -418,8 +418,9 @@ def application_to_strings(app):
for (n, v) in optionals:
if v:
result.append((n, v))
for url in app.DiscoveryUrls:
result.append(('Discovery URL', url))
if app.DiscoveryUrls:
for url in app.DiscoveryUrls:
result.append(('Discovery URL', url))
return result # ['{}: {}'.format(n, v) for (n, v) in result]


Expand Down