diff --git a/opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/services/DefaultMethodServiceSet.java b/opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/services/DefaultMethodServiceSet.java index 71300a2d5..136033b56 100644 --- a/opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/services/DefaultMethodServiceSet.java +++ b/opc-ua-sdk/sdk-server/src/main/java/org/eclipse/milo/opcua/sdk/server/services/DefaultMethodServiceSet.java @@ -49,6 +49,11 @@ public void onCall(ServiceRequest service) { return; } + if (methodsToCall.size() > server.getConfig().getLimits().getMaxNodesPerMethodCall().longValue()) { + service.setServiceFault(StatusCodes.Bad_TooManyOperations); + return; + } + DiagnosticsContext diagnosticsContext = new DiagnosticsContext<>(); CallContext context = new CallContext(