Overview
Comment: | Make Tcl SSH Agent more standalone |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | trunk |
Files: | files | file ages | folders |
SHA1: | 2d57dd9864e513ac1cee6d64a5f969b1d224c00b |
User & Date: | rkeene on 2022-03-13 20:46:34 |
Other Links: | manifest | tags |
Context
2022-03-13
| ||
20:46 | Make Tcl SSH Agent more standalone Leaf check-in: 2d57dd9864 user: rkeene tags: trunk | |
20:23 | Add SHA-512 support (hacked) and a bit of cleanup check-in: a1b40a439c user: rkeene tags: trunk | |
Changes
Modified .fossil-settings/ignore-glob from [4e7947b3ab] to [5381eee219].
37 37 build/chrome/test 38 38 build/chrome/google-pcsc.js 39 39 build/chrome/manifest.json 40 40 build/chrome/jsrsasign.js 41 41 build/chrome/extra/*.png 42 42 build/tcl/ssh-agent-noasync.js 43 43 build/tcl/tclkit 44 +build/tcl/ssh-agent
Modified build/tcl/Makefile from [ef0ac61411] to [f52d795173].
1 -all: ssh-agent-noasync.js 1 +all: ssh-agent 2 + 3 +ssh-agent: ssh-agent.in ssh-agent-noasync.js chrome-emu.js 4 + rm -f ssh-agent.new ssh-agent 5 + sed $$'/@@SSH_AGENT_NOASYNC_JS@@/{r ssh-agent-noasync.js\nd}\n/@@CHROME_EMU_JS@@/{r chrome-emu.js\nd}' < ssh-agent.in > ssh-agent.new 6 + chmod +x ssh-agent.new 7 + mv ssh-agent.new ssh-agent 2 8 3 9 ssh-agent-noasync.js: ../chrome/ssh-agent.js 4 10 $(CC) -Dawait='' -Dasync='' -nostdinc -C -E -x c ../chrome/ssh-agent.js -o - | grep -v '^# ' > ssh-agent-noasync.js.new 5 11 mv ssh-agent-noasync.js.new ssh-agent-noasync.js 6 12 7 13 softokn3-pkcs11.so: softokn3-pkcs11.c 8 14 $(CC) -fPIC -Wall -shared -o softokn3-pkcs11.so softokn3-pkcs11.c 9 15 10 16 clean: 11 17 rm -f ssh-agent-noasync.js.new ssh-agent-noasync.js 12 18 rm -f softokn3-pkcs11.so 19 + rm -f ssh-agent.new ssh-agent 13 20 14 21 distclean: clean 15 22 16 23 .PHONY: all clean distclean
Modified build/tcl/ssh-agent.in from [bf92e80fb2] to [973f5211fa].
16 16 error "Must set SSH_AGENT_PKCS11_MODULE" 17 17 } 18 18 19 19 package require duktape 0.7 20 20 package require tuapi 21 21 package require pki 0.6 22 22 package require pki::pkcs11 0.9.9 23 + 24 +# Files 25 +set ::files(chrome-emu.js) { 26 +@@CHROME_EMU_JS@@ 27 +} 28 + 29 +set ::files(ssh-agent-noasync.js) { 30 +@@SSH_AGENT_NOASYNC_JS@@ 31 +} 23 32 24 33 ## HACK: Fix up older versions of "pki" to include the raw certificate 25 34 ## this is needed 26 35 apply {{} { 27 36 set procToUpdate ::pki::x509::parse_cert 28 37 if {![string match "*set ret(raw)*" [info body $procToUpdate]]} { 29 38 set body [info body $procToUpdate] ................................................................................ 152 161 } 153 162 X509.parseCert = __parseCert; 154 163 delete __parseCert; 155 164 } 156 165 } 157 166 158 167 proc readFile {fileName} { 168 + if {[info exists ::files($fileName)]} { 169 + set data $::files($fileName) 170 + if {[string range [string trim $data] 0 1] ne "@@"} { 171 + return $data 172 + } 173 + } 174 + 159 175 set fileName [file join $::dir $fileName] 160 176 if {![info exists ::readFile($fileName)]} { 161 177 catch { 162 178 set fd [open $fileName] 163 179 set ::readFile($fileName) [read $fd] 164 180 } 165 181 catch {