diff --git a/Scripting/UTM.sdef b/Scripting/UTM.sdef
index 41af0f1e9c..0b236158a8 100644
--- a/Scripting/UTM.sdef
+++ b/Scripting/UTM.sdef
@@ -527,6 +527,21 @@
description="Only used in emulated mode. Allows port forwarding from guest to host.">
+
+
+
+
+
+
+
+
+
+
diff --git a/Scripting/UTMScriptingConfigImpl.swift b/Scripting/UTMScriptingConfigImpl.swift
index 5f24f1a50a..6fc1811d9d 100644
--- a/Scripting/UTMScriptingConfigImpl.swift
+++ b/Scripting/UTMScriptingConfigImpl.swift
@@ -154,6 +154,11 @@ extension UTMScriptingConfigImpl {
"address": config.macAddress,
"hostInterface": config.bridgeInterface ?? "",
"portForwards": config.portForward.map({ serializeQemuPortForward($0) }),
+ "vlanGuestAddress": config.vlanGuestAddress ?? "",
+ "vlanGuestAddressIpv6": config.vlanGuestAddressIPv6 ?? "",
+ "vlanDhcpStartAddress": config.vlanDhcpStartAddress ?? "",
+ "vlanDhcpEndAddress": config.vlanDhcpEndAddress ?? "",
+ "isolateFromHost": config.isIsolateFromHost,
]
}
@@ -487,6 +492,21 @@ extension UTMScriptingConfigImpl {
if let portForwards = record["portForwards"] as? [[AnyHashable : Any]] {
network.portForward = portForwards.map({ unserializeQemuPortForward(from: $0) })
}
+ if let value = record["vlanGuestAddress"] as? String, !value.isEmpty {
+ network.vlanGuestAddress = value
+ }
+ if let value = record["vlanGuestAddressIpv6"] as? String, !value.isEmpty {
+ network.vlanGuestAddressIPv6 = value
+ }
+ if let value = record["vlanDhcpStartAddress"] as? String, !value.isEmpty {
+ network.vlanDhcpStartAddress = value
+ }
+ if let value = record["vlanDhcpEndAddress"] as? String, !value.isEmpty {
+ network.vlanDhcpEndAddress = value
+ }
+ if let value = record["isolateFromHost"] as? Bool {
+ network.isIsolateFromHost = value
+ }
}
private func parseNetworkProtocol(_ value: AEKeyword?) -> QEMUNetworkProtocol? {