Parses the config usually found in ~/.ssh/config or /etc/ssh/ssh_config.
Only Host, HostName, User, Port, IdentityFile, HostKeyAlgorithms, ProxyCommand, LocalForward, RemoteForward and DynamicForward is implemented at
this point.
Usage
Example usage
package main import ( "fmt" "github.com/mikkeloscar/sshconfig" ) func main() { hosts, err := ParseSSHConfig("/path/to/ssh_config") if err != nil { fmt.Println(err) } for _, host := range hosts { fmt.Printf("Hostname: %s", host.HostName) } }
LICENSE
Copyright (C) 2016 Mikkel Oscar Lyderik Larsen & Contributors
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.