Commit Graph

14 Commits

Author SHA1 Message Date
Martin Regen 1ff1ae7e52 IOP 2020: Workshop fixes (#916)
- fix to validate structuredefinition if servers do not fill out the DataTypeDefinition correctly
- The GDS creates the CRL cert with its own CA serial number, invalidating the CA by default on some stacks
- complex structuretype must be virtual, non reversible union encoding could not be detected 
- fix binary schema validation, allow the \" character in a qualified name
- support use of simple subtypes in a complex type. For custom and standard subtypes.
- only support structure objects with valuerank scalar or onedimension
2020-03-18 18:49:53 +01:00
Kurt 300d9ffd62 Minor analyzer (roslynator) fixes (#880)
* Use nameof() where applicable

Category: Maintainability
https://github.com/JosefPihrt/Roslynator/blob/master/docs/analyzers/RCS1015.md

* Rethrow original exception

Preserves original stack trace of the exception, easier to diagnose
Category: Maintainability
https://github.com/JosefPihrt/Roslynator/blob/master/docs/analyzers/RCS1044.md
https://stackoverflow.com/a/178464

Remove variable from the catch if not logged (compiler warning).

* Combine Where->FirstOrDefault, use Find if applicable

Category: Performance
https://github.com/JosefPihrt/Roslynator/blob/master/docs/analyzers/RCS1077.md

In ApplicationConfiguration:
ServerSecurityPolicyCollection inherits from List<T>, so use List.Find (better performance than FirstOrDefault)

* Use List.Count rather than LINQ Any()

Category: Performance
https://github.com/JosefPihrt/Roslynator/blob/master/docs/analyzers/RCS1080.md
refsToRemove is a List<T>, which we know the count of (no need to iterate).

* Add [Flags] Attribute for OpenFileMode

Each enum is a bitflag here
Just noticed this is in the "Generated" folder... some prior commits had touched other "Generated" files -- see nameof commit.

* Minor performance behavior

- EventArgs.Empty instead of allocating a new blank EventArgs

It only really happens on Connect/Disconnect so it's not like a single allocation really matters

- Use array[0] instead of First()
https://stackoverflow.com/a/25607951
- Use !Any() instead of Count() == 0
If a dependent field is found, it will stop evaluating the rest and Add instead of Insert. Count() == 0 required evaluation of all

- Use All() instead of FirstOrDefault(any) == null
Clearer intent (all are not matching the group BrowseName => clear default)
Slightly faster as the first match found doesn't have to be compared against null

* Revert changes to generated files

* Fix mistake

fixes compile error
2020-01-09 09:28:37 +02:00
AlinMoldovean 8b374a7448 Copyright year set to 2019 in license notices. 2019-02-14 12:34:33 +02:00
Martin Regen ced33e1957 Improvements for cloud based Gds and V1.04 nodes (#508)
- all changes for cloud based GDS
 - build version of .net standard libs is now set in version.props, it may require updates for the official builds.
  - add new stuff for v1.04 nodeset, e.g. QueryApplications Api
  - gds.client/gds.server common dll changes to support a cloud based GDS.
2018-07-31 13:32:21 +02:00
Martin Regen b9a1a09937 Gds CA provider interface abstraction (#344)
* refactor GDS with a CA provider to allow replacement
* Fill push server list with FindServersOnNetwork
* feedback and issues found in IOP workshop
2018-02-06 14:26:01 +01:00
Martin Regen 9926e40be8 my own CR feedback 2017-12-06 16:55:43 +01:00
Martin Regen fb5a676209 Gds improvements for SPS demo (#35)
* fixes in gds client app to support server push

* race condition with netcore 2.0.3 with docker

* more server entries

* Revert "race condition with netcore 2.0.3 with docker"

This reverts commit d983452e41dc29c1f3d8c5ca1ae7aa683275a68e.

* listener socket loss if AcceptAsync returns synchronous

* crl store misup

* default port for sps

* comment all changes in respect to UA ANSIC server

* all SPS changes

* remove demo code
2017-12-05 14:33:25 +01:00
Martin Regen 394f5baacf Implement cert update, more tests 2017-11-19 01:47:54 +01:00
Martin Regen 28e3e12cef make client tests configurable to use external GDS/push servers 2017-11-17 10:51:13 +01:00
Martin Regen 09fbb05752 Gds work travis (#32)
fix appveyor and travis builds
2017-11-15 09:45:28 +01:00
Martin Regen c87c3f04a6 server configuration
- implement trust list control write
- more test cases
2017-11-12 19:49:15 +01:00
Martin Regen bfeee65f8a enable server push in gds client, add a few test cases 2017-11-09 12:17:28 +01:00
Martin Regen e245446445 start key pair cert tests 2017-10-27 00:04:20 +02:00
Martin Regen 39939759c0 fix test namespace, rename client classes 2017-10-25 15:04:41 +02:00