⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 descl4.pm

📁 SinFP是一种新的识别对方计算机操作系统类型的工具
💻 PM
字号:
## $Id: DescL4.pm,v 1.3.2.7 2006/11/04 12:29:29 gomor Exp $#package Net::Packet::DescL4;use strict;use warnings;use Carp;require Net::Packet::Desc;our @ISA = qw(Net::Packet::Desc);__PACKAGE__->cgBuildIndices;use Net::Packet::Consts qw(:desc :layer);use Socket;require Socket6;require Net::Write::Layer4;sub new {   my $self = shift->SUPER::new(      protocol => NP_DESC_IPPROTO_TCP,      family   => NP_LAYER_IPv4,      @_,   );   confess("@{[(caller(0))[3]]}: you must pass `target' parameter\n")      unless $self->target;   my $families = {      NP_LAYER_IPv4() => AF_INET(),      NP_LAYER_IPv6() => AF_INET6(),   };   my $nwrite = Net::Write::Layer4->new(      dst      => $self->target,      family   => $families->{$self->family},      protocol => $self->protocol,   );   $nwrite->open;   $self->_io($nwrite);   $self;}## Helpers#sub _isFamily    { shift->family eq shift          }sub isFamilyIpv4 { shift->_isFamily(NP_LAYER_IPv4) }sub isFamilyIpv6 { shift->_isFamily(NP_LAYER_IPv6) }sub _isProtocol      { shift->protocol eq shift                   }sub isProtocolTcp    { shift->_isProtocol(NP_DESC_IPPROTO_TCP)    }sub isProtocolUdp    { shift->_isProtocol(NP_DESC_IPPROTO_UDP)    }sub isProtocolIcmpv4 { shift->_isProtocol(NP_DESC_IPPROTO_ICMPv4) }1;__END__=head1 NAMENet::Packet::DescL4 - object for a transport layer (layer 4) descriptor=head1 SYNOPSIS   require Net::Packet::DescL4;   # Get NP_DESC_* constants   use Net::Packet::Consts qw(:desc :layer);   # Usually, you use it to send TCP and UDP frames over IPv4   my $d4 = Net::Packet::DescL4->new(      target   => '192.168.0.1',      protocol => NP_DESC_IPPROTO_TCP,      family   => NP_LAYER_IPv4,   );   $d4->send($rawStringToNetwork);=head1 DESCRIPTIONSee also B<Net::Packet::Desc> for other attributes and methods.=head1 ATTRIBUTES=over 4=item B<target>IPv4 address of the target host. You must set it to be able to send frames.=item B<protocol>Transport protocol to use, see NP_DESC_IPPROTO_* constants in B<Net::Packet::Desc>. You must set it to be able to send frames.=item B<family>The family address of B<target> attribute. It is either B<NP_LAYER_IPv4> or B<NP_LAYER_IPv6>.=back=head1 METHODS=over 4=item B<new>Create the object, using default B<$Env> object values for B<dev>, B<ip>, B<ip6> and B<mac> (see B<Net::Packet::Env>). When the object is created, the B<$Env> global object has its B<desc> attributes set to it. You can avoid this behaviourby setting B<noDescAutoSet> in B<$Env> object (see B<Net::Packet::Env>).Default values for attributes:dev:      $Env->devip:       $Env->ipip6:      $Env->ip6mac:      $Env->macprotocol: NP_DESC_IPPROTO_TCPfamily:   NP_LAYER_IPv4=item B<isFamilyIpv4>=item B<isFamilyIpv6>=item B<isFamilyIp> - either one of two previousHelper method to know about the layer 3 type.=item B<isProtocolTcp>=item B<isProtocolUdp>=item B<isProtocolIcmpv4>Returns if the protocol attribute is of specified type.=back=head1 AUTHORPatrice E<lt>GomoRE<gt> Auffret=head1 COPYRIGHT AND LICENSECopyright (c) 2004-2006, Patrice E<lt>GomoRE<gt> AuffretYou may distribute this module under the terms of the Artistic license.See LICENSE.Artistic file in the source distribution archive.=head1 RELATED MODULESL<NetPacket>, L<Net::RawIP>, L<Net::RawSock>=cut

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -