NAME
ClusterSSH::Host - Object representing a host.
SYNOPSIS
use ClusterSSH::Host;
my $host = ClusterSSH::Host->new({
hostname => 'hostname',
});
my $host = ClusterSSH::Host->parse_host_string('username@hostname:1234');
DESCRIPTION
Object representing a host. Include details to contact the host such as hostname/ipaddress, username and port.
METHODS
- $host=ClusterSSH::Host->new ({ hostname => 'hostname' })
-
Create a new host object. 'hostname' is a required arg, 'username' and 'port' are optional. Raises exception if an error occurs.
- $host->get_hostname
- $host->get_username
- $host->get_port
- $host->get_master
- $host->get_geometry
- $host->get_type
-
Return specific details about the host
- $host->set_username
- $host->set_port
- $host->set_master
- $host->set_geometry
- $host->set_type
-
Set specific details about the host after its been created.
- get_realname
-
If the server name provided is not an IP address (either IPv4 or IPv6) attempt to resolve it and retun the discovered names.
- get_givenname
-
Alias to get_hostname, for use when
get_realname
might return something different - parse_host_string
-
Given a host string, returns a host object. Parses hosts such as
- check_ssh_hostname
-
Check the objects hostname to see whether or not it may be configured within the users $HOME/.ssh/config configuration file
- host
- 192.168.0.1
- user@host
- user@192.168.0.1
- host:port
- [1234:1234:1234::4567]:port
- 1234:1234:1234::4567
and so on. Cope with IPv4 and IPv6 addresses - raises a warning if the IPv6 address is ambiguous (i.e. in the last example, is the 4567 part of the IPv6 address or a port definition?) and assumes it is part of address. Use brackets to avoid seeing warning.
AUTHOR
Duncan Ferguson, <duncan_j_ferguson at yahoo.co.uk>
LICENSE AND COPYRIGHT
Copyright 1999-2010 Duncan Ferguson.
This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.
See http://dev.perl.org/licenses/ for more information.