added nice green color
updated debug host
reduced sleep greatly
removed channel checker in sshqueasync loop
set dark mode on the app
gonna start work on async in sshhandler
remove @mainactors
set env vars
use sshoptionsset to set a username
disconnect sends an eof and handles the channel clsoing, for some reason it crashes on disconnect tho
do catch for pubkeyauth
added asyncReadFromChannel
remove weak self
condense guards
disconnect on a eof reccieve
reduce time sleeping
increase buffer to 512 bytes
made it a blocking read because its happening on a bg thread anyways
using a cchar bitpattern for each string.utf8 when writing
its made no diff yet
increased sleep if nothing is returned
- this gives u icloud synced pub/privkeys
- per host!!
made it load the key's string representation (if present) into the textboxes to tell the user that the key is there
made the privkey box a securefield to show .... instead of the key
added a handler.go() to handler disconnecting if connected and choosing password/pubkey auth
- really cleaned up the view code
added getPubkey(_: SecKey) to keychainmanager
added SSHErrors - commfail, connectionFail, backenderror
added AuthError - rejectedCreds, notconnected
added KeyError - importpub/privError, pub/priv rejected
made most functions throw in sshhandler
fix memoryLayoutsize(ofvalue to buffer.count in testexec
[weak self] in the async loop to prevent memory leaks i guess
added loccritical for easy red logging
added a cleanup to run after 10s clearing memory for keys and files
remove timer code
remove write(1 to stop console echo
open links
image -> systemImage
typing works
so basically it just stopped tryna read from the server once the server was silent for a sec
so then i removed the return and made it an optional if let and wait 10_000 us if nothing comes back
this is so goood
changed it to get 256 bytes from server
rewrote authWithPubkey() to not write files and take data direcytly
remove read loop (comment adding it)
readfromchannel returns string
using swifterm to do terminal emulation
pressing write sends ls\n
terminal view gets sshhandler instead of js text
sumplify writetochannel, takes a string
implemented a terminalviewdelegate that some rason never gets to do anythoing
added a hostkey checker - fatalerror rn
reordered ui in connection view to make more sense
added sections
moved connect button to toolbar, disconect is there too!
hostsview update
add more stuff to Host
prevent host from changin in debug
prettify the list - show uuid if no address set
save changes to Host when closing connectionView
fix connectionView button being disabled sometimes
use a different button to add a host instead of the toolbar one when its empty bc of ! unwrap crash
animations on adding/removing hosts
hostmanager for loading and saving hosts to defaults
host.debug/.blank as static vars
fix crash on disconnect by checking for connection in timer before checking if channel is open
keychain layer? to convert ed25519 to seckey and back for keychain storage
generate ed25519 via cryptokit
ok mb before, but it fking works!!!!!
like i can login to my mac from sshshell come on
just need to figure out how to type and what to do with all the [0m[49m[39m]133;B[K[?25h[?2004h
a debugHost for reusable root:root@localhost:2222
blankHost for - well - blank hosts
gonna add userdefaults
added iclodu entitlement
added viewmodifier: foregroundStyle if 17.0+ and foregroundColor for else