Nicholas J Humfrey > Net-SAP-0.10 > Net::SAP

Download:
Net-SAP-0.10.tar.gz

Dependencies

Annotate this POD

CPAN RT

Open  0
View/Report Bugs
Module Version: 0.10   Source  

NAME ^

Net::SAP - Session Announcement Protocol (rfc2974)

SYNOPSIS ^

  use Net::SAP;

  my $sap = Net::SAP->new( 'ipv6-global' );

  my $packet = $sap->receive();

  $sap->close();

DESCRIPTION ^

Net::SAP allows receiving and sending of SAP (RFC2974) multicast packets over IPv4 and IPv6.

METHODS

$sap = Net::SAP->new( $group )

The new() method is the constructor for the Net::SAP class. You must specify the SAP multicast group you want to join:

        ipv4-local
        ipv4-org
        ipv4-global
        ipv6-node
        ipv6-link
        ipv6-site
        ipv6-org
        ipv6-global

Alternatively you may pass the address of the multicast group directly. When the Net::SAP object is created, it joins the multicast group, ready to start receiving or sending packets.

$packet = $sap->receive()

This method blocks until a valid SAP packet has been received. The packet is parsed, decompressed and returned as a Net::SAP::Packet object.

$sap->send( $data )

This method sends out SAP packet on the multicast group that the Net::SAP object to bound to. The $data parameter can either be a Net::SAP::Packet object, a Net::SDP object or raw SDP data.

Passing a Net::SAP::Packet object gives the greatest control over what is sent. Otherwise default values will be used.

If no origin_address has been set, then it is set to the IP address of the first network interface.

Packets greater than 1024 bytes will not be sent. This method returns 0 if packet was sent successfully.

$group = $sap->group()

Returns the address of the multicast group that the socket is bound to.

$ttl = $sap->ttl( [$value] )

Gets or sets the TTL of outgoing packets.

$sap->close()

Leave the SAP multicast group and close the socket.

TODO ^

add automatic detection of IPv6 origin address
add method of choosing the network interface to use for multicast
Packet decryption and validation

SEE ALSO ^

Net::SAP::Packet, Net::SDP, perl(1)

http://www.ietf.org/rfc/rfc2974.txt

BUGS ^

Please report any bugs or feature requests to bug-net-sap@rt.cpan.org, or through the web interface at http://rt.cpan.org. I will be notified, and then you will automatically be notified of progress on your bug as I make changes.

AUTHOR ^

Nicholas J Humfrey, njh@cpan.org

COPYRIGHT AND LICENSE ^

Copyright (C) 2004-2006 University of Southampton

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.005 or, at your option, any later version of Perl 5 you may have available.

syntax highlighting: