Commit Graph

37 Commits

Author SHA1 Message Date
dependabot[bot] 66436a9b6d Bump Serilog.Expressions from 3.4.0 to 3.4.1 (#1947)
Bumps [Serilog.Expressions](https://github.com/serilog/serilog-expressions) from 3.4.0 to 3.4.1.
- [Release notes](https://github.com/serilog/serilog-expressions/releases)
- [Commits](https://github.com/serilog/serilog-expressions/compare/v3.4.0...v3.4.1)

---
updated-dependencies:
- dependency-name: Serilog.Expressions
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-14 17:28:52 +02:00
Martin Regen 1fec89b073 Complex types improvements (#1915)
Improvements for complex types.

- Support to encode/decode complex type structures with multidimensional arrays.
- Perf improvements for type loader using new NodeCache fetch multiple interfaces.
- DataTypeDictionary validation when dependencies are used.
- interface for complex type resolver, to build custom types in code.
- improvements of console client to demonstrate browse/read of custom values

+++ Breaking changes +++

IDecoder interface change of the `ReadArray` method

- Return type is now `Array` for all types of arrays. Previously the method returned an array for 1-dim and a `Matrix` type for multidimensional arrays. In addition the convention in generated code is to use `Collection` for all 1-dim arrays, and so was built the `BaseComplexType`. The new convention is to expose the native `Array` type from a complex type, in all cases, hence the return type of `ReadArray` was changed to reflect that for a consistent programming model.
- `ReadArray` has a new parameter `systemType` to efficiently read encodeable types. Previously the `Type` of an encodeable was determined by the encodingid and lookup in the type factory, even when the Type is already known by the caller.  The 'old' style is still supported.
- `ReadArray` supports to read encodeable type arrays which are directly encoded in structures. These arrays differ from standard encoding of arrays and they are handled when `BuiltInType.Null` is used as parameter.
2022-10-04 19:45:26 +02:00
dependabot[bot] b42d37740e Bump Serilog from 2.11.0 to 2.12.0 (#1931)
Bumps [Serilog](https://github.com/serilog/serilog) from 2.11.0 to 2.12.0.
- [Release notes](https://github.com/serilog/serilog/releases)
- [Changelog](https://github.com/serilog/serilog/blob/dev/CHANGES.md)
- [Commits](https://github.com/serilog/serilog/compare/v2.11.0...v2.12.0)

---
updated-dependencies:
- dependency-name: Serilog
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-14 17:24:19 +03:00
dependabot[bot] 35adf40abf Bump Serilog.Sinks.Console from 4.0.1 to 4.1.0
Bumps [Serilog.Sinks.Console](https://github.com/serilog/serilog-sinks-console) from 4.0.1 to 4.1.0.
- [Release notes](https://github.com/serilog/serilog-sinks-console/releases)
- [Commits](https://github.com/serilog/serilog-sinks-console/compare/v4.0.1...v4.1.0)

---
updated-dependencies:
- dependency-name: Serilog.Sinks.Console
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-09-06 10:01:43 +00:00
Martin Regen f273634d74 Improve https transport and other bug fixes (#1908)
-Make the https callbacks fully async / code cleanup. 
-Default https client to use MaxConnectionsToServer = 64 for #1550
-Fix https missing reconnect error code
other fixes unrelated to https:
- move trust list audit event to AuditEvents.cs, fix issue that the event is not filtered since reportAuditEvent cannot be used
- fix an issue when BrowseNext for multiple continuation tokens doesn't add the results array properly
- bump up .NET Core 3.1 Nuget dependencies
- improve .NET reference client app for use with https
2022-08-20 23:44:09 +02:00
Martin Regen 0ad5c4c3a3 Refactor audit events (#1895)
- Move the auditing flag to server internal
- Hook up new configuration setting to the Auditing node
- A Security Admin can change the Audit setting.
- Refactor audit events to be extensions in one class.
- enable auditing and diagnostics by default for higher test coverage.
- refactor dependency of some events to bindings, e.g. TcpServerChannel should not be used as reportevent parameter
2022-08-12 20:04:02 +02:00
dependabot[bot] a16accfae6 Bump Serilog.Expressions from 3.3.0 to 3.4.0 (#1813)
Bumps [Serilog.Expressions](https://github.com/serilog/serilog-expressions) from 3.3.0 to 3.4.0.
- [Release notes](https://github.com/serilog/serilog-expressions/releases)
- [Commits](https://github.com/serilog/serilog-expressions/compare/v3.3.0...v3.4.0)

---
updated-dependencies:
- dependency-name: Serilog.Expressions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-13 10:31:39 +02:00
dependabot[bot] de9d13ff8c Bump Serilog from 2.10.0 to 2.11.0 (#1782)
Bumps [Serilog](https://github.com/serilog/serilog) from 2.10.0 to 2.11.0.
- [Release notes](https://github.com/serilog/serilog/releases)
- [Changelog](https://github.com/serilog/serilog/blob/dev/CHANGES.md)
- [Commits](https://github.com/serilog/serilog/compare/v2.10.0...v2.11.0)

---
updated-dependencies:
- dependency-name: Serilog
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-26 21:42:59 +02:00
Martin Regen 7072fe0771 Improve ref server for use with CTT (#1775)
- Improve formatting and log strings for new alarm node managers.
- Remove the TestData Alarms as they cause issues in the CTT tests
- Add a -ctt option to start the alarms endless for testing, stop alarms in other node managers.
- Unify the way the node managers are created in the quickstarts sample.
- Bring back 'dummy' appveyor config to disable the builds.
- fix codecov build
- add a few more unrelated tests
2022-04-19 09:29:21 +02:00
Martin Regen 8ddda78aff Fix for Usertokenpolicy Anonymous, security policy default should be None (#1756)
- Only an issue if the configuration does not specify the security policy uri for anonymous token
- If the config does not specify the security policy, for anonymous user token the security profile Basic256Sha256 was chosen. 
- This setting requires for the client to trust the server certificate if it tries to connect with security None, may cause IOP issues when no security is chosen and encryption is required for the anonymous user token.
2022-03-30 09:20:13 +02:00
Martin Regen 1263881a7f Adapt logging abstractions version to target framework (#1751)
* fix the nuget versions

* revert targetframework

* avoid build warning
2022-03-28 14:01:42 +03:00
dependabot[bot] 7a3c379114 Bump Serilog.Expressions from 3.2.1 to 3.3.0 (#1714)
Bumps [Serilog.Expressions](https://github.com/serilog/serilog-expressions) from 3.2.1 to 3.3.0.
- [Release notes](https://github.com/serilog/serilog-expressions/releases)
- [Commits](https://github.com/serilog/serilog-expressions/commits/v3.3.0)

---
updated-dependencies:
- dependency-name: Serilog.Expressions
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-24 15:52:40 +01:00
Martin Regen 7d9be41cf5 Doc updates and fixes for .368 preview, ref server improvements (#1695)
- Doc, docs, docs updates for new 368 support
- fix a missing null pointer check when ConditionRefresh is run
- Ref server: move NodeManager factory API to StandardServer, decoupling the NodeManager implementation from Ref server
- Ref server: add shadow mode flag, to allow to map a docker configuration in a mapped folder.
- Ref server: sample batch files how to run Github CR and local docker images
- Improve some misleading 'delete application certificate' log messages.
2022-02-11 09:19:40 +01:00
Martin Regen 8c1a659ecf Reference Server updates running CTT (#1689)
- Provide the CTT configuration used for 1.4.9.398: Added tests with arrays except Variant
- Match the Reference server config for CTT run (Console Server was used, others tbd)
- add a few cases in ref server node manager to enable skipped tests
- preset random generators to create deterministic node data 
CTT fixes:
- Trigger: fix a regression introduced with the TransferSubscription support, Trigger stopped working, revert change to remove LinkedList in MonitoredItems
- return BadDataEncodingUnsupported creating MonitoredItems
- ensure that MonitoredItem node data reported as required by CTT after initial reading, transfer and SetMonitoring

note: not yet 100% passy, a few uncritical failing tests are still under investigation

Co-authored-by: mrsuciu <Mircea-Adrian.Suciu@softing.com>
2022-01-31 13:32:58 +01:00
Martin Regen 74af8cab3e API improvements and minor cleanup / uncritical bug fixes (#1650)
* smaller API changes for .368 and minor cleanup / uncritical bug fixes
* refactor GDS server lib to get rid of UA configuration dependency
* app config builder enhancements to simplify someuse cases
-- add a few default parameter to simplify fluent API
-- Rejected folder doesn't default to pki root
-- if the leaf pki folder is already provided, the default leaf folder is stil added (e.g. becomes own/own)
* certificate validator match were to return true even if no keyId/serial number was checked
* Directory store delete cert add retry if cert is still in use.
* enable reverse connect tests on macOS
* fixes CVE-2020-1045 (High) detected in microsoft.aspnetcore.http.2.1.1.nupkg mregen/UA-.NetStandardLibrary#114
2021-12-30 19:38:38 +02:00
Martin Regen 0011f482a0 Use FrameworkReference for kestrel package for .NET Core App >= 3.1 (#1646)
- Kestrel server is end of life for .NET Core 2.1, only support for .NET framework and netstandard2.0
- Use FrameworkReference to include ASPNET services for .NET Core 3.x and later
- adjust the code signing for bindings.https
- deprecate complextypes.symbols package

- note: only netcoreapp3.1 and net6.0 frameworks yet support latest kestrel and allow to use MS.Ext.Logging library >=5.x with bindings.https. If netstandard2.0 or net462 is used, the Microsoft.Extensions.Logging library >= 3.x cause a TypeException in Microsoft...HttpHeader because a required class became obsolete in Platform.Extensions.
2021-12-23 18:35:20 +01:00
Martin Regen a147eb55c5 Tracing and Logging improvements for the UA Core and libraries (#1631)
- support for Microsoft.Extensions.Logger.ILogger in Opc.Ua.Core as the new logging interface
- backward compatible with config and TraceEvents
- new API Utils.SetLogger allows to set ILogger
- updated Console samples to demonstrate ILogger support with Serilog
- support for EventSource logging
- see Docs/Logging.md for more info
2021-12-16 00:20:08 +01:00
dependabot[bot] 17686499d6 Bump Serilog.Sinks.Console from 4.0.0 to 4.0.1 (#1602)
Bumps [Serilog.Sinks.Console](https://github.com/serilog/serilog-sinks-console) from 4.0.0 to 4.0.1.
- [Release notes](https://github.com/serilog/serilog-sinks-console/releases)
- [Commits](https://github.com/serilog/serilog-sinks-console/compare/v4.0.0...v4.0.1)

---
updated-dependencies:
- dependency-name: Serilog.Sinks.Console
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-11-22 07:47:03 +01:00
Martin Regen 14e7c67a5c Add sample node managers to ref server (#1535)
- add boiler, data and memory buffer sample node managers to reference server
- exclude Quickstarts.Servers from code coverage
2021-10-15 21:12:04 +02:00
dependabot[bot] cff75467fc Bump Mono.Options from 6.6.0.161 to 6.12.0.148 (#1489)
Bumps Mono.Options from 6.6.0.161 to 6.12.0.148.

---
updated-dependencies:
- dependency-name: Mono.Options
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-08-20 12:22:18 +03:00
Alin Moldovean b5421ea391 Compliance fixes for OperationLimits and SetTriggering (#1469) 2021-07-26 11:33:41 +03:00
dependabot[bot] de6f86ac77 Bump Serilog.Sinks.Console from 3.1.1 to 4.0.0 (#1459)
Bumps [Serilog.Sinks.Console](https://github.com/serilog/serilog-sinks-console) from 3.1.1 to 4.0.0.
- [Release notes](https://github.com/serilog/serilog-sinks-console/releases)
- [Commits](https://github.com/serilog/serilog-sinks-console/compare/v3.1.1...v4.0.0)
2021-07-20 09:11:24 +02:00
Martin Regen b9ad021e11 Fix Nuget build (#1445)
Client proj lacks definition of SIGNASSEMBLY, bump nuget dependencies
2021-07-07 09:30:06 +02:00
Martin Regen 0236d082b1 Create client and server test projects, increase test coverage (#1434)
- Add Operation limit parameter and fix server. Fixes #1363 
- Add client/server test projects
- Add client and server fixture for test runs
- Server tests can test services without client connection
- Client tests can use common services to write tests which can run directly on server on via client server connection
- Increase code coverage > 50%
- Code coverage excludes the generated code
- Improve codecoverage local tests with report (see Tests/codecoverage scripts)
- Add a benchmark framework to client server tests
2021-07-06 18:01:54 +02:00
Martin Regen 46ada27179 Add certificate password provider interface to support password protected pfx files. (#1291)
* Add a certificate password provider.
2021-02-23 11:31:42 +02:00
dependabot[bot] 03384234e5 Bump Serilog.Sinks.Debug from 1.0.1 to 2.0.0 (#1287)
Bumps [Serilog.Sinks.Debug](https://github.com/serilog/serilog-sinks-debug) from 1.0.1 to 2.0.0.
- [Release notes](https://github.com/serilog/serilog-sinks-debug/releases)
- [Commits](https://github.com/serilog/serilog-sinks-debug/commits)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-02-18 22:05:37 +01:00
Martin Regen 19a9aa4890 Add Serilog sample to ref servers (#1263)
- the Serilog trace event logger replaces the default log output file 
- optional logging to console / debug
2021-02-02 07:19:30 +01:00
Alin Moldovean 333aadc6f3 Compliance fixes in ReferenceServer (#1241)
Compliance fixes for certificate validation.
Add config flag in ReferenceServer to specify whether  Certificate dialog should be displayed.
2021-01-14 13:52:51 +02:00
Martin Regen 346c4e30c5 Fix codecov upload and Nuget builds (#1175)
- codecov couldn't resolve the source files when deterministic builds are enabled. Run codecoverage with det build option disabled.
- nuget preview build was broken, added ci build for packing libraries.
- add console client to ci build
- fixes #1173, fix dockerfile to use .NET Core 3.1 base image
2020-11-04 09:12:28 +01:00
Martin Regen 62eedc19be Reduce core dependencies, move https binding to optional assembly. (#1157)
* implement transport binding factory
* split https transport into seperate nuget package
* new Opc.Ua.Binding.Https assembly
* Https binding is loaded on demand, if available
* reduce core dependencies to kestrel and others
fixes #600
2020-10-21 00:03:37 +02:00
AlinMoldovean 764c481405 Update Copyright year to 2020 2020-10-07 18:04:34 +03:00
dependabot[bot] 24885aa357 Bump Mono.Options from 5.3.0.1 to 6.6.0.161 (#1034)
Bumps Mono.Options from 5.3.0.1 to 6.6.0.161.

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-10-02 06:31:54 +02:00
Martin Regen 38c37acd8f Add support for netstandard2.1 in core libs and nuget packages (#1110)
- solutions support still VS2017 and VS 2019
- ci now also tests net462 & netcoreapp3.1
- next rev of nuget packages will have netstandard2.1 support
- a few small fixes for netcoreapp3.1
2020-09-04 22:56:20 +02:00
Alin Moldovean cf44debd5e ReverseConnectServer improvements (#1083)
* ReverseConnectServer improvements.
2020-08-07 10:48:28 +03:00
Martin Regen 46cd2d990a - Add the reverse connect in the reference server and a few bug fixes (#1071)
- Support the reverse connections in the reference server
- fix an issue when the anonymous token is sent as a null value by the aggregation server
- fix docker build files
2020-07-30 11:48:28 +02:00
Martin Regen e7d8214798 Fix for self signed certs (#1036)
- The self signed certs should have the CA flag set
- small cleanup fixes for cert code
- make sure public key is always disposed
- breaking change: defaults for certs naming convention was not quite right and it should be a readonly, to make sure policy changes are reflected in calling code
- add test cases for validation of extension
2020-07-06 18:40:51 +02:00
Alin Moldovean 5faf85a7b9 Create Applications folder with ReferenceClient/Server (#1015)
* Clean UA Reference solution

* Move ReferenceClient/Server

* Copy Client/ServerControls libraries
Fix project references

* Rename docs to Docs

* Rename GDS libraries according to naming convention
2020-06-15 09:36:09 +03:00