123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224 |
- #ifndef UA_SERVER_CONFIG_H_
- #define UA_SERVER_CONFIG_H_
- #include "ua_server.h"
- #include "ua_plugin_log.h"
- #include "ua_plugin_network.h"
- #include "ua_plugin_access_control.h"
- #include "ua_plugin_pki.h"
- #include "ua_plugin_securitypolicy.h"
- #include "ua_plugin_nodestore.h"
- #ifdef UA_ENABLE_PUBSUB
- #include "ua_plugin_pubsub.h"
- #endif
- #ifdef UA_ENABLE_HISTORIZING
- #include "ua_plugin_historydatabase.h"
- #endif
- _UA_BEGIN_DECLS
- typedef struct {
- UA_UInt32 min;
- UA_UInt32 max;
- } UA_UInt32Range;
- typedef struct {
- UA_Duration min;
- UA_Duration max;
- } UA_DurationRange;
- struct UA_ServerConfig {
- UA_UInt16 nThreads;
- UA_Logger logger;
-
- UA_BuildInfo buildInfo;
- UA_ApplicationDescription applicationDescription;
- UA_ByteString serverCertificate;
-
- #ifdef UA_ENABLE_DISCOVERY
- UA_String mdnsServerName;
- size_t serverCapabilitiesSize;
- UA_String *serverCapabilities;
- #endif
-
- size_t customDataTypesSize;
- UA_DataType *customDataTypes;
-
-
- UA_Nodestore nodestore;
-
- size_t networkLayersSize;
- UA_ServerNetworkLayer *networkLayers;
- UA_String customHostname;
- #ifdef UA_ENABLE_PUBSUB
-
- size_t pubsubTransportLayersSize;
- UA_PubSubTransportLayer *pubsubTransportLayers;
- #endif
-
- size_t endpointsSize;
- UA_Endpoint *endpoints;
-
- UA_GlobalNodeLifecycle nodeLifecycle;
-
-
- UA_AccessControl accessControl;
-
-
- UA_CertificateVerification certificateVerification;
-
- UA_Boolean relaxEmptyValueConstraint;
-
- UA_UInt16 maxSecureChannels;
- UA_UInt32 maxSecurityTokenLifetime;
-
- UA_UInt16 maxSessions;
- UA_Double maxSessionTimeout;
-
- UA_UInt32 maxNodesPerRead;
- UA_UInt32 maxNodesPerWrite;
- UA_UInt32 maxNodesPerMethodCall;
- UA_UInt32 maxNodesPerBrowse;
- UA_UInt32 maxNodesPerRegisterNodes;
- UA_UInt32 maxNodesPerTranslateBrowsePathsToNodeIds;
- UA_UInt32 maxNodesPerNodeManagement;
- UA_UInt32 maxMonitoredItemsPerCall;
-
- UA_UInt32 maxReferencesPerNode;
-
- UA_UInt32 maxSubscriptionsPerSession;
- UA_DurationRange publishingIntervalLimits;
- UA_UInt32Range lifeTimeCountLimits;
- UA_UInt32Range keepAliveCountLimits;
- UA_UInt32 maxNotificationsPerPublish;
- UA_UInt32 maxRetransmissionQueueSize;
- #ifdef UA_ENABLE_SUBSCRIPTIONS_EVENTS
- UA_UInt32 maxEventsPerNode;
- #endif
-
- UA_UInt32 maxMonitoredItemsPerSubscription;
- UA_DurationRange samplingIntervalLimits;
- UA_UInt32Range queueSizeLimits;
-
- UA_UInt32 maxPublishReqPerSession;
-
- #ifdef UA_ENABLE_DISCOVERY
-
- UA_UInt32 discoveryCleanupTimeout;
- #endif
- #ifdef UA_ENABLE_SUBSCRIPTIONS
-
- void (*monitoredItemRegisterCallback)(UA_Server *server,
- const UA_NodeId *sessionId, void *sessionContext,
- const UA_NodeId *nodeId, void *nodeContext,
- UA_UInt32 attibuteId, UA_Boolean removed);
- #endif
-
- #ifdef UA_ENABLE_HISTORIZING
- UA_HistoryDatabase historyDatabase;
-
- UA_Boolean accessHistoryDataCapability;
- UA_UInt32 maxReturnDataValues;
-
- UA_Boolean accessHistoryEventsCapability;
- UA_UInt32 maxReturnEventValues;
- UA_Boolean insertDataCapability;
- UA_Boolean insertEventCapability;
- UA_Boolean insertAnnotationsCapability;
- UA_Boolean replaceDataCapability;
- UA_Boolean replaceEventCapability;
-
- UA_Boolean updateDataCapability;
- UA_Boolean updateEventCapability;
-
- UA_Boolean deleteRawCapability;
- UA_Boolean deleteEventCapability;
- UA_Boolean deleteAtTimeDataCapability;
- #endif
- };
- _UA_END_DECLS
- #endif
|