Sorry to post on an old thread, but I'm having a problem with registering with the OPCUA LDS. I completely started over by using a fresh checkout of the LDS and the UA C++ SDK. I'm using the latest LDS application from the OPC Foundation (
https://github.com/OPCFoundation/UA-LDS) and I'm using the UA SDK server examples. There is a section in the UA configuration for
DiscoveryRegistration, and there is note for enabling the
Url of the LDS. I did that in the UA configuration below ...
Code: Select all
<!--Discovery configuration
Configuration for registration with discovery server(s)-->
<DiscoveryRegistration>
<!--Flag indicating if the certificates should be exchanged with the windows certificate store -->
<AutomaticCertificateExchange>false</AutomaticCertificateExchange>
<!--Path of the local discovery server trust list. This is where the server copies it's certificate to
if the file based store of the new LDS is used. -->
<DiscoveryServerTrustListLocation></DiscoveryServerTrustListLocation>
<!--Store name used for the local discovery server in the windows certificate store -->
<DiscoveryServerStoreName>UA Applications</DiscoveryServerStoreName>
<!--Certificate name of the local discovery server in the windows certificate store -->
<DiscoveryServerCertificateName>UA Local Discovery Server</DiscoveryServerCertificateName>
<!--Interval in milliseconds for registration with discovery server(s) -->
<RegistrationInterval>30000</RegistrationInterval>
<!--List of discovery servers to register with.
If the list is empty, no registration is executed.
Default is opc.tcp://localhost:4840 for the local discovery server.
Additional remote discovery servers can be added -->
<Url>opc.tcp://127.0.0.1:4840</Url>
</DiscoveryRegistration>
<!--Discovery configuration end-->
When the UA server example starts up and performs the LDS registration, the LDS application is closing the channel due to an error.
Code: Select all
Fri Jan 3 10:30:43 [11933]: Server startup complete. Host name is jeliser-thinkpad-x1.
Fri Jan 3 10:30:43 [11933]: Using certificate store at /opt/opcfoundation/ualds/pki/...
Fri Jan 3 10:30:43 [11933]: Opening endpoint 'opc.tcp://127.0.0.1:4840'...
Fri Jan 3 10:30:43 [11933]: Endpoint is open.
Fri Jan 3 10:30:45 [11933]: ualds_endpoint_callback called: Event=SecureChannelOpened, SecureChanneldId=0x00000001, uStatus=0x00000000
Fri Jan 3 10:30:45 [11933]: ualds_endpoint_callback: SecureChannel 0x00000001 opened with http://opcfoundation.org/UA/SecurityPolicy#None in mode 1 status 0x00000000!
Fri Jan 3 10:30:45 [11933]: [uastack] OpcUa_SecureListener_ProcessRequest: Closing channel due error 0x800B0000!
0x800B0000 corresponds to a
UA_SCBADSERVICEUNSUPPORTED (
https://documentation.unified-automatio ... e90a436aee). I'm at a loss where to go from here. I looked through the UA server base class and didn't find anything that jumped out at me. I thought maybe there was a
virtual method or something that was missing, but I couldn't find anything.
Thanks again for the help!