aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-usb.c
AgeCommit message (Collapse)AuthorFilesLines
2007-01-30From Paolo Abeni: update to support the new DLT_USB_LINUX format header.Guy Harris1-279/+212
Modified to support the header as a pseudo_header rather than as part of the packet data. Fixed some calls that fetch data from the USB packet to fetch it in little-endian byte order. Got rid of redundant code to get conversation-specific data (the get_usb_conv_info() call already does that). For control packets, only parse the setup information if setup_flag is 0. Don't interpret a control packet as a standard request unless the setup type is "Standard". svn path=/trunk/; revision=20632
2007-01-08Commit my USB changes (change address handling)Jörg Mayer1-60/+125
svn path=/trunk/; revision=20346
2006-11-07from albert chinRonnie Sahlberg1-6/+6
The Solaris C compiler, among others, do not allow anonymous unions. Patch attached. thanks albert svn path=/trunk/; revision=19852
2006-11-01update the list of defined application classes and list all the official ↵Ronnie Sahlberg1-1/+18
ones from www.usb.org svn path=/trunk/; revision=19766
2006-10-26break request/response matching to track transactions out from the CONTROL ↵Ronnie Sahlberg1-36/+40
handler to use the same code for ALL pdu types svn path=/trunk/; revision=19701
2006-10-22add a dissector table for class specific control input/output pdusRonnie Sahlberg1-4/+36
implement class specific control commands : reset and getmaxlun for mass storage now with a better understanding of the problem space for usb and device classes we can start cleaning the code up and make it nice svn path=/trunk/; revision=19659
2006-10-22add tracking of interface class for CONTROL_INPUT as well as existing ↵Ronnie Sahlberg1-18/+22
support for BULK INPUT/OUTPUT svn path=/trunk/; revision=19658
2006-10-22fix some endianess issuesRonnie Sahlberg1-8/+8
svn path=/trunk/; revision=19657
2006-10-22dissect the individual bits in the CONFIDURATION descriptor field for the ↵Ronnie Sahlberg1-2/+28
endpoint address svn path=/trunk/; revision=19656
2006-10-21the flags are FT_BOOLEAN not FT_UINT8Ronnie Sahlberg1-2/+2
svn path=/trunk/; revision=19650
2006-10-21prettify the flags field and power consumption for CONFIGURATION DESCRIPTORRonnie Sahlberg1-3/+44
dissect the self-powered and the remote-wakeup flags show the powerconsumption in mA svn path=/trunk/; revision=19649
2006-10-18new dissector : usb mass storageRonnie Sahlberg1-8/+3
this is a wrapper protocol to store SCSI frames inside usb bulk data transfers the dissector is far from complete but does track ITL and ITLQ structures and will also call the SCSI dissector to dissect the SCSI CDB. what is still missing is handling of data in/out and scsi responses at least it will now display the SCSI CDB and dissect it. woohoo svn path=/trunk/; revision=19589
2006-10-18create a dissector table for the bulk input/output packet typesRonnie Sahlberg1-0/+25
svn path=/trunk/; revision=19588
2006-10-18move some defines to packet-usb.h so that they can be shared with other ↵Ronnie Sahlberg1-33/+3
dissectors svn path=/trunk/; revision=19587
2006-10-17now when we do dissect the descriptors:Ronnie Sahlberg1-2/+121
add tracking so that when we find an interface descriptor which tells us the device class we also create a conversation for each and every endpoint for that interface and also let all conversations (one for each endpoint) share the same usb conversation info structure. store the device type inside this conv_info structure add the required code to manage BULK data pdus and have it for now only display what kind of bulk data is contained (interface class as snooped from the descriptors) we now only need a class dissector table we can fork off into from the bulk dissector in usb and then an external usb_masstorage dissector that registers itself as a mass storage device and we should be all set to dissect the scsi layer being transported atop usb svn path=/trunk/; revision=19575
2006-10-17add a define for the "no endpoint" constant used to represent unknown or ↵Ronnie Sahlberg1-9/+15
host side endpoint used for conversations ansp provide the desired port/endpoints in the call to get/create a conversation so that we later when we see the a descriptor that says Endpoint X is using class Y we need tis to register that certain endpoints are used for mass storage (or other applications) svn path=/trunk/; revision=19573
2006-10-16correct the little / big endian commentRonnie Sahlberg1-2/+2
svn path=/trunk/; revision=19558
2006-10-16dissect a lot more of the descriptors so that we can finally see which ↵Ronnie Sahlberg1-3/+273
endpoints are used for what purpose svn path=/trunk/; revision=19557
2006-10-16Display the skipped 4 bytes from the header as setup (seeJörg Mayer1-0/+6
struct usb_header). Just display it as a big endian number (I don't have a spec at hand). svn path=/trunk/; revision=19556
2006-10-16break finding/creating a conversation out into its own helper (which makes ↵Ronnie Sahlberg1-110/+266
it easier later when we find an endpoint description that tells us some other endpoint is used for massstorage) implement some more descriptors svn path=/trunk/; revision=19555
2006-10-16Finish dissection of GET DESCRIPTOR for the devicetype: DEVICE.Ronnie Sahlberg1-6/+148
This dissector should be extended to dissect all other descriptors for all other device types as well. svn path=/trunk/; revision=19554
2006-10-16add some variables to the task structure so that we can pass TYPE/INDEX from ↵Ronnie Sahlberg1-0/+16
the GET DESCRIPTOR request to the response dissector (we need this in order to know how to dissect the response?) svn path=/trunk/; revision=19553
2006-10-15- gcc dies on "default: }", add a ;Jörg Mayer1-1/+2
- proto_register usb instead of eth. svn path=/trunk/; revision=19542
2006-10-15populate the info column with the request type and whetehr it is a request ↵Ronnie Sahlberg1-0/+12
or a response svn path=/trunk/; revision=19541
2006-10-15add tracking of request/responses for CONTROL INPUT so we can start passing ↵Ronnie Sahlberg1-23/+68
parameters from request to response and dissect response data svn path=/trunk/; revision=19540
2006-10-15add a new port type for usb endpointsRonnie Sahlberg1-57/+180
start introducing conversations to the usb dissector so that we can start tracking requests/responses which we need to in order to dissect for example the data returned by a device to a GET DESCRIPTORS call svn path=/trunk/; revision=19539
2006-10-15start dissecting the setup headersRonnie Sahlberg1-28/+119
dissect GET DESCRIPTOR as an example on how to add such dissectors svn path=/trunk/; revision=19538
2006-10-14rename some fields in the setup blob to use the same names as in the standardRonnie Sahlberg1-13/+69
add dissection of the bmRequestType bitmap svn path=/trunk/; revision=19527
2006-10-14put the packet type in the summary lineRonnie Sahlberg1-0/+4
svn path=/trunk/; revision=19526
2006-10-14create a new address type AT_USB and start populating the packet list Ronnie Sahlberg1-0/+26
with nice data svn path=/trunk/; revision=19524
2006-10-12From Paolo Abeni:Jaap Keuter1-10/+10
The attached patch fix parsing of the setup header in the usb dissector. Currently the size of the field specified into proto_tree_add_item call was wrong. svn path=/trunk/; revision=19503
2006-10-11from Paolo ARonnie Sahlberg1-10/+10
update the usb dissector to reflect the recent change in the pcap format svn path=/trunk/; revision=19491
2006-10-10u_int32_t gives error on Windows assuming guint32 will do.Anders Broman1-9/+9
svn path=/trunk/; revision=19482
2006-10-10From Paolo AbeniRonnie Sahlberg1-0/+212
USB dissector svn path=/trunk/; revision=19480