diff --git a/devolutions-gateway/openapi/doc/index.adoc b/devolutions-gateway/openapi/doc/index.adoc index 8ccf63f32..6910ffa17 100644 --- a/devolutions-gateway/openapi/doc/index.adoc +++ b/devolutions-gateway/openapi/doc/index.adoc @@ -1023,6 +1023,11 @@ The archive always contains `recording.json` and every clip listed in that manif | Recording not found | <<>> + +| 413 +| Recording package exceeds download size or file-count limits +| <<>> + |=== @@ -4394,6 +4399,13 @@ Current auto-update schedule for Devolutions Agent. |=== | Field Name| Required| Nullable | Type| Description | Format +| connection_options +| +| X +| <> +| +| + | host_to_resolve | | X @@ -4413,7 +4425,7 @@ Current auto-update schedule for Devolutions Agent. | | <> | -| get-version, get-agent-version, get-running-session-count, get-recording-storage-health, provision-token, provision-credentials, resolve-host, +| get-version, get-agent-version, get-running-session-count, get-recording-storage-health, provision-token, provision-credentials, resolve-host, provision-connection-options, | proxy_credential | @@ -4433,14 +4445,14 @@ Current auto-update schedule for Devolutions Agent. | | X | Integer -| Minimum persistence duration in seconds for the data provisioned via this operation. Optional parameter for \"provision-token\" and \"provision-credentials\" kinds. +| Minimum persistence duration in seconds for the data provisioned via this operation. Optional parameter for \"provision-token\", \"provision-credentials\", and \"provision-connection-options\" kinds. | int32 | token | | X | String -| The token to be stored on the proxy-side. Required for \"provision-token\" and \"provision-credentials\" kinds. +| The token to be stored on the proxy-side. Required for \"provision-token\", \"provision-credentials\", and \"provision-connection-options\" kinds. | |=== @@ -4467,6 +4479,7 @@ Current auto-update schedule for Devolutions Agent. | provision-token | provision-credentials | resolve-host +| provision-connection-options |=== @@ -4951,6 +4964,28 @@ Subscriber configuration +[#TargetConnectionOptions] +=== _TargetConnectionOptions_ + + + + +[.fields-TargetConnectionOptions] +[cols="2,1,1,2,4,1"] +|=== +| Field Name| Required| Nullable | Type| Description | Format + +| krb_kdc +| +| X +| String +| Kerberos KDC address for the target-side CredSSP connection. Format: `://:` (port is required). Supported schemes are `tcp` and `udp`. +| + +|=== + + + [#TrafficEventResponse] === _TrafficEventResponse_ diff --git a/devolutions-gateway/openapi/dotnet-client/.openapi-generator/FILES b/devolutions-gateway/openapi/dotnet-client/.openapi-generator/FILES index d175e6c2e..90efa2314 100644 --- a/devolutions-gateway/openapi/dotnet-client/.openapi-generator/FILES +++ b/devolutions-gateway/openapi/dotnet-client/.openapi-generator/FILES @@ -63,6 +63,7 @@ docs/SetConfigResponse.md docs/SetUpdateScheduleRequest.md docs/SubProvisionerKey.md docs/Subscriber.md +docs/TargetConnectionOptions.md docs/TrafficApi.md docs/TrafficEventResponse.md docs/TransportProtocolResponse.md @@ -154,6 +155,7 @@ src/Devolutions.Gateway.Client/Model/SetConfigResponse.cs src/Devolutions.Gateway.Client/Model/SetUpdateScheduleRequest.cs src/Devolutions.Gateway.Client/Model/SubProvisionerKey.cs src/Devolutions.Gateway.Client/Model/Subscriber.cs +src/Devolutions.Gateway.Client/Model/TargetConnectionOptions.cs src/Devolutions.Gateway.Client/Model/TrafficEventResponse.cs src/Devolutions.Gateway.Client/Model/TransportProtocolResponse.cs src/Devolutions.Gateway.Client/Model/UpdateProductInfo.cs diff --git a/devolutions-gateway/openapi/dotnet-client/README.md b/devolutions-gateway/openapi/dotnet-client/README.md index c7b5aafc6..c77d0ee47 100644 --- a/devolutions-gateway/openapi/dotnet-client/README.md +++ b/devolutions-gateway/openapi/dotnet-client/README.md @@ -5,7 +5,7 @@ Protocol-aware fine-grained relay server This C# SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project: - API version: 2026.2.4 -- SDK version: 2025.12.2 +- SDK version: 2026.2.4 - Generator version: 7.9.0 - Build package: org.openapitools.codegen.languages.CSharpClientCodegen @@ -227,6 +227,7 @@ Class | Method | HTTP request | Description - [Model.SetUpdateScheduleRequest](docs/SetUpdateScheduleRequest.md) - [Model.SubProvisionerKey](docs/SubProvisionerKey.md) - [Model.Subscriber](docs/Subscriber.md) + - [Model.TargetConnectionOptions](docs/TargetConnectionOptions.md) - [Model.TrafficEventResponse](docs/TrafficEventResponse.md) - [Model.TransportProtocolResponse](docs/TransportProtocolResponse.md) - [Model.UpdateProductInfo](docs/UpdateProductInfo.md) diff --git a/devolutions-gateway/openapi/dotnet-client/config.json b/devolutions-gateway/openapi/dotnet-client/config.json index 739669f08..59ff6458b 100644 --- a/devolutions-gateway/openapi/dotnet-client/config.json +++ b/devolutions-gateway/openapi/dotnet-client/config.json @@ -2,7 +2,7 @@ "packageAuthors": "Devolutions Inc.", "packageName": "Devolutions.Gateway.Client", "packageTitle": "Devolutions Gateway REST API Client", - "packageVersion": "2025.12.2", + "packageVersion": "2026.2.4", "packageDescription": "Client for Devolutions Gateway REST API", "packageGuid": "EF1E8A60-F71D-4F02-A779-B113740FF5CC", "packageCopyright": "© Devolutions Inc. All rights reserved.", diff --git a/devolutions-gateway/openapi/dotnet-client/docs/JrecApi.md b/devolutions-gateway/openapi/dotnet-client/docs/JrecApi.md index bcdc392d0..5777700ac 100644 --- a/devolutions-gateway/openapi/dotnet-client/docs/JrecApi.md +++ b/devolutions-gateway/openapi/dotnet-client/docs/JrecApi.md @@ -509,6 +509,7 @@ catch (ApiException e) | **401** | Invalid or missing authorization token | - | | **403** | Insufficient permissions | - | | **404** | Recording not found | - | +| **413** | Recording package exceeds download size or file-count limits | - | [[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md) diff --git a/devolutions-gateway/openapi/dotnet-client/docs/PreflightOperation.md b/devolutions-gateway/openapi/dotnet-client/docs/PreflightOperation.md index 022b2843f..4c16436b1 100644 --- a/devolutions-gateway/openapi/dotnet-client/docs/PreflightOperation.md +++ b/devolutions-gateway/openapi/dotnet-client/docs/PreflightOperation.md @@ -4,13 +4,14 @@ Name | Type | Description | Notes ------------ | ------------- | ------------- | ------------- +**ConnectionOptions** | [**TargetConnectionOptions**](TargetConnectionOptions.md) | | [optional] **HostToResolve** | **string** | The hostname to perform DNS resolution on. Required for \"resolve-host\" kind. | [optional] **Id** | **Guid** | Unique ID identifying the preflight operation. | **Kind** | **PreflightOperationKind** | | **ProxyCredential** | [**AppCredential**](AppCredential.md) | | [optional] **TargetCredential** | [**AppCredential**](AppCredential.md) | | [optional] -**TimeToLive** | **int?** | Minimum persistence duration in seconds for the data provisioned via this operation. Optional parameter for \"provision-token\" and \"provision-credentials\" kinds. | [optional] -**Token** | **string** | The token to be stored on the proxy-side. Required for \"provision-token\" and \"provision-credentials\" kinds. | [optional] +**TimeToLive** | **int?** | Minimum persistence duration in seconds for the data provisioned via this operation. Optional parameter for \"provision-token\", \"provision-credentials\", and \"provision-connection-options\" kinds. | [optional] +**Token** | **string** | The token to be stored on the proxy-side. Required for \"provision-token\", \"provision-credentials\", and \"provision-connection-options\" kinds. | [optional] [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) diff --git a/devolutions-gateway/openapi/dotnet-client/docs/TargetConnectionOptions.md b/devolutions-gateway/openapi/dotnet-client/docs/TargetConnectionOptions.md new file mode 100644 index 000000000..a36ae387a --- /dev/null +++ b/devolutions-gateway/openapi/dotnet-client/docs/TargetConnectionOptions.md @@ -0,0 +1,10 @@ +# Devolutions.Gateway.Client.Model.TargetConnectionOptions + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**KrbKdc** | **string** | Kerberos KDC address for the target-side CredSSP connection. Format: `<scheme>://<host>:<port>` (port is required). Supported schemes are `tcp` and `udp`. | [optional] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Client/Configuration.cs b/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Client/Configuration.cs index 29990bcfa..9c961ae27 100644 --- a/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Client/Configuration.cs +++ b/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Client/Configuration.cs @@ -34,7 +34,7 @@ public class Configuration : IReadableConfiguration /// Version of the package. /// /// Version of the package. - public const string Version = "2025.12.2"; + public const string Version = "2026.2.4"; /// /// Identifier for ISO 8601 DateTime Format @@ -118,7 +118,7 @@ public class Configuration : IReadableConfiguration public Configuration() { Proxy = null; - UserAgent = WebUtility.UrlEncode("OpenAPI-Generator/2025.12.2/csharp"); + UserAgent = WebUtility.UrlEncode("OpenAPI-Generator/2026.2.4/csharp"); BasePath = "http://localhost"; DefaultHeaders = new ConcurrentDictionary(); ApiKey = new ConcurrentDictionary(); @@ -541,7 +541,7 @@ public static string ToDebugReport() report += " OS: " + System.Environment.OSVersion + "\n"; report += " .NET Framework Version: " + System.Environment.Version + "\n"; report += " Version of the API: 2026.2.4\n"; - report += " SDK Package Version: 2025.12.2\n"; + report += " SDK Package Version: 2026.2.4\n"; return report; } diff --git a/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Devolutions.Gateway.Client.csproj b/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Devolutions.Gateway.Client.csproj index 7bd2e928c..ca03aa33f 100644 --- a/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Devolutions.Gateway.Client.csproj +++ b/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Devolutions.Gateway.Client.csproj @@ -12,7 +12,7 @@ Client for Devolutions Gateway REST API © Devolutions Inc. All rights reserved. Devolutions.Gateway.Client - 2025.12.2 + 2026.2.4 bin\$(Configuration)\$(TargetFramework)\Devolutions.Gateway.Client.xml MIT OR Apache-2.0 https://github.com/Devolutions/devolutions-gateway.git diff --git a/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Model/PreflightOperation.cs b/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Model/PreflightOperation.cs index 295d042dd..59212a095 100644 --- a/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Model/PreflightOperation.cs +++ b/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Model/PreflightOperation.cs @@ -47,17 +47,19 @@ protected PreflightOperation() { } /// /// Initializes a new instance of the class. /// + /// connectionOptions. /// The hostname to perform DNS resolution on. Required for \"resolve-host\" kind.. /// Unique ID identifying the preflight operation. (required). /// kind (required). /// proxyCredential. /// targetCredential. - /// Minimum persistence duration in seconds for the data provisioned via this operation. Optional parameter for \"provision-token\" and \"provision-credentials\" kinds.. - /// The token to be stored on the proxy-side. Required for \"provision-token\" and \"provision-credentials\" kinds.. - public PreflightOperation(string hostToResolve = default(string), Guid id = default(Guid), PreflightOperationKind kind = default(PreflightOperationKind), AppCredential proxyCredential = default(AppCredential), AppCredential targetCredential = default(AppCredential), int? timeToLive = default(int?), string token = default(string)) + /// Minimum persistence duration in seconds for the data provisioned via this operation. Optional parameter for \"provision-token\", \"provision-credentials\", and \"provision-connection-options\" kinds.. + /// The token to be stored on the proxy-side. Required for \"provision-token\", \"provision-credentials\", and \"provision-connection-options\" kinds.. + public PreflightOperation(TargetConnectionOptions connectionOptions = default(TargetConnectionOptions), string hostToResolve = default(string), Guid id = default(Guid), PreflightOperationKind kind = default(PreflightOperationKind), AppCredential proxyCredential = default(AppCredential), AppCredential targetCredential = default(AppCredential), int? timeToLive = default(int?), string token = default(string)) { this.Id = id; this.Kind = kind; + this.ConnectionOptions = connectionOptions; this.HostToResolve = hostToResolve; this.ProxyCredential = proxyCredential; this.TargetCredential = targetCredential; @@ -65,6 +67,12 @@ protected PreflightOperation() { } this.Token = token; } + /// + /// Gets or Sets ConnectionOptions + /// + [DataMember(Name = "connection_options", EmitDefaultValue = true)] + public TargetConnectionOptions ConnectionOptions { get; set; } + /// /// The hostname to perform DNS resolution on. Required for \"resolve-host\" kind. /// @@ -92,16 +100,16 @@ protected PreflightOperation() { } public AppCredential TargetCredential { get; set; } /// - /// Minimum persistence duration in seconds for the data provisioned via this operation. Optional parameter for \"provision-token\" and \"provision-credentials\" kinds. + /// Minimum persistence duration in seconds for the data provisioned via this operation. Optional parameter for \"provision-token\", \"provision-credentials\", and \"provision-connection-options\" kinds. /// - /// Minimum persistence duration in seconds for the data provisioned via this operation. Optional parameter for \"provision-token\" and \"provision-credentials\" kinds. + /// Minimum persistence duration in seconds for the data provisioned via this operation. Optional parameter for \"provision-token\", \"provision-credentials\", and \"provision-connection-options\" kinds. [DataMember(Name = "time_to_live", EmitDefaultValue = true)] public int? TimeToLive { get; set; } /// - /// The token to be stored on the proxy-side. Required for \"provision-token\" and \"provision-credentials\" kinds. + /// The token to be stored on the proxy-side. Required for \"provision-token\", \"provision-credentials\", and \"provision-connection-options\" kinds. /// - /// The token to be stored on the proxy-side. Required for \"provision-token\" and \"provision-credentials\" kinds. + /// The token to be stored on the proxy-side. Required for \"provision-token\", \"provision-credentials\", and \"provision-connection-options\" kinds. [DataMember(Name = "token", EmitDefaultValue = true)] public string Token { get; set; } @@ -113,6 +121,7 @@ public override string ToString() { StringBuilder sb = new StringBuilder(); sb.Append("class PreflightOperation {\n"); + sb.Append(" ConnectionOptions: ").Append(ConnectionOptions).Append("\n"); sb.Append(" HostToResolve: ").Append(HostToResolve).Append("\n"); sb.Append(" Id: ").Append(Id).Append("\n"); sb.Append(" Kind: ").Append(Kind).Append("\n"); diff --git a/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Model/PreflightOperationKind.cs b/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Model/PreflightOperationKind.cs index c279556ed..7ec380fdd 100644 --- a/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Model/PreflightOperationKind.cs +++ b/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Model/PreflightOperationKind.cs @@ -73,7 +73,13 @@ public enum PreflightOperationKind /// Enum ResolveHost for value: resolve-host /// [EnumMember(Value = "resolve-host")] - ResolveHost = 7 + ResolveHost = 7, + + /// + /// Enum ProvisionConnectionOptions for value: provision-connection-options + /// + [EnumMember(Value = "provision-connection-options")] + ProvisionConnectionOptions = 8 } public static class PreflightOperationKindExtensions @@ -99,6 +105,8 @@ public static string ToValue(this PreflightOperationKind variant) return "provision-credentials"; case PreflightOperationKind.ResolveHost: return "resolve-host"; + case PreflightOperationKind.ProvisionConnectionOptions: + return "provision-connection-options"; default: throw new ArgumentOutOfRangeException(nameof(variant), $"Unexpected variant: {variant}"); } diff --git a/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Model/TargetConnectionOptions.cs b/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Model/TargetConnectionOptions.cs new file mode 100644 index 000000000..8e7e742d0 --- /dev/null +++ b/devolutions-gateway/openapi/dotnet-client/src/Devolutions.Gateway.Client/Model/TargetConnectionOptions.cs @@ -0,0 +1,85 @@ +/* + * devolutions-gateway + * + * Protocol-aware fine-grained relay server + * + * The version of the OpenAPI document: 2026.2.4 + * Contact: infos@devolutions.net + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using FileParameter = Devolutions.Gateway.Client.Client.FileParameter; +using OpenAPIDateConverter = Devolutions.Gateway.Client.Client.OpenAPIDateConverter; + +namespace Devolutions.Gateway.Client.Model +{ + /// + /// TargetConnectionOptions + /// + [DataContract(Name = "TargetConnectionOptions")] + public partial class TargetConnectionOptions : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// Kerberos KDC address for the target-side CredSSP connection. Format: `<scheme>://<host>:<port>` (port is required). Supported schemes are `tcp` and `udp`.. + public TargetConnectionOptions(string krbKdc = default(string)) + { + this.KrbKdc = krbKdc; + } + + /// + /// Kerberos KDC address for the target-side CredSSP connection. Format: `<scheme>://<host>:<port>` (port is required). Supported schemes are `tcp` and `udp`. + /// + /// Kerberos KDC address for the target-side CredSSP connection. Format: `<scheme>://<host>:<port>` (port is required). Supported schemes are `tcp` and `udp`. + [DataMember(Name = "krb_kdc", EmitDefaultValue = true)] + public string KrbKdc { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class TargetConnectionOptions {\n"); + sb.Append(" KrbKdc: ").Append(KrbKdc).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/devolutions-gateway/openapi/gateway-api.yaml b/devolutions-gateway/openapi/gateway-api.yaml index 0eacfe042..851fdd6af 100644 --- a/devolutions-gateway/openapi/gateway-api.yaml +++ b/devolutions-gateway/openapi/gateway-api.yaml @@ -1808,6 +1808,10 @@ components: - id - kind properties: + connection_options: + allOf: + - $ref: '#/components/schemas/TargetConnectionOptions' + nullable: true host_to_resolve: type: string description: |- @@ -1835,7 +1839,8 @@ components: description: |- Minimum persistence duration in seconds for the data provisioned via this operation. - Optional parameter for "provision-token" and "provision-credentials" kinds. + Optional parameter for "provision-token", "provision-credentials", and + "provision-connection-options" kinds. nullable: true minimum: 0 token: @@ -1843,7 +1848,8 @@ components: description: |- The token to be stored on the proxy-side. - Required for "provision-token" and "provision-credentials" kinds. + Required for "provision-token", "provision-credentials", and + "provision-connection-options" kinds. nullable: true PreflightOperationKind: type: string @@ -1855,6 +1861,7 @@ components: - provision-token - provision-credentials - resolve-host + - provision-connection-options PreflightOutput: type: object required: @@ -2141,6 +2148,16 @@ components: Url: type: string description: HTTP URL where notification messages are to be sent + TargetConnectionOptions: + type: object + properties: + krb_kdc: + type: string + description: |- + Kerberos KDC address for the target-side CredSSP connection. + + Format: `://:` (port is required). Supported schemes are `tcp` and `udp`. + nullable: true TrafficEventResponse: type: object required: diff --git a/devolutions-gateway/openapi/ts-angular-client/.openapi-generator/FILES b/devolutions-gateway/openapi/ts-angular-client/.openapi-generator/FILES index 56df90448..8a388ef76 100644 --- a/devolutions-gateway/openapi/ts-angular-client/.openapi-generator/FILES +++ b/devolutions-gateway/openapi/ts-angular-client/.openapi-generator/FILES @@ -71,6 +71,7 @@ model/setConfigResponse.ts model/setUpdateScheduleRequest.ts model/subProvisionerKey.ts model/subscriber.ts +model/targetConnectionOptions.ts model/trafficEventResponse.ts model/transportProtocolResponse.ts model/updateProductInfo.ts diff --git a/devolutions-gateway/openapi/ts-angular-client/README.md b/devolutions-gateway/openapi/ts-angular-client/README.md index eb9e333c5..f119e4668 100644 --- a/devolutions-gateway/openapi/ts-angular-client/README.md +++ b/devolutions-gateway/openapi/ts-angular-client/README.md @@ -1,4 +1,4 @@ -## @devolutions/gateway-client@0.15.0 +## @devolutions/gateway-client@0.16.0 Protocol-aware fine-grained relay server @@ -23,7 +23,7 @@ Navigate to the folder of your consuming project and run one of next commands. _published:_ ``` -npm install @devolutions/gateway-client@0.15.0 --save +npm install @devolutions/gateway-client@0.16.0 --save ``` _without publishing (not recommended):_ diff --git a/devolutions-gateway/openapi/ts-angular-client/config.json b/devolutions-gateway/openapi/ts-angular-client/config.json index 79bf35d05..e8432d416 100644 --- a/devolutions-gateway/openapi/ts-angular-client/config.json +++ b/devolutions-gateway/openapi/ts-angular-client/config.json @@ -1,6 +1,6 @@ { "npmName": "@devolutions/gateway-client", - "npmVersion": "0.15.0", + "npmVersion": "0.16.0", "license": "MIT OR Apache-2.0", "gitHost": "github.com", "gitUserId": "Devolutions", diff --git a/devolutions-gateway/openapi/ts-angular-client/model/models.ts b/devolutions-gateway/openapi/ts-angular-client/model/models.ts index 02f338e50..f7c62b504 100644 --- a/devolutions-gateway/openapi/ts-angular-client/model/models.ts +++ b/devolutions-gateway/openapi/ts-angular-client/model/models.ts @@ -50,6 +50,7 @@ export * from './setConfigResponse'; export * from './setUpdateScheduleRequest'; export * from './subProvisionerKey'; export * from './subscriber'; +export * from './targetConnectionOptions'; export * from './trafficEventResponse'; export * from './transportProtocolResponse'; export * from './updateProductInfo'; diff --git a/devolutions-gateway/openapi/ts-angular-client/model/preflightOperation.ts b/devolutions-gateway/openapi/ts-angular-client/model/preflightOperation.ts index cf208ff87..76d51046a 100644 --- a/devolutions-gateway/openapi/ts-angular-client/model/preflightOperation.ts +++ b/devolutions-gateway/openapi/ts-angular-client/model/preflightOperation.ts @@ -7,11 +7,13 @@ * https://openapi-generator.tech * Do not edit the class manually. */ +import { TargetConnectionOptions } from './targetConnectionOptions'; import { AppCredential } from './appCredential'; import { PreflightOperationKind } from './preflightOperationKind'; export interface PreflightOperation { + connection_options?: TargetConnectionOptions | null; /** * The hostname to perform DNS resolution on. Required for \"resolve-host\" kind. */ @@ -24,11 +26,11 @@ export interface PreflightOperation { proxy_credential?: AppCredential | null; target_credential?: AppCredential | null; /** - * Minimum persistence duration in seconds for the data provisioned via this operation. Optional parameter for \"provision-token\" and \"provision-credentials\" kinds. + * Minimum persistence duration in seconds for the data provisioned via this operation. Optional parameter for \"provision-token\", \"provision-credentials\", and \"provision-connection-options\" kinds. */ time_to_live?: number | null; /** - * The token to be stored on the proxy-side. Required for \"provision-token\" and \"provision-credentials\" kinds. + * The token to be stored on the proxy-side. Required for \"provision-token\", \"provision-credentials\", and \"provision-connection-options\" kinds. */ token?: string | null; } diff --git a/devolutions-gateway/openapi/ts-angular-client/model/preflightOperationKind.ts b/devolutions-gateway/openapi/ts-angular-client/model/preflightOperationKind.ts index 235e78a37..bfaddfd2c 100644 --- a/devolutions-gateway/openapi/ts-angular-client/model/preflightOperationKind.ts +++ b/devolutions-gateway/openapi/ts-angular-client/model/preflightOperationKind.ts @@ -9,7 +9,7 @@ */ -export type PreflightOperationKind = 'get-version' | 'get-agent-version' | 'get-running-session-count' | 'get-recording-storage-health' | 'provision-token' | 'provision-credentials' | 'resolve-host'; +export type PreflightOperationKind = 'get-version' | 'get-agent-version' | 'get-running-session-count' | 'get-recording-storage-health' | 'provision-token' | 'provision-credentials' | 'resolve-host' | 'provision-connection-options'; export const PreflightOperationKind = { GetVersion: 'get-version' as PreflightOperationKind, @@ -18,6 +18,7 @@ export const PreflightOperationKind = { GetRecordingStorageHealth: 'get-recording-storage-health' as PreflightOperationKind, ProvisionToken: 'provision-token' as PreflightOperationKind, ProvisionCredentials: 'provision-credentials' as PreflightOperationKind, - ResolveHost: 'resolve-host' as PreflightOperationKind + ResolveHost: 'resolve-host' as PreflightOperationKind, + ProvisionConnectionOptions: 'provision-connection-options' as PreflightOperationKind }; diff --git a/devolutions-gateway/openapi/ts-angular-client/model/targetConnectionOptions.ts b/devolutions-gateway/openapi/ts-angular-client/model/targetConnectionOptions.ts new file mode 100644 index 000000000..9a3236a9f --- /dev/null +++ b/devolutions-gateway/openapi/ts-angular-client/model/targetConnectionOptions.ts @@ -0,0 +1,18 @@ +/** + * devolutions-gateway + * + * Contact: infos@devolutions.net + * + * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). + * https://openapi-generator.tech + * Do not edit the class manually. + */ + + +export interface TargetConnectionOptions { + /** + * Kerberos KDC address for the target-side CredSSP connection. Format: `://:` (port is required). Supported schemes are `tcp` and `udp`. + */ + krb_kdc?: string | null; +} + diff --git a/devolutions-gateway/openapi/ts-angular-client/package.json b/devolutions-gateway/openapi/ts-angular-client/package.json index 92749fbfe..c7eebdc0b 100644 --- a/devolutions-gateway/openapi/ts-angular-client/package.json +++ b/devolutions-gateway/openapi/ts-angular-client/package.json @@ -1,6 +1,6 @@ { "name": "@devolutions/gateway-client", - "version": "0.15.0", + "version": "0.16.0", "description": "OpenAPI client for @devolutions/gateway-client", "author": "OpenAPI-Generator Contributors", "repository": { diff --git a/devolutions-gateway/src/openapi.rs b/devolutions-gateway/src/openapi.rs index 27d8ffdf4..73b22bf60 100644 --- a/devolutions-gateway/src/openapi.rs +++ b/devolutions-gateway/src/openapi.rs @@ -69,6 +69,7 @@ use crate::config::dto::{DataEncoding, PubKeyFormat, Subscriber}; PreflightOperationKind, AppCredential, AppCredentialKind, + TargetConnectionOptions, PreflightOutput, PreflightOutputKind, PreflightAlertStatus, @@ -373,7 +374,8 @@ struct PreflightOperation { kind: PreflightOperationKind, /// The token to be stored on the proxy-side. /// - /// Required for "provision-token" and "provision-credentials" kinds. + /// Required for "provision-token", "provision-credentials", and + /// "provision-connection-options" kinds. token: Option, /// The credential to use to authorize the client at the proxy-level. /// @@ -383,16 +385,30 @@ struct PreflightOperation { /// /// Required for "provision-credentials" kind. target_credential: Option, + /// Options used by the Gateway when connecting to the target. + /// + /// Required for "provision-connection-options" kind. + connection_options: Option, /// The hostname to perform DNS resolution on. /// /// Required for "resolve-host" kind. host_to_resolve: Option, /// Minimum persistence duration in seconds for the data provisioned via this operation. /// - /// Optional parameter for "provision-token" and "provision-credentials" kinds. + /// Optional parameter for "provision-token", "provision-credentials", and + /// "provision-connection-options" kinds. time_to_live: Option, } +#[allow(unused)] +#[derive(Deserialize, utoipa::ToSchema)] +struct TargetConnectionOptions { + /// Kerberos KDC address for the target-side CredSSP connection. + /// + /// Format: `://:` (port is required). Supported schemes are `tcp` and `udp`. + krb_kdc: Option, +} + #[derive(Deserialize, utoipa::ToSchema)] enum PreflightOperationKind { #[serde(rename = "get-version")] @@ -409,6 +425,9 @@ enum PreflightOperationKind { ProvisionCredentials, #[serde(rename = "resolve-host")] ResolveHost, + // Append-only: keep after ResolveHost so generated C# numeric values for existing variants stay stable. + #[serde(rename = "provision-connection-options")] + ProvisionConnectionOptions, } #[allow(unused)]