tcpdump mailing list archives
Re: DLT_ request
From: Scott Deandrea <sdeandrea () apple com>
Date: Wed, 04 Jan 2017 16:19:36 -0800
Hi Guy, Any update on allocating a DLT value? Perhaps #define DLT_MACOS_USB 266? —scott
On Dec 13, 2016, at 8:38 AM, Scott Deandrea <sdeandrea () apple com> wrote: Yes, if there are fewer tiers of hubs, the unused nibbles will be zero. Correct, the padding is only added if frameLength isn’t a multiple of 4. This should be considered the final version. The timestamps are in Mach Absolute Time Units (https://developer.apple.com/library/content/qa/qa1398/_index.html <https://developer.apple.com/library/content/qa/qa1398/_index.html>). —scottOn Dec 12, 2016, at 9:49 PM, Guy Harris <guy () alum mit edu <mailto:guy () alum mit edu>> wrote: On Dec 12, 2016, at 6:11 PM, Scott Deandrea <sdeandrea () apple com <mailto:sdeandrea () apple com>> wrote:The bus number is 0 based and the port numbers are 1 based.So if there are fewer than 6 ports in the route, the unused nibbles will be zero.I decided to implement isochronous transfers today and changed the structure slightly: struct { // Control information uint32_t frameHeaderLength; // 28 // Frame information uint32_t frameLength; // Amount of data sent/received this frame uint32_t frameStatus; // IOReturn result of the I/O this frame uint64_t frameNumber; // Frame number on which this was scheduled/executed by the controller uint64_t ioTimestamp; // Time in which the frame completed } __attribute__((packed, aligned (sizeof(uint32_t)))); Therefore, the isochronous format for a request with type kAppleUSBHostPacketFilterRequestComplete is as follows: Link Header padding, if required to force 4-byte alignment Isochronous Frame[0] Header (frameHeaderLength bytes in length) Isochronous Frame[0] Data (frameLength bytes) … padding, if required to force 4-byte alignment Isochronous Frame[linkHeader.ioFrameCount - 1] Header (aligned to 4 bytes, frameHeaderLength bytes in length) Isochronous Frame[linkHeader.ioFrameCount - 1] Data (frameLength bytes)So the headers and data are interleaved; the padding would presumably be needed only if frameLength isn't a multiple of 4. Is this the final version, or should the format of a payload of a packet for an isochronous endpoint be left unspecified for now until it's finalized? Also, what are the formats of the time stamps? What are the units, and is there a specified origin or are they just relative to an unspecified base time?
_______________________________________________ tcpdump-workers mailing list tcpdump-workers () lists tcpdump org https://lists.sandelman.ca/mailman/listinfo/tcpdump-workers
Current thread:
- Re: DLT_ request Scott Deandrea (Jan 05)
- Re: DLT_ request Guy Harris (Jan 06)
- Re: DLT_ request Scott Deandrea (Jan 07)
- Re: DLT_ request Guy Harris (Jan 07)
- Re: DLT_ request Scott Deandrea (Jan 08)
- Re: DLT_ request Scott Deandrea (Jan 07)
- Re: DLT_ request Guy Harris (Jan 06)
- <Possible follow-ups>
- Re: DLT_ request Guy Harris (Jan 05)
- Re: DLT_ request Scott Deandrea (Jan 05)
- Re: DLT_ request Guy Harris (Jan 05)
- Re: DLT_ request Scott Deandrea (Jan 05)
- Re: DLT_ request Scott Deandrea (Jan 05)
- Re: DLT_ request Guy Harris (Jan 05)