.
Some checks failed
Dropshell Test / Build_and_Test (push) Has been cancelled

This commit is contained in:
Your Name 2025-05-17 12:24:38 +12:00
parent 399fe1d549
commit 4147d4b97f
8 changed files with 80 additions and 70 deletions

View File

@ -253,60 +253,79 @@ bool recreate_tree(std::string destination_folder) {
"bXBsZSBFTlYgd2l0aCB0aGUgZm9sbG93aW5nIGZvcm1hdDoKIyBTRVJWSUNFX05BTUVfSEVBTFRI"\ "bXBsZSBFTlYgd2l0aCB0aGUgZm9sbG93aW5nIGZvcm1hdDoKIyBTRVJWSUNFX05BTUVfSEVBTFRI"\
"PWhlYWx0aHl8dW5oZWFsdGh5fHVua25vd24KIyBTRVJWSUNFX05BTUVfUE9SVFM9cG9ydDEscG9y"\ "PWhlYWx0aHl8dW5oZWFsdGh5fHVua25vd24KIyBTRVJWSUNFX05BTUVfUE9SVFM9cG9ydDEscG9y"\
"dDIscG9ydDMKCiMgR2V0IGFsbCBzZXJ2aWNlcyBvbiB0aGUgc2VydmVyClNDUklQVF9ESVI9IiQo"\ "dDIscG9ydDMKCiMgR2V0IGFsbCBzZXJ2aWNlcyBvbiB0aGUgc2VydmVyClNDUklQVF9ESVI9IiQo"\
"ZGlybmFtZSAiJDAiKSIKCiAgICAjIC8vIHJlbW90ZSBwYXRocwogICAgIyAvLyBEUk9QU0hFTExf"\ "ZGlybmFtZSAiJDAiKSIKCiAgICAjIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t"\
"RElSCiAgICAjIC8vICAgfC0tIGJhY2t1cHMKICAgICMgLy8gICB8LS0gdGVtcF9maWxlcwogICAg"\ "LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t"\
"IyAvLyAgIHwtLSBhZ2VudAogICAgIyAvLyAgIHwgICB8LS0gYmI2NAogICAgIyAvLyAgIHwgICB8"\ "LS0tLS0tCiAgICAjIC8vIHJlbW90ZSBwYXRocwogICAgIyAvLyBEUk9QU0hFTExfRElSCiAgICAj"\
"LS0gKG90aGVyIGFnZW50IGZpbGVzLCBpbmNsdWRpbmcgX2FsbHNlcnZpY2Vzc3RhdHVzLnNoKQog"\ "IC8vICAgfC0tIGJhY2t1cHMKICAgICMgLy8gICB8LS0gdGVtcF9maWxlcwogICAgIyAvLyAgIHwt"\
"ICAgIyAvLyAgIHwtLSBzZXJ2aWNlcwogICAgIyAvLyAgICAgICB8LS0gc2VydmljZSBuYW1lCiAg"\ "LSBhZ2VudAogICAgIyAvLyAgIHwgICB8LS0gYmI2NAogICAgIyAvLyAgIHwgICB8LS0gKG90aGVy"\
"ICAjIC8vICAgICAgICAgICB8LS0gY29uZmlnCiAgICAjIC8vICAgICAgICAgICAgICAgfC0tIHNl"\ "IGFnZW50IGZpbGVzLCBpbmNsdWRpbmcgX2FsbHNlcnZpY2Vzc3RhdHVzLnNoKQogICAgIyAvLyAg"\
"cnZpY2UuZW52CiAgICAjIC8vICAgICAgICAgICB8LS0gdGVtcGxhdGUKICAgICMgLy8gICAgICAg"\ "IHwtLSBzZXJ2aWNlcwogICAgIyAvLyAgICAgICB8LS0gc2VydmljZSBuYW1lCiAgICAjIC8vICAg"\
"ICAgICAgICB8LS0gKHNjcmlwdCBmaWxlcykKICAgICMgLy8gICAgICAgICAgICAgICB8LS0gY29u"\ "ICAgICAgICB8LS0gY29uZmlnCiAgICAjIC8vICAgICAgICAgICAgICAgfC0tIHNlcnZpY2UuZW52"\
"ZmlnCiAgICAjIC8vICAgICAgICAgICAgICAgICAgIHwtLSBzZXJ2aWNlLmVudgogICAgIyAvLyAg"\ "IChhY3R1YWwgc2VydmljZSBjb25maWcpCiAgICAjIC8vICAgICAgICAgICAgICAgfC0tIC50ZW1w"\
"ICAgICAgICAgICAgICAgICB8LS0gKG90aGVyIGNvbmZpZyBmaWxlcyBmb3Igc3BlY2lmaWMgc2Vy"\ "bGF0ZV9pbmZvLmVudgogICAgIyAvLyAgICAgICAgICAgfC0tIHRlbXBsYXRlCiAgICAjIC8vICAg"\
"dmVyJnNlcnZpY2UpCgojIEdldCBhbGwgc2VydmljZXMgb24gdGhlIHNlcnZlcgpTRVJWSUNFU19Q"\ "ICAgICAgICAgICAgfC0tIF9kZWZhdWx0LmVudgogICAgIyAvLyAgICAgICAgICAgICAgIHwtLSAo"\
"QVRIPSQocmVhbHBhdGggIiR7U0NSSVBUX0RJUn0vLi4vc2VydmljZXMvIikKCgpDVVJSRU5UX09V"\ "c2NyaXB0IGZpbGVzKQogICAgIyAvLyAgICAgICAgICAgICAgIHwtLSBjb25maWcKICAgICMgLy8g"\
"VFBVVD0iIgpDVVJSRU5UX0VYSVRfQ09ERT0wCgpsb2FkX2RvdGVudigpewogICAgbG9jYWwgZmls"\ "ICAgICAgICAgICAgICAgICAgfC0tIHNlcnZpY2UuZW52IChkZWZhdWx0IHNlcnZpY2UgY29uZmln"\
"ZV9wYXRoPSQxCiAgICBpZiBbIC1mICIke2ZpbGVfcGF0aH0iIF07IHRoZW4KICAgICAgICBzb3Vy"\ "KQogICAgIyAvLyAgICAgICAgICAgICAgICAgICB8LS0gLnRlbXBsYXRlX2luZm8uZW52CiAgICAj"\
"Y2UgIiR7ZmlsZV9wYXRofSIKICAgIGZpCn0KCmZ1bmN0aW9uIHJ1bl9jb21tYW5kKCkgewogICAg"\ "IC8vICAgICAgICAgICAgICAgICAgIHwtLSAob3RoZXIgY29uZmlnIGZpbGVzIGZvciBzcGVjaWZp"\
"bG9jYWwgc2VydmljZV9wYXRoPSQxCiAgICBsb2NhbCBjb21tYW5kPSQyCiAgICBsb2NhbCBjYXB0"\ "YyBzZXJ2ZXImc2VydmljZSkKCiMgR2V0IGFsbCBzZXJ2aWNlcyBvbiB0aGUgc2VydmVyClNFUlZJ"\
"dXJlX291dHB1dD0kezM6LWZhbHNlfSAgIyBkZWZhdWx0IHRvIGZhbHNlIGlmIG5vdCBzcGVjaWZp"\ "Q0VTX1BBVEg9JChyZWFscGF0aCAiJHtTQ1JJUFRfRElSfS8uLi9zZXJ2aWNlcy8iKQoKQ1VSUkVO"\
"ZWQKCiAgICAjIGNoZWNrIGlmIHRoZSBjb21tYW5kIGlzIGEgZmlsZQogICAgaWYgWyAhIC1mICIk"\ "VF9PVVRQVVQ9IiIKQ1VSUkVOVF9FWElUX0NPREU9MAoKbG9hZF9kb3RlbnYoKXsKICAgIGxvY2Fs"\
"e3NlcnZpY2VfcGF0aH0vdGVtcGxhdGUvJHtjb21tYW5kfS5zaCIgXTsgdGhlbgogICAgICAgIHJl"\ "IGZpbGVfcGF0aD0kMQogICAgaWYgWyAtZiAiJHtmaWxlX3BhdGh9IiBdOyB0aGVuCiAgICAgICAg"\
"dHVybjsKICAgIGZpCgogICAgIyBydW4gdGhlIGNvbW1hbmQgaW4gYSBzdWJzaGVsbCB0byBwcmV2"\ "c291cmNlICIke2ZpbGVfcGF0aH0iCiAgICBmaQp9CgpfY2hlY2tfcmVxdWlyZWRfZW52X3ZhcnNf"\
"ZW50IGVudmlyb25tZW50IGNoYW5nZXMKICAgIENVUlJFTlRfT1VUUFVUPSQoCiAgICAgICAgc2V0"\ "YWxsc2VydmljZXNzdGF0dXMoKSB7CiAgICBsb2NhbCByZXF1aXJlZF92YXJzPSgiJEAiKQogICAg"\
"IC1hCiAgICAgICAgbG9hZF9kb3RlbnYgIiR7c2VydmljZV9wYXRofS90ZW1wbGF0ZS9fZGVmYXVs"\ "Zm9yIHZhciBpbiAiJHtyZXF1aXJlZF92YXJzW0BdfSI7IGRvCiAgICAgICAgaWYgWyAteiAiJHsh"\
"dC5lbnYiCiAgICAgICAgbG9hZF9kb3RlbnYgIiR7c2VydmljZV9wYXRofS9jb25maWcvc2Vydmlj"\ "dmFyfSIgXTsgdGhlbgogICAgICAgICAgICBfZGllICJSZXF1aXJlZCBlbnZpcm9ubWVudCB2YXJp"\
"ZS5lbnYiCiAgICAgICAgc2V0ICthCgogICAgICAgICMgdXBkYXRlIHRoZSBtYWluIHZhcmlhYmxl"\ "YWJsZSAkdmFyIGlzIG5vdCBzZXQiCiAgICAgICAgZmkKICAgIGRvbmUKfQoKZnVuY3Rpb24gcnVu"\
"cy4KICAgICAgICBleHBvcnQgQ09ORklHX1BBVEg9IiR7c2VydmljZV9wYXRofS9jb25maWciCiAg"\ "X2NvbW1hbmQoKSB7CiAgICBsb2NhbCBzZXJ2aWNlX3BhdGg9JDEKICAgIGxvY2FsIGNvbW1hbmQ9"\
"ICAgICAgIyBTRVJWRVIgaXMgY29ycmVjdAogICAgICAgIGV4cG9ydCBTRVJWSUNFPSIke1NFUlZJ"\ "JDIKICAgIGxvY2FsIGNhcHR1cmVfb3V0cHV0PSR7MzotZmFsc2V9ICAjIGRlZmF1bHQgdG8gZmFs"\
"Q0VfTkFNRX0iCiAgICAgICAgCiAgICAgICAgaWYgWyAiJGNhcHR1cmVfb3V0cHV0IiA9ICJ0cnVl"\ "c2UgaWYgbm90IHNwZWNpZmllZAoKICAgICMgY2hlY2sgaWYgdGhlIGNvbW1hbmQgaXMgYSBmaWxl"\
"IiBdOyB0aGVuCiAgICAgICAgICAgICMgQ2FwdHVyZSBhbmQgcmV0dXJuIG91dHB1dAogICAgICAg"\ "CiAgICBpZiBbICEgLWYgIiR7c2VydmljZV9wYXRofS90ZW1wbGF0ZS8ke2NvbW1hbmR9LnNoIiBd"\
"ICAgICBiYXNoICIke3NlcnZpY2VfcGF0aH0vdGVtcGxhdGUvJHtjb21tYW5kfS5zaCIgMj4mMQog"\ "OyB0aGVuCiAgICAgICAgcmV0dXJuOwogICAgZmkKCiAgICAjIHJ1biB0aGUgY29tbWFuZCBpbiBh"\
"ICAgICAgIGVsc2UKICAgICAgICAgICAgIyBSdW4gc2lsZW50bHkgYW5kIHJldHVybiBleGl0IGNv"\ "IHN1YnNoZWxsIHRvIHByZXZlbnQgZW52aXJvbm1lbnQgY2hhbmdlcwogICAgQ1VSUkVOVF9PVVRQ"\
"ZGUKICAgICAgICAgICAgYmFzaCAiJHtzZXJ2aWNlX3BhdGh9L3RlbXBsYXRlLyR7Y29tbWFuZH0u"\ "VVQ9JCgKICAgICAgICBzZXQgLWEKICAgICAgICBsb2FkX2RvdGVudiAiJHtzZXJ2aWNlX3BhdGh9"\
"c2giID4gL2Rldi9udWxsIDI+JjEKICAgICAgICBmaQogICAgKQogICAgQ1VSUkVOVF9FWElUX0NP"\ "L3RlbXBsYXRlL19kZWZhdWx0LmVudiIKICAgICAgICBsb2FkX2RvdGVudiAiJHtzZXJ2aWNlX3Bh"\
"REU9JD8KfQoKZnVuY3Rpb24gY29tbWFuZF9leGlzdHMoKSB7CiAgICBsb2NhbCBzZXJ2aWNlX3Bh"\ "dGh9L2NvbmZpZy9zZXJ2aWNlLmVudiIKICAgICAgICBsb2FkX2RvdGVudiAiJHtzZXJ2aWNlX3Bh"\
"dGg9JDEKICAgIGxvY2FsIGNvbW1hbmQ9JDIKICAgIGlmIFsgISAtZiAiJHtzZXJ2aWNlX3BhdGh9"\ "dGh9L2NvbmZpZy8udGVtcGxhdGVfaW5mby5lbnYiCiAgICAgICAgc2V0ICthCgogICAgICAgICMg"\
"L3RlbXBsYXRlLyR7Y29tbWFuZH0uc2giIF07IHRoZW4KICAgICAgICByZXR1cm4gMQogICAgZmkK"\ "YWxsX2Vudl92YXJzWyJDT05GSUdfUEFUSCJdID0gcmVtb3RlcGF0aDo6c2VydmljZV9jb25maWco"\
"ICAgIHJldHVybiAwCn0KCgoKIyBHZXQgYWxsIHNlcnZpY2UgbmFtZXMKU0VSVklDRV9OQU1FUz0k"\ "c2VydmVyX25hbWUsc2VydmljZV9uYW1lKTsKICAgICAgICAjIGFsbF9lbnZfdmFyc1siU0VSVkVS"\
"KGxzICIke1NFUlZJQ0VTX1BBVEh9IikKCiMgSXRlcmF0ZSBvdmVyIGFsbCBzZXJ2aWNlIG5hbWVz"\ "Il0gPSBzZXJ2ZXJfbmFtZTsKICAgICAgICAjIGFsbF9lbnZfdmFyc1siU0VSVklDRSJdID0gc2Vy"\
"CmZvciBTRVJWSUNFX05BTUUgaW4gJHtTRVJWSUNFX05BTUVTfTsgZG8KCiAgICBTRVJWSUNFX1BB"\ "dmljZV9uYW1lOwogICAgICAgICMgYWxsX2Vudl92YXJzWyJBR0VOVF9QQVRIIl0gPSByZW1vdGVw"\
"VEg9JChyZWFscGF0aCAiJHtTRVJWSUNFU19QQVRIfS8ke1NFUlZJQ0VfTkFNRX0iKQoKICAgICMt"\ "YXRoOjphZ2VudChzZXJ2ZXJfbmFtZSk7CiAgICAgICAgIyBhbGxfZW52X3ZhcnNbIkhPU1RfTkFN"\
"LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogICAgIyBHZXQgdGhlIHNlcnZpY2UgaGVh"\ "RSJdID0gc2VydmVyX2luZm8uc3NoX2hvc3Q7CiAgICAgICAgIyB1cGRhdGUgdGhlIG1haW4gdmFy"\
"bHRoCiAgICBpZiAhIGNvbW1hbmRfZXhpc3RzICIke1NFUlZJQ0VfUEFUSH0iICJzdGF0dXMiOyB0"\ "aWFibGVzLgogICAgICAgIGV4cG9ydCBDT05GSUdfUEFUSD0iJHtzZXJ2aWNlX3BhdGh9L2NvbmZp"\
"aGVuCiAgICAgICAgU0VSVklDRV9IRUFMVEg9InVua25vd24iCiAgICBlbHNlCiAgICAgICAgcnVu"\ "ZyIKICAgICAgICAjIFNFUlZFUiBpcyBhbHJlYWR5IHNldAogICAgICAgIGV4cG9ydCBTRVJWSUNF"\
"X2NvbW1hbmQgIiR7U0VSVklDRV9QQVRIfSIgInN0YXR1cyIgImZhbHNlIgogICAgICAgIGlmIFsg"\ "PSIke1NFUlZJQ0VfTkFNRX0iCiAgICAgICAgZXhwb3J0IEFHRU5UX1BBVEg9IiR7U0NSSVBUX0RJ"\
"IiR7Q1VSUkVOVF9FWElUX0NPREV9IiAtZXEgMCBdOyB0aGVuCiAgICAgICAgICAgIFNFUlZJQ0Vf"\ "Un0iCiAgICAgICAgIyBIT1NUX05BTUUgaXMgYWxyZWFkeSBzZXQKCiAgICAgICAgX2NoZWNrX3Jl"\
"SEVBTFRIPSJoZWFsdGh5IgogICAgICAgIGVsc2UKICAgICAgICAgICAgU0VSVklDRV9IRUFMVEg9"\ "cXVpcmVkX2Vudl92YXJzX2FsbHNlcnZpY2Vzc3RhdHVzICJDT05GSUdfUEFUSCIgIlNFUlZFUiIg"\
"InVuaGVhbHRoeSIKICAgICAgICBmaQogICAgZmkKCiAgICAjLS0tLS0tLS0tLS0tLS0tLS0tLS0t"\ "IlNFUlZJQ0UiICJBR0VOVF9QQVRIIiAiSE9TVF9OQU1FIiAiVEVNUExBVEUiCgogICAgICAgIGlm"\
"LS0tLS0tLS0tLS0KICAgICMgR2V0IHRoZSBzZXJ2aWNlIHBvcnRzCiAgICBpZiAhIGNvbW1hbmRf"\ "IFsgIiRjYXB0dXJlX291dHB1dCIgPSAidHJ1ZSIgXTsgdGhlbgogICAgICAgICAgICAjIENhcHR1"\
"ZXhpc3RzICIke1NFUlZJQ0VfUEFUSH0iICJwb3J0cyI7IHRoZW4KICAgICAgICBTRVJWSUNFX1BP"\ "cmUgYW5kIHJldHVybiBvdXRwdXQKICAgICAgICAgICAgYmFzaCAiJHtzZXJ2aWNlX3BhdGh9L3Rl"\
"UlRTPSIiCiAgICBlbHNlCiAgICAgICAgcnVuX2NvbW1hbmQgIiR7U0VSVklDRV9QQVRIfSIgInBv"\ "bXBsYXRlLyR7Y29tbWFuZH0uc2giIDI+JjEKICAgICAgICBlbHNlCiAgICAgICAgICAgICMgUnVu"\
"cnRzIiAidHJ1ZSIKICAgICAgICBTRVJWSUNFX1BPUlRTPSIke0NVUlJFTlRfT1VUUFVUfSIKICAg"\ "IHNpbGVudGx5IGFuZCByZXR1cm4gZXhpdCBjb2RlCiAgICAgICAgICAgIGJhc2ggIiR7c2Vydmlj"\
"IGZpCgogICAgIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAjIHJldHVybiB0"\ "ZV9wYXRofS90ZW1wbGF0ZS8ke2NvbW1hbmR9LnNoIiA+IC9kZXYvbnVsbCAyPiYxCiAgICAgICAg"\
"aGUgaGVhbHRoIGFuZCBwb3J0cwogICAgZWNobyAiJHtTRVJWSUNFX05BTUV9X0hFQUxUSD0ke1NF"\ "ZmkKICAgICkKICAgIENVUlJFTlRfRVhJVF9DT0RFPSQ/Cn0KCmZ1bmN0aW9uIGNvbW1hbmRfZXhp"\
"UlZJQ0VfSEVBTFRIfSIKICAgIGVjaG8gIiR7U0VSVklDRV9OQU1FfV9QT1JUUz0ke1NFUlZJQ0Vf"\ "c3RzKCkgewogICAgbG9jYWwgc2VydmljZV9wYXRoPSQxCiAgICBsb2NhbCBjb21tYW5kPSQyCiAg"\
"UE9SVFN9Igpkb25lCg=="; "ICBpZiBbICEgLWYgIiR7c2VydmljZV9wYXRofS90ZW1wbGF0ZS8ke2NvbW1hbmR9LnNoIiBdOyB0"\
"aGVuCiAgICAgICAgcmV0dXJuIDEKICAgIGZpCiAgICByZXR1cm4gMAp9CgoKCiMgR2V0IGFsbCBz"\
"ZXJ2aWNlIG5hbWVzClNFUlZJQ0VfTkFNRVM9JChscyAiJHtTRVJWSUNFU19QQVRIfSIpCgojIEl0"\
"ZXJhdGUgb3ZlciBhbGwgc2VydmljZSBuYW1lcwpmb3IgU0VSVklDRV9OQU1FIGluICR7U0VSVklD"\
"RV9OQU1FU307IGRvCgogICAgU0VSVklDRV9QQVRIPSQocmVhbHBhdGggIiR7U0VSVklDRVNfUEFU"\
"SH0vJHtTRVJWSUNFX05BTUV9IikKCiAgICAjLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t"\
"LS0KICAgICMgR2V0IHRoZSBzZXJ2aWNlIGhlYWx0aAogICAgaWYgISBjb21tYW5kX2V4aXN0cyAi"\
"JHtTRVJWSUNFX1BBVEh9IiAic3RhdHVzIjsgdGhlbgogICAgICAgIFNFUlZJQ0VfSEVBTFRIPSJ1"\
"bmtub3duIgogICAgZWxzZQogICAgICAgIHJ1bl9jb21tYW5kICIke1NFUlZJQ0VfUEFUSH0iICJz"\
"dGF0dXMiICJmYWxzZSIKICAgICAgICBpZiBbICIke0NVUlJFTlRfRVhJVF9DT0RFfSIgLWVxIDAg"\
"XTsgdGhlbgogICAgICAgICAgICBTRVJWSUNFX0hFQUxUSD0iaGVhbHRoeSIKICAgICAgICBlbHNl"\
"CiAgICAgICAgICAgIFNFUlZJQ0VfSEVBTFRIPSJ1bmhlYWx0aHkiCiAgICAgICAgZmkKICAgIGZp"\
"CgogICAgIy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCiAgICAjIEdldCB0aGUgc2Vy"\
"dmljZSBwb3J0cwogICAgaWYgISBjb21tYW5kX2V4aXN0cyAiJHtTRVJWSUNFX1BBVEh9IiAicG9y"\
"dHMiOyB0aGVuCiAgICAgICAgU0VSVklDRV9QT1JUUz0iIgogICAgZWxzZQogICAgICAgIHJ1bl9j"\
"b21tYW5kICIke1NFUlZJQ0VfUEFUSH0iICJwb3J0cyIgInRydWUiCiAgICAgICAgU0VSVklDRV9Q"\
"T1JUUz0iJHtDVVJSRU5UX09VVFBVVH0iCiAgICBmaQoKICAgICMtLS0tLS0tLS0tLS0tLS0tLS0t"\
"LS0tLS0tLS0tLS0tLQogICAgIyByZXR1cm4gdGhlIGhlYWx0aCBhbmQgcG9ydHMKICAgIGVjaG8g"\
"IiR7U0VSVklDRV9OQU1FfV9IRUFMVEg9JHtTRVJWSUNFX0hFQUxUSH0iCiAgICBlY2hvICIke1NF"\
"UlZJQ0VfTkFNRX1fUE9SVFM9JHtTRVJWSUNFX1BPUlRTfSIKZG9uZQo=";
// Decode Base64 data // Decode Base64 data
size_t decoded_size = (strlen(filedata_base64) * 3) / 4; size_t decoded_size = (strlen(filedata_base64) * 3) / 4;
@ -314,7 +333,7 @@ bool recreate_tree(std::string destination_folder) {
size_t actual_size; size_t actual_size;
base64_decode(filedata_base64, strlen(filedata_base64), decoded_data, &actual_size); base64_decode(filedata_base64, strlen(filedata_base64), decoded_data, &actual_size);
bool file_written = _recreate_file_(outpath, 6026183735720890766ULL, std::filesystem::perms(493), decoded_data, actual_size); bool file_written = _recreate_file_(outpath, 6522401384310166853ULL, std::filesystem::perms(493), decoded_data, actual_size);
delete[] decoded_data; delete[] decoded_data;
any_written = any_written || file_written; any_written = any_written || file_written;
} }

