id = "gstm" name = "gSTM" homepage = "https://sourceforge.net/projects/gstm/" description = "gSTM is a front-end for managing SSH-tunneled port redirects." executables = ["gstm"] platforms = ["linux"] [dotfiles] # From the official source tarball # (https://sourceforge.net/projects/gstm/files/gSTM/gSTM-1.2/gstm-1.2.tar.gz), # src/main.c: # # gstmdir = malloc(strlen(getenv("HOME"))+6+1); # strcpy(gstmdir, getenv("HOME")); # strcat(gstmdir,"/.gSTM"); # # $HOME joined with ".gSTM" and nothing else — no XDG variable is read, so this # is the literal path rather than a named root, and the capitals in the # directory name are as gSTM writes them. # # The directory holds one XML file per tunnel: src/conffile.c writes "%s.gstm" # per configuration and scans the directory for that suffix when it starts. # There is no cache, index or state file, so the whole directory is the config. paths = ["~/.gSTM/"] # No credential. conffile.c writes exactly name, host, port, login, privkey, # autostart and the per-redirect type/port/host — and `privkey` is a *path* to # a key file, not the key. Authentication is left to ssh and the askpass dialog # at connect time; the only mention of a password anywhere in the source is the # NumberOfPasswordPrompts=1 option it passes to ssh. secret = [] # No machine_lines: a .gstm file is XML, which this schema's `format` cannot # parse. The one machine-local value in it is `privkey`, the absolute path to # the key file on this machine; a consumer able to read the XML should expect # to rewrite it.