Commit Graph
2167 Commits
Author SHA1 Message Date
Rico Suter 8981ab5955 Fix TcpTransportListener resource leak in ServerBase.StopAsync (#3561)
ServerBase.StopAsync() calls Close() on each transport listener then
Clear() on the list. ServerBase.Dispose() later iterates
TransportListeners to call Dispose() on each — but the list is already
empty, so TcpTransportListener.Dispose() never runs.

Add Utils.SilentDispose() after Close() in StopAsync to ensure
TcpTransportListener.Dispose() executes before the list is cleared.
2026-02-19 16:52:40 +01:00
Rico Suter 55bc484704 Fix memory leaks in server disposal (#3560) 2026-02-19 16:52:32 +01:00
raserleandRoman Ettlinger 029a8fbaa6 [Server] Fix generation of UserTokenPolicyIDs (#3525)
* add Equals, change id generation

* add equality operators and gethashcode

* add override Equals

* Copilot issues

* fix TranslateEndpointDescriptionsTest, that relied on ServerUnique UserTokenPolicy Ids

---------

Co-authored-by: Roman Ettlinger <romanett98@gmail.com>
2026-02-11 13:36:28 +01:00
KircMax 39ac3f665a add throwing serviceresultexception with stacktrace (#3539) 2026-02-10 13:48:24 +01:00
KircMax f77e96ea97 add FindIssuerCAByKeyIdentifierAsync (#3535)
* add FindIssuerCAByKeyIdentifierAsync

* remove unnecessary using for Org.BouncyCastle.Asn1.X9
2026-02-10 13:20:43 +01:00
romanett 95fbdaa99a [CTT / ConsoleReferenceServer] Enforce numeric DataTypes for AnalogItem variables. (#3530)
* Enforce numeric DataTypes for AnalogItem variables

Removed creation of non-numeric array AnalogItems and added a check to throw an exception if a non-numeric DataType is used. This ensures AnalogItems are restricted to numeric types, improving type safety and compliance.

* Set default description
2026-02-09 13:39:25 +01:00
Marc Schier 43ce7ed229 Code clean up and improvements (#3532)
This pull request modernizes the OPC UA .NET codebase and tests, removes .NET Standard 2.0 support from certificate/security code, and updates test code to use C# 12 and .NET 8+ features for clarity and maintainability.
- Certificate and BouncyCastle interop files (e.g., CertificateBuilder.cs, X509Extensions.cs, X509SignatureFactory.cs) are refactored to drop NETSTANDARD2_0 support and use modern .NET APIs and conditional compilation.
- Test code across the codebase is updated to use default, strongly-typed Parse methods, collection expressions, and improved async/await patterns.
- Exception handling and assertions in tests are modernized, and test method naming is made consistent with Async suffixes.
- The project and build files are updated to clarify Roslynator analyzer usage and remove obsolete netstandard tags.
- General code and test cleanup includes improved null safety, type safety, and removal of deprecated or unused code.
2026-02-09 13:37:06 +01:00
Marc Schier bafd63db5a Hook lookup of symbol in types project and set hook in opc ua core on assembly loading (#3520)
* Hook lookup of symbol in types project and set hook in opc ua core on assembly loading

* Use module initializer instead of static constructor
2026-02-06 17:10:26 +01:00
Marc SchierandCopilot 0d92760547 Ignore 0 references in data dictionary and provide better logging. (#3521)
* Ignore 0 references in data dictionary and provide better logging.

* Update Libraries/Opc.Ua.Client.ComplexTypes/ComplexTypeSystem.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-02-06 11:49:36 +01:00
Robert Richter 6d539c9e92 fix minor xml docs copy error (#3518) 2026-02-06 11:49:10 +01:00
romanett 6eca246166 Improve logging and fix UserNameIdentityToken to return BadIdentityTokenInvalid for failed verification (#3514)
* Improve  logging and fix UserNameIdentityToken to return BadIdentityTokenInvalid for failed verification

Refactor DataChangeQueueHandler to return overflow status from QueueValue and Enqueue, updating MonitoredItem to log overflows accurately. Update IDataChangeQueueHandler interface accordingly. Enhance ConsoleTelemetry logger configuration management and ensure proper disposal of old logger factories.
Change UserNameIdentityToken password/nonce failure to return BadIdentityTokenInvalid for more precise error reporting. To prevent the leakage of information useful to attackers, Servers shall ensure that the process of validating UserIdentityTokens completes in a fixed interval independent of whether an error occurs or not. The process of validation includes decrypting, check for padding and checking for a valid nonce. If any errors occur the return code is Bad_IdentityTokenInvalid.

* fix GDS ApplicationNames to include the Locale

* fix ctt testcase by allowing faster sampling for XmlNodeNode
2026-02-05 11:57:12 +01:00
Suciu Mircea Adrian 0cb20d6c74 Respect configured RSA key size when creating app certificates (#3513) 2026-02-02 10:11:09 +02:00
romanett 219f0e14ad revert breaking changes for 1.5.378 (#3508)
* revert breaking changes

* Add TrustList for backcompat

* revert more changes
2026-01-27 21:24:26 +01:00
Copilotandromanett 3580d28c7e Fix OperationLimits to apply min(client, server) logic per documentation (#3503)
* Initial plan

* Implement OperationLimits min logic and add tests

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>
2026-01-27 16:43:52 +01:00
romanett c26de8df0d Modified error handling to raise publish error events for (#3502)
BadNoSubscription if there are active subscriptions.
Fix typo in param name .
2026-01-27 07:44:07 +01:00
romanett 6765151a00 Fix EndpointIncomingRequest to do serviceLookup at invocation time instead of construction. This makes the object smaller and fixes a bug where the transport channel response was not sent due to unhandled exception (#3505) 2026-01-27 07:42:01 +01:00
romanett 8966e1d358 [Server] Use Classes instead of Interfaces for NodeManagers to ensure compatibility for 1.5.378 (#3497)
* Point to concrete classes instead of interfaces

* cleanup
2026-01-25 19:12:32 +01:00
Copilotandmarcschier 9f335c39d8 Change DebugCheck conditional compilation from DEBUG to CHECKED (#3496)
* Initial plan

* Change [Conditional("DEBUG")] to [Conditional("CHECKED")] in DebugCheck methods

Co-authored-by: marcschier <11168470+marcschier@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: marcschier <11168470+marcschier@users.noreply.github.com>
2026-01-24 05:42:59 +01:00
Alexander KöpkeandMarc Schier d511adc507 Extend NodeSet Export (#3491)
* Add per-namespace NodeSet2 export and CLI option

Implemented ExportNodesToNodeSet2PerNamespaceAsync in ClientSamples to export nodes into separate NodeSet2 XML files per namespace, excluding OPC Foundation companion specs. Added a helper for safe filename generation. Introduced a new -e/--export command-line option in Program.cs to trigger this export after node fetching. Also added System.Xml.Linq import for potential XML handling.

* Add NodeSetExportOptions for flexible NodeSet2 export

Introduce NodeSetExportOptions to control which attributes and values are exported to NodeSet2 XML, with Default, Minimal, and Complete presets. Overload ExportNodesToNodeSet2 to accept these options and update internal logic accordingly. Update CreateNodeState to honor export preferences. Add comprehensive unit tests for all export modes and ensure backward compatibility. Update ClientSamples to use Complete export mode.

* Refactor NodeSet export options for minimal default output

- Change ExportValues default to false; values only for Complete option
- Remove ExportUserAccessLevel and ExportMethodDeclarationId options
- Always export MethodDeclarationId; export UserAccessLevel only if different from AccessLevel
- Remove Minimal option; Default now produces minimal schema output
- Update export logic and tests to reflect new option semantics
- Rename and revise unit test to verify new default and complete behaviors

* Remove unused BitVector32 import

* Add ExportUserContext option to NodeSet2 export

Introduce ExportUserContext to NodeSetExportOptions, allowing selective export of user context attributes (UserAccessLevel, UserExecutable, UserWriteMask, UserRolePermissions) in NodeSet2 files. Update export logic to honor this option and add unit tests to verify correct behavior. This enhances flexibility and control over exported user-specific metadata.


---------

Co-authored-by: Marc Schier <marcschier@users.noreply.github.com>
2026-01-22 08:39:42 +01:00
Copilotandromanett d71ee2a13a Add async callback support to TrustList implementation (#3483)
* Initial plan

* Add async callback support to TrustList implementation

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* Fix redundant security check in OpenAsync

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* Fix audit logging parameters in RemoveCertificateAsync

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* Refactor TrustList to use async core implementation with sync wrappers

Based on feedback, changed approach:
- Make internal implementation async (OpenCoreAsync, etc.)
- Sync methods now wrap async using .AsTask().GetAwaiter().GetResult()
- Both OnCall and OnCallAsync handlers registered
- Eliminates .GetAwaiter().GetResult() in async paths

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* Add ConfigureAwait(false) to sync wrapper methods

Prevents potential deadlocks by adding ConfigureAwait(false) before GetAwaiter().GetResult() in all sync wrapper methods. Also made the pattern consistent across all methods.

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* Add CancellationToken support to helper methods

Updated UpdateStoreCertificatesAsync and UpdateStoreCrlsAsync to properly propagate CancellationToken through all async operations. Ensures consistent async patterns throughout the implementation.

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>
2026-01-20 15:04:41 +01:00
dependabot[bot]andMarc Schier 424f53fd98 Bump Microsoft.Extensions.Logging from 10.0.1 to 10.0.2 (#3488)
* Bump Microsoft.Extensions.Logging from 10.0.1 to 10.0.2

---
updated-dependencies:
- dependency-name: Microsoft.Extensions.Logging
  dependency-version: 10.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

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

* Update

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marc Schier <marcschier@hotmail.com>
2026-01-20 13:17:26 +01:00
dependabot[bot] 4f089ba86b Bump System.Collections.Immutable from 10.0.1 to 10.0.2 (#3490)
---
updated-dependencies:
- dependency-name: System.Collections.Immutable
  dependency-version: 10.0.2
  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>
2026-01-20 09:58:19 +01:00
dependabot[bot] 12704afa68 Bump Microsoft.AspNetCore.Server.Kestrel and Microsoft.AspNetCore.Server.Kestrel.Core (#3485)
Bumps Microsoft.AspNetCore.Server.Kestrel from 2.3.0 to 2.3.9
Bumps Microsoft.AspNetCore.Server.Kestrel.Core from 2.3.6 to 2.3.8

---
updated-dependencies:
- dependency-name: Microsoft.AspNetCore.Server.Kestrel
  dependency-version: 2.3.9
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: Microsoft.AspNetCore.Server.Kestrel.Core
  dependency-version: 2.3.8
  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>
2026-01-20 08:16:07 +01:00
dependabot[bot] f2ac68f10f Bump Microsoft.Extensions.Configuration and Microsoft.Extensions.Configuration.EnvironmentVariables (#3487)
Bumps Microsoft.Extensions.Configuration from 10.0.1 to 10.0.2
Bumps Microsoft.Extensions.Configuration.EnvironmentVariables from 10.0.1 to 10.0.2

---
updated-dependencies:
- dependency-name: Microsoft.Extensions.Configuration
  dependency-version: 10.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: Microsoft.Extensions.Configuration.EnvironmentVariables
  dependency-version: 10.0.2
  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>
2026-01-20 08:15:38 +01:00
Copilotandromanett 3561c68784 Document certificate validation workflow with chain building and configuration details (#3481)
* Initial plan

* Document certificate validation workflow in Certificates.md

- Add comprehensive Certificate Validation section
- Document validation workflow and steps
- List all configuration settings with defaults and examples
- Enumerate suppressible validation errors
- Provide examples for registering validation callbacks
- Show how to implement custom certificate validators
- Include best practices for certificate validation

Addresses the issue by documenting the CertificateValidator.cs
implementation including config settings and suppressible errors.

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* Fix trailing whitespace in Certificates.md per .editorconfig

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* Add detailed chain building technical documentation

- Add comprehensive Chain Building Process section with diagram
- Include ASCII flowchart showing complete validation flow
- Add pseudocode for all chain building steps:
  - Initialization and loop structure
  - Three-tier issuer search (Trusted → Issuer → Untrusted)
  - Issuer matching algorithm with criteria
  - CRL checking logic with revocation handling
  - X509Chain integration and validation
- Document search priority and trust anchoring behavior
- Add key behaviors section explaining design decisions
- Link from validation workflow to detailed section

Addresses feedback requesting more technical detail, diagram,
and pseudocode visualization of the chain building process.

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* Add certificate list configuration documentation

- Add Certificate List Configuration section (~190 lines)
- Document configuration sources (XML config and runtime API)
- Provide XML configuration structure with examples
- Explain certificate store types (Directory and X509Store)
- Detail certificate list population process:
  - Initialization via ApplicationConfiguration
  - Internal update process
  - Certificate search behavior and priority
- Add runtime certificate management examples
- Document certificate store management (file operations)
- Explain dual-mode operation (explicit list + store)
- Include configuration best practices
- Link from Trust Check step to configuration section

Addresses feedback requesting details on where certificate
lists are configured and populated.

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>
2026-01-19 15:44:11 +01:00
e314cf53f7 Fix SourceTimestamp for variables without explicit timestamps in BaseVariableState (#3451)
* Initial plan

* Add OnReadValue callback to update timestamps on variable reads

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* Add test to verify timestamp updates on variable reads

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* fix timestamp for scalar values

set loglevel in session publish when no subscriptions

ignore more keepalive errors in Client Fixture

* Fix timestamp updates for all variables (scalars and arrays)

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* create a proper fix

* Add Order parameter to test to check the timestamp before an explicit write was done

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>
Co-authored-by: Roman Ettlinger <romanett98@gmail.com>
2026-01-19 15:18:28 +01:00
Marc Schier 0497953af2 Change license reference in copilot agents file (#3479) 2026-01-15 18:16:21 +01:00
Marc Schier 78a9ba2ffa Set correct target framework for long running test (#3474)
* Set correct target framework

* Split long and short haul tests but maintain most of the current code
2026-01-14 16:21:59 +01:00
Marc SchierandCopilot 773af55ffd Fix session reconnect handler (#3471)
* Fix session reconnect handler

* Update Libraries/Opc.Ua.Client/Session/SessionReconnectHandler.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-14 07:35:04 +01:00
288f02f20a Allow status code variant creation from uint (#3472)
* Allow status code variant creation from uint

* Initial plan

* Add comprehensive tests for StatusCode variant creation from uint

Co-authored-by: marcschier <11168470+marcschier@users.noreply.github.com>

* Remove redundant assertions in StatusCode variant tests

Co-authored-by: marcschier <11168470+marcschier@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: marcschier <11168470+marcschier@users.noreply.github.com>
2026-01-14 06:12:00 +01:00
dependabot[bot] 21949f8627 Bump Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets from 2.3.0 to 2.3.9 (#3466)
---
updated-dependencies:
- dependency-name: Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets
  dependency-version: 2.3.9
  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>
2026-01-13 11:47:29 +01:00
dependabot[bot] 643fe13555 Bump NUnit3TestAdapter from 6.0.1 to 6.1.0 (#3467)
---
updated-dependencies:
- dependency-name: NUnit3TestAdapter
  dependency-version: 6.1.0
  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>
2026-01-13 11:47:12 +01:00
dependabot[bot] bdb8969c06 Bump Microsoft.AspNetCore.Http from 2.3.0 to 2.3.9 (#3462)
---
updated-dependencies:
- dependency-name: Microsoft.AspNetCore.Http
  dependency-version: 2.3.9
  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>
2026-01-12 18:57:14 +01:00
Copilotandromanett 0713e8fcc4 Suppress expected keepalive errors during test shutdown (#3458)
* Initial plan

* Suppress BadServerHalted/BadNoCommunication keepalive errors in test logger

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* Add null-conditional operators for safer null handling

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>
2026-01-12 18:25:53 +01:00
Copilotandromanett 78a54705ce Handle BadRequestTimeout gracefully in Publish error handling (#3460)
* Initial plan

* Handle BadRequestTimeout gracefully in publish error handling

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>
2026-01-12 13:09:46 +01:00
romanett f7c3c4e18f Fix Server/ServerStatus/State SourceTimestamp. Fix Reference Server config, not loading OperationLimits due to wrong order. (#3454)
* fix ServerSourceTimestamp

* fix OperationLimits not being set for ReferenceServer
2026-01-12 13:09:15 +01:00
Copilotandromanett 9e192c6671 Fix ObjectDisposedException in SubscriptionManager background tasks on shutdown (#3456)
* Initial plan

* Fix ObjectDisposedException in SubscriptionManager background tasks

Add ObjectDisposedException handling in PublishSubscriptionsAsync and ConditionRefreshWorkerAsync to gracefully handle shutdown race condition where semaphore/events are disposed while background tasks are still running.

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* Update log messages to differentiate normal and disposed shutdown paths

Added clarification in log messages to indicate when tasks exit due to ObjectDisposedException during shutdown, making it easier to distinguish from normal shutdown in logs.

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>
2026-01-12 08:07:33 +01:00
romanett 8b11d2bfa8 [Server] Add several interfaces to improve testability & prepare for Dependency Injection (#3448)
* add server interfaces

* Add IConfigurationNodeManager, IDiagnosticsNodeManager, IMasterNodeManager, IStandardServer, IApplicationInstance interfaces to Server. Add IMainNodeManagerFactory to create Diagnostics & MainNodeManager

* Use IApplicationInstance interface where appropriate

* fix review feedback
2026-01-12 08:06:12 +01:00
Tobias Frick 05f7023d29 Fix two bugs in MonitoredItem (client side) (#3447)
- Fix bug in MonitoredItem.Publish (for loop was never executed)
- MonitoredItem.CacheQueueSize property was not serialized
- Add unit tests for MonitoredItems
2026-01-12 08:05:05 +01:00
Tobias Frick 30f9359a52 Fix Session.Save to only save specified subscriptions (#3446)
- Use the subscriptions parameter instead of this.Subscriptions
- Add test to verify only specified subscriptions are saved
2026-01-09 09:06:56 +09:00
wxmayifei 6ab1bf7a5d fix format string (#3441) 2026-01-08 21:16:37 +09:00
romanett a3a6709d6f Refactor server for full async subscription management (#3442)
Refactor to make OPC UA server subscription and monitored item management fully asynchronous, improving scalability and responsiveness. All key methods in ISubscription, ISubscriptionManager, and related classes are now async, with synchronous counterparts removed.
2026-01-08 21:16:12 +09:00
romanett 5c80f9bc5a [Client & Server] Remove all usages of SoftwareCertificates (#3443)
* remove all usages of SoftwareCertificates
- Client
- Server

As per spec they are not relevant for security.
If an SDK User wants to use the SoftwareCertificates ActivateSession can be overriden

* remove from SessionClientBatchTests
2026-01-08 21:12:07 +09:00
dependabot[bot] 7ec6788ecf Bump NUnit.Console from 3.21.1 to 3.22.0 (#3440)
---
updated-dependencies:
- dependency-name: NUnit.Console
  dependency-version: 3.22.0
  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>
2026-01-06 16:02:08 +09:00
e92e469923 [GDS] Add configurable validation limits for trust list file read/write operations (#3411)
* Initial plan

* Add trust list file size validation with configurable limits

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* Fix potential integer overflow in trust list size validation

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* Fix integer overflow in client trust list read validation

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* Add comprehensive tests for trust list size validation

Add TrustListValidationTest with tests for:
- Normal-sized trust lists (verify basic functionality)
- Trust lists exceeding 16MB limit (verify BadEncodingLimitsExceeded error)
- Trust lists just under limit (~15MB) (verify boundary condition)

Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>

* Make limits configurable on client side

* fix tests

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: romanett <7413710+romanett@users.noreply.github.com>
Co-authored-by: Roman Ettlinger <romanett98@gmail.com>
2026-01-06 11:33:23 +09:00
romanett 1806172500 only run test on net 10, only print per node status in debug runs (#3439) 2026-01-06 11:32:15 +09:00
dependabot[bot] 0e18d5c256 Bump Roslynator.Formatting.Analyzers from 4.14.1 to 4.15.0 (#3435)
---
updated-dependencies:
- dependency-name: Roslynator.Formatting.Analyzers
  dependency-version: 4.15.0
  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>
2025-12-31 09:34:34 +09:00
dependabot[bot]andMarc Schier 90156aee98 Bump System.Collections.Immutable from 10.0.0 to 10.0.1 (#3436)
---
updated-dependencies:
- dependency-name: System.Collections.Immutable
  dependency-version: 10.0.1
  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>
Co-authored-by: Marc Schier <marcschier@users.noreply.github.com>
2025-12-31 09:33:53 +09:00
dependabot[bot] 03af6458bc Bump System.Formats.Asn1 from 10.0.0 to 10.0.1 (#3437)
---
updated-dependencies:
- dependency-name: System.Formats.Asn1
  dependency-version: 10.0.1
  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>
2025-12-31 09:33:33 +09:00
dependabot[bot] 75be609b10 Bump System.Text.Json from 10.0.0 to 10.0.1 (#3438)
---
updated-dependencies:
- dependency-name: System.Text.Json
  dependency-version: 10.0.1
  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>
2025-12-30 12:46:34 +09:00