View File

@ -22,7 +22,7 @@ namespace dropshell
{ {
CommandRegistry::instance().register_command({health_name_list, CommandRegistry::instance().register_command({health_name_list,
health_handler, health_handler,
std_autocomplete_allowallservices, std_autocomplete_allowstar,
false, // hidden false, // hidden
true, // requires_config true, // requires_config
true, // requires_install true, // requires_install

View File

@ -27,7 +27,7 @@ namespace dropshell
{ {
CommandRegistry::instance().register_command({install_name_list, CommandRegistry::instance().register_command({install_name_list,
install_handler, install_handler,
std_autocomplete_allowallservices, std_autocomplete_allowstar,
false, // hidden false, // hidden
false, // requires_config false, // requires_config
false, // requires_install false, // requires_install

View File

@ -24,7 +24,7 @@ namespace dropshell {
// defined in standard_autocomplete.cpp // defined in standard_autocomplete.cpp
void std_autocomplete(const CommandContext& ctx); void std_autocomplete(const CommandContext& ctx);
void std_autocomplete_allowallservices(const CommandContext& ctx); void std_autocomplete_allowstar(const CommandContext& ctx);
} // namespace dropshell } // namespace dropshell

View File

@ -26,7 +26,7 @@ void std_autocomplete(const CommandContext &ctx)
} }
} }
void std_autocomplete_allowallservices(const CommandContext &ctx) void std_autocomplete_allowstar(const CommandContext &ctx)
{ {
std_autocomplete(ctx); std_autocomplete(ctx);
if (ctx.args.size() == 1) if (ctx.args.size() == 1)

View File

@ -19,7 +19,7 @@ namespace dropshell
{ {
CommandRegistry::instance().register_command({uninstall_name_list, CommandRegistry::instance().register_command({uninstall_name_list,
uninstall_handler, uninstall_handler,
std_autocomplete_allowallservices, std_autocomplete_allowstar,
false, // hidden false, // hidden
true, // requires_config true, // requires_config
true, // requires_install true, // requires_install

View File

@ -103,14 +103,11 @@ bool create_server(const std::string &server_name)
server_env_file << "DROPSHELL_DIR=/home/"+user+"/.dropshell" << std::endl; server_env_file << "DROPSHELL_DIR=/home/"+user+"/.dropshell" << std::endl;
server_env_file.close(); server_env_file.close();
// 4. add dropshell-agent service to server
create_service(server_name, "dropshell-agent", "dropshell-agent", true); // silently create service.
std::cout << "Server created successfully: " << server_name << std::endl; std::cout << "Server created successfully: " << server_name << std::endl;
std::cout << "Please complete the installation:" <<std::endl; std::cout << "Please complete the installation:" <<std::endl;
std::cout << "1) edit the server configuration: dropshell edit " << server_name << std::endl; std::cout << "1) edit the server configuration: dropshell edit " << server_name << std::endl;
std::cout << "2) test ssh is working: dropshell ssh " << server_name << std::endl; std::cout << "2) test ssh is working: dropshell ssh " << server_name << std::endl;
std::cout << "3) install dropshell-agent: dropshell install " << server_name << " dropshell-agent" << std::endl; std::cout << "3) install the server: dropshell install " << server_name << std::endl;
std::cout << std::endl; std::cout << std::endl;
return true; return true;
} }

View File

@ -53,12 +53,6 @@ bool service_runner::nuke(bool silent)
if (!mServerEnv.is_valid()) return false; // should never hit this. if (!mServerEnv.is_valid()) return false; // should never hit this.
std::string remote_service_path = remotepath::service(mServer, mService); std::string remote_service_path = remotepath::service(mServer, mService);
bool okay = mServerEnv.run_remote_template_command("dropshell-agent", "_nuke_other", {mService, remote_service_path}, silent, {});
if (!okay)
{
std::cerr << "Warning: Nuke script failed" << std::endl;
return false;
}
std::cout << "Service " << mService << " successfully nuked from " << mServer << std::endl; std::cout << "Service " << mService << " successfully nuked from " << mServer << std::endl;