Michael Chapman > Net-CDP-0.09 > Net::CDP::Address

Download:
Net-CDP-0.09.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  1
Open  0
View/Report Bugs
Module Version: 1.8   Source  

NAME ^

Net::CDP::Address - Cisco Discovery Protocol (CDP) port address

SYNOPSIS ^

  use Net::CDP::Address qw(:protos);
  
  # Constructors
  $address = new Net::CDP::Address($ip);
  $address = new Net::CDP::Address($protocol, $packed);
  $cloned  = clone $address;
  
  # Object methods
  $protocol = $address->protocol;
  $address  = $address->address;
  $packed   = $address->packed;

DESCRIPTION ^

A Net::CDP::Address object represents a single addres in the Addresses or Management Addresses field of a CDP packet. Net::CDP::Address objects are immutable.

CONSTRUCTORS ^

new
    $address = new Net::CDP::Address($ip)
    $address = new Net::CDP::Address($protocol, $packed)

Returns a new Net::CDP::Address object.

If only one argument is provided, new will attempt to parse it as an IPv4 or IPv6 address.

Otherwise, you must specify the protocol and the bytes that comprise the address. $protocol should be one of the following constants:

    CDP_ADDR_PROTO_CLNP
    CDP_ADDR_PROTO_IPV4
    CDP_ADDR_PROTO_IPV6
    CDP_ADDR_PROTO_DECNET
    CDP_ADDR_PROTO_APPLETALK
    CDP_ADDR_PROTO_IPX
    CDP_ADDR_PROTO_VINES
    CDP_ADDR_PROTO_XNS
    CDP_ADDR_PROTO_APOLLO

These constants can be exported using the tag :protos. See Exporter.

$packed must be a string consisting of the bytes that make up the address in network order. You may find the pack function useful in generating this string.

clone
    $cloned = clone $packet

Returns a deep copy of the supplied Net::CDP::Address object.

OBJECT METHODS ^

protocol
    $protocol = $address->protocol()

Returns this address's protocol.

address
    $ip = $address->address()

If this is an IPv4 or IPv6 address, returns its standard string representation, otherwise undef.

packed
    $packed = $address->packed()

Returns this address as a string consisting of the bytes that comprise it in network order.

SEE ALSO ^

Net::CDP

AUTHOR ^

Michael Chapman, <cpan@very.puzzling.org>

COPYRIGHT AND LICENSE ^

Copyright (C) 2005 by Michael Chapman

libcdp is released under the terms and conditions of the GNU Library General Public License version 2. Net::CDP may be redistributed and/or modified under the same terms as Perl itself.

syntax highlighting: