Provided by: libnetpacket-perl_1.4.4-1_all bug

NAME

       NetPacket::USBMon - Assemble and disassemble USB packets captured via Linux USBMon
       interface.

VERSION

       version 1.4.4

SYNOPSIS

         use NetPacket::USBMon;

         $usb = NetPacket::USBMon->decode($raw_pkt);

DESCRIPTION

       "NetPacket::USBMon" is a NetPacket decoder of USB packets captured via Linux USBMon
       interface.

   Methods
       "NetPacket::USBMon->decode([RAW PACKET])"
           Decode a USB packet.

   Instance data
       The instance data for the "NetPacket::UDP" object consists of the following fields.

       id  An in-kernel address of the USB Request Block (URB). Stays the same for the
           transaction submission and completion.

           Might be truncatted when reading a 64-bit capture with 32-bit file.

       type
           URB type. Character 'S', 'C' or 'E', for constants USB_TYPE_SUBMISSION,
           USB_TYPE_CALLBACK or USB_TYPE_ERROR.

       xfer_type
           Transfer type. USB_XFER_TYPE_ISO, USB_XFER_TYPE_INTR, USB_XFER_TYPE_CONTROL or
           USB_XFER_TYPE_BULK.

       ep  Endpoint identification.

           num     Endpoint number.

           dir     Transfer direction. "IN" or "OUT".

       devnum
           Device address.

       busnum
           Bus number.

       flag_setup
           Indicates whether setup is present and makes sense.

       flag_data
           Indicates whether data is present and makes sense.

       ts_sec
           Timestamp seconds since epoch. Subject to truncation with 32-bit Perl, which should be
           fine until 2038.

       ts_usec
           Timestamp microseconds.

       status
           URB status. Negative errno.

       length
           Length of data (submitted or actual).

       len_cap
           Delivered length

       setup
           Only present for packets with setup_flag turned on.  Some contents are dependent on
           actual request type.

           bmRequestType
           bRequest
           wValue
           wIndex
           wLength
       iso Only present for isochronous transfers.

           error_count
           numdesc
       interval
           Isochronous packet response rate.

       start_frame
           Only applicable to isochronous transfers.

       xfer_flags
           A copy of URB's transfer_flags.

       ndesc
           Actual number of isochronous descriptors.

       data
           Packet payload.

   Exports
       default
           none

       exportable
           USB_TYPE_SUBMISSION, USB_TYPE_CALLBACK, USB_TYPE_ERROR, USB_XFER_TYPE_ISO,
           USB_XFER_TYPE_INTR, USB_XFER_TYPE_CONTROL, USB_XFER_TYPE_BULK,
           USB_FLAG_SETUP_IRRELEVANT, USB_FLAG_SETUP_RELEVANT, USB_FLAG_DATA_ERROR,
           USB_FLAG_DATA_INCOMING, USB_FLAG_DATA_OUTGOING, USB_FLAG_DATA_PRESENT, USB_TYPE_VENDOR

       tags
           The following tags group together related exportable items.

           ":types"
               USB_TYPE_SUBMISSION, USB_TYPE_CALLBACK, USB_TYPE_ERROR

           ":xfer_types"
               USB_XFER_TYPE_ISO, USB_XFER_TYPE_INTR, USB_XFER_TYPE_CONTROL, USB_XFER_TYPE_BULK

           ":setup_flags"
               USB_FLAG_SETUP_IRRELEVANT, USB_FLAG_SETUP_RELEVANT

           ":data_flags"
               USB_FLAG_DATA_ERROR, USB_FLAG_DATA_INCOMING, USB_FLAG_DATA_OUTGOING,
               USB_FLAG_DATA_PRESENT

           ":setup_types"
               USB_TYPE_VENDOR

           ":ALL"
               All the above exportable items.

COPYRIGHT

       Copyright (c) 2013 Lubomir Rintel.

       This module is free software. You can redistribute it and/or modify it under the same
       terms as Perl itself.

AUTHOR

       Lubomir Rintel <lkundrak@v3.sk>