unet-cli: fix add-ssh-host with seed keys
authorFelix Fietkau <nbd@nbd.name>
Mon, 16 Dec 2024 10:46:23 +0000 (11:46 +0100)
committerFelix Fietkau <nbd@nbd.name>
Mon, 16 Dec 2024 10:46:23 +0000 (11:46 +0100)
Signed-off-by: Felix Fietkau <nbd@nbd.name>
scripts/unet-cli

index 9beda2c34e64c4ace60d6105878425e0f01f8e1d..8cb790e1d93fa7dbaf4e4ca45cb8c0511b1c69eb 100755 (executable)
@@ -249,10 +249,10 @@ function key_arg(file, net_data) {
        return `-K ${file}.key`;
 }
 
-function sync_ssh_host(host) {
+function sync_ssh_host(host, net_data) {
        let interface = args.interface ?? "unet";
        let connect = replace(args.connect ?? "", ",", " ");
-       let auth_key = args.auth_key;
+       let auth_key = args.auth_key ?? net_data.config.id;
        let tunnels = replace(replace(args.tunnels ?? "", ",", " "), ":", "=");
        let domain = args.domain ?? "unet";
        let dht;
@@ -339,11 +339,6 @@ if (command in [ "add-service", "set-service" ]) {
 
 fetch_args();
 
-if (command in [ "add-ssh-host", "set-ssh-host" ]) {
-       sync_ssh_host(ssh_host);
-       command = replace(command, "ssh-", "");
-}
-
 let net_data;
 
 if (command == "import") {
@@ -373,6 +368,11 @@ if (command == "create") {
        }
 }
 
+if (command in [ "add-ssh-host", "set-ssh-host" ]) {
+       sync_ssh_host(ssh_host, net_data);
+       command = replace(command, "ssh-", "");
+}
+
 if (command == "sign") {
        let ret = system(`${unet_tool} -S ${key_arg(file, net_data)} -o ${file}.bin ${file}`);
        if (ret != 0)