GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Net::SIP::Dropper(3) User Contributed Perl Documentation Net::SIP::Dropper(3)
 

Net::SIP::Dropper - drops SIP messages based on callback

    use Net::SIP::Dropper::ByIPPort;
    my $drop_by_ipport = Net::SIP::Dropper::ByIPPort->new(
        database => '/path/to/database.drop',
        methods => [ 'REGISTER', '...', '' ],
        attempts => 10,
        interval => 60,
    );
    use Net::SIP::Dropper::ByField;
    my $drop_by_field = Net::SIP::Dropper::ByField->new(
        methods => [ 'REGISTER', '...', '' ],
        'From' => qr/sip(?:vicious|sscuser)/,
        'User-Agent' => qr/^friendly-scanner$/,
    );
    my $drop_subscribe = sub {
        my ($packet,$leg,$from) = @_;
        # drop all subscribe requests and responses
        return $packet->method eq 'SUBSCRIBE' ? 1:0;
    };
    my $dropper = Net::SIP::Dropper->new(
        cbs => [ $drop_by_ipport, $drop_by_field, $drop_subscribe ]);
    my $chain = Net::SIP::ReceiveChain->new(
        [ $dropper, ... ]
    );

Drops messages. This means, does no further processing in the Net::SIP chain and does not send something back if the incoming message match the settings.
Some useful droppers are defined in Net::SIP::Dropper::ByIpPort and Net::SIP::Dropper::ByField.

new ( ARGS )
ARGS is a hash with key "cb" or "cbs". "cb" is a single callback to be processed, "cbs" is an arrayref with callbacks. If one of the callbacks returns true the message will be dropped. If all callbacks return false the message will be forwarded in the chain.
Returns a new dropper object to be used in the chain.
2014-01-27 perl v5.28.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.