|
@@ -569,9 +569,17 @@ UA_Server_initNS0(UA_Server *server) {
|
|
retVal = ua_namespace0(server);
|
|
retVal = ua_namespace0(server);
|
|
#else
|
|
#else
|
|
/* Create a minimal server object */
|
|
/* Create a minimal server object */
|
|
- UA_Server_minimalServerObject(server);
|
|
|
|
|
|
+ retVal = UA_Server_minimalServerObject(server);
|
|
#endif
|
|
#endif
|
|
|
|
|
|
|
|
+ if(retVal != UA_STATUSCODE_GOOD) {
|
|
|
|
+ UA_LOG_ERROR(server->config.logger, UA_LOGCATEGORY_SERVER,
|
|
|
|
+ "Initialization of Namespace 0 (before bootstrapping) "
|
|
|
|
+ "failed with %s. See previous outputs for any error messages.",
|
|
|
|
+ UA_StatusCode_name(retVal));
|
|
|
|
+ return UA_STATUSCODE_BADINTERNALERROR;
|
|
|
|
+ }
|
|
|
|
+
|
|
/* NamespaceArray */
|
|
/* NamespaceArray */
|
|
UA_DataSource namespaceDataSource = {readNamespaces, writeNamespaces};
|
|
UA_DataSource namespaceDataSource = {readNamespaces, writeNamespaces};
|
|
retVal |= UA_Server_setVariableNode_dataSource(server,
|
|
retVal |= UA_Server_setVariableNode_dataSource(server,
|
|
@@ -583,10 +591,6 @@ UA_Server_initNS0(UA_Server *server) {
|
|
&server->config.applicationDescription.applicationUri,
|
|
&server->config.applicationDescription.applicationUri,
|
|
1, &UA_TYPES[UA_TYPES_STRING]);
|
|
1, &UA_TYPES[UA_TYPES_STRING]);
|
|
|
|
|
|
- /* MinSupportedSampleRate */
|
|
|
|
- retVal |= writeNs0Variable(server, UA_NS0ID_SERVER_SERVERCAPABILITIES_MINSUPPORTEDSAMPLERATE,
|
|
|
|
- &server->config.samplingIntervalLimits.min, &UA_TYPES[UA_TYPES_DURATION]);
|
|
|
|
-
|
|
|
|
/* ServerStatus */
|
|
/* ServerStatus */
|
|
UA_DataSource serverStatus = {readStatus, NULL};
|
|
UA_DataSource serverStatus = {readStatus, NULL};
|
|
retVal |= UA_Server_setVariableNode_dataSource(server,
|
|
retVal |= UA_Server_setVariableNode_dataSource(server,
|
|
@@ -634,6 +638,10 @@ UA_Server_initNS0(UA_Server *server) {
|
|
|
|
|
|
#ifdef UA_GENERATED_NAMESPACE_ZERO
|
|
#ifdef UA_GENERATED_NAMESPACE_ZERO
|
|
|
|
|
|
|
|
+ /* MinSupportedSampleRate */
|
|
|
|
+ retVal |= writeNs0Variable(server, UA_NS0ID_SERVER_SERVERCAPABILITIES_MINSUPPORTEDSAMPLERATE,
|
|
|
|
+ &server->config.samplingIntervalLimits.min, &UA_TYPES[UA_TYPES_DURATION]);
|
|
|
|
+
|
|
/* SecondsTillShutdown */
|
|
/* SecondsTillShutdown */
|
|
UA_UInt32 secondsTillShutdown = 0;
|
|
UA_UInt32 secondsTillShutdown = 0;
|
|
retVal |= writeNs0Variable(server, UA_NS0ID_SERVER_SERVERSTATUS_SECONDSTILLSHUTDOWN,
|
|
retVal |= writeNs0Variable(server, UA_NS0ID_SERVER_SERVERSTATUS_SECONDSTILLSHUTDOWN,
|
|
@@ -828,10 +836,12 @@ UA_Server_initNS0(UA_Server *server) {
|
|
overflowAttr, NULL, NULL);
|
|
overflowAttr, NULL, NULL);
|
|
#endif
|
|
#endif
|
|
|
|
|
|
- if(retVal != UA_STATUSCODE_GOOD)
|
|
|
|
|
|
+ if(retVal != UA_STATUSCODE_GOOD) {
|
|
UA_LOG_ERROR(server->config.logger, UA_LOGCATEGORY_SERVER,
|
|
UA_LOG_ERROR(server->config.logger, UA_LOGCATEGORY_SERVER,
|
|
"Initialization of Namespace 0 (after bootstrapping) "
|
|
"Initialization of Namespace 0 (after bootstrapping) "
|
|
"failed with %s. See previous outputs for any error messages.",
|
|
"failed with %s. See previous outputs for any error messages.",
|
|
UA_StatusCode_name(retVal));
|
|
UA_StatusCode_name(retVal));
|
|
|
|
+ return UA_STATUSCODE_BADINTERNALERROR;
|
|
|
|
+ }
|
|
return UA_STATUSCODE_GOOD;
|
|
return UA_STATUSCODE_GOOD;
|
|
}
|
|
}
|