Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 2 Dec 2010 11:57:22 -0800
From:      Weongyo Jeong <weongyo.jeong@gmail.com>
To:        Jung-uk Kim <jkim@freebsd.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r216091 - head/sys/dev/usb
Message-ID:  <20101202195722.GD2033@weongyo>
In-Reply-To: <201012011858.19748.jkim@FreeBSD.org>
References:  <201012010351.oB13p6du062509@svn.freebsd.org> <201012011858.19748.jkim@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Dec 01, 2010 at 06:58:18PM -0500, Jung-uk Kim wrote:
> On Tuesday 30 November 2010 10:51 pm, Weongyo Jeong wrote:
> > Author: weongyo
> > Date: Wed Dec  1 03:51:06 2010
> > New Revision: 216091
> > URL: http://svn.freebsd.org/changeset/base/216091
> >
> > Log:
> >   Explicitly UP and DOWN the usbus interfaces (IFT_USB) when it's
> > attached or detached.  Normally it should be changed through user
> > land ioctl(2) system calls but it looks there's no apps for USB and
> > no need.
> >
> >   With this patch, libpcap would detect the usbus interfaces
> > correctly and tcpdump(1) could dump the USB packets into PCAP
> > format with -w option. However it couldn't print the output to
> > console because there's no printer-routine at tcpdump(1).
> 
> I have written a very hackish USB packet printer for tcpdump based on 
> Linux version.
> 
> http://people.freebsd.org/~jkim/tcpdump-usb.diff

Looks good to me.

> Note we can only print headers as Linux version does.
> 
> Are you planning on adopting DLT_USB_LINUX or DLT_USB_LINUX_MMAPPED or 
> applying for our own DLT, BTW?

Frankly speaking, not sure yet.  As you know, DLT_USB_LINUX and
DLT_USB_LINUX_MMAPPED types are very specific only for Linux and each
types has different structure size (48 bytes and 64 bytes).  IMHO linux
thought their own format only instead of thinking/defining a generic
format.

I think we have some cases we could select as follows:

  1) Define a generic USB packet header form and make a consensus with
     linux guys then uses DLT_USB type.
  2) Define DLT_USB_BSD and write our own code.
  3) Changes `struct usbpf_pkthdr' to be compatible with linux format
     though it's expected to have some wasted variables (e.g. time
     stamp).

regards,
Weongyo Jeong



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20101202195722.GD2033>