SYNOPSIS

irdadump [ -b ] [ -c n ] [ -d ] [ -x ] [ -s n ] [ -t ] [ -l ] [ -v ] [ -i device ]

OPTIONS

-b dump bytes in columns

-c n set snapcols for byte printing with -b option

-d prints the time difference between the current and the previous frame

-x dump frame (bytes and ascii)

-s n set snaplen for -b and -x option

-t force TTP decoding of unknown connections

-l set line buffering on output file

-v verbose

-i device interface

DESCRIPTION

irdadump is a tool for monitoring the IrDA traffic on one or more links. Just write "make" to compile the program. When you run the program, you should be able to see the IrDA traffic (if any).

One advantage of implementing IrDA device drivers as network device drivers is that you should be able to attach sniffers to the device (or actually the packet type). That way, it is possible to use a really handy utility called irdadump (instead of tcpdump). This will make debugging MUCH easier. Linux-2.2 implements the BPF (Berkeley Packet Filter), so its possible to filter out exactly the frames you want to see. You may use hostname to separate different machines names. Or grep to filter the output, too.

irdadump must be run as root or installed setuid root, as it requires root privileges.

EXAMPLES

The output should look something like this:

/ # ./irdadump
20:11:45.412199 xid:cmd 0x0015c23b > 0xffffffff S=6 s=0
20:11:45.492137 xid:cmd 0x0015c23b > 0xffffffff S=6 s=1
20:11:45.572137 xid:cmd 0x0015c23b > 0xffffffff S=6 s=2
20:11:45.652208 xid:cmd 0x0015c23b > 0xffffffff S=6 s=3
20:11:45.732137 xid:cmd 0x0015c23b > 0xffffffff S=6 s=4
20:11:45.812137 xid:cmd 0x0015c23b > 0xffffffff S=6 s=5
20:11:45.892175 xid:cmd 0x0015c23b > 0xffffffff S=6 s=255 Linux
20:11:45.902362 xid:rsp 0xf7be8388 < 0x0015c23b S=6 s=5 ACTiSYS IR100M
20:11:48.412197 xid:cmd 0x0015c23b > 0xffffffff S=6 s=0
20:11:48.492656 xid:cmd 0x0015c23b > 0xffffffff S=6 s=1
20:11:48.572177 xid:cmd 0x0015c23b > 0xffffffff S=6 s=2
20:11:48.652169 xid:cmd 0x0015c23b > 0xffffffff S=6 s=3
20:11:48.732177 xid:cmd 0x0015c23b > 0xffffffff S=6 s=4
20:11:48.812153 xid:cmd 0x0015c23b > 0xffffffff S=6 s=5
20:11:48.822371 xid:rsp 0xf7be8388 < 0x0015c23b S=6 s=4 ACTiSYS IR100M

15 packets received by filter

Turning on the "-d" option will make irdadump print the time difference between the current and the previous frame:

/ # ./irdadump -d
20:11:18.412475 (0982.06 ms) xid:cmd 0x0015c23b > 0xffffffff S=6 s=0
20:11:18.492345 (0079.87 ms) xid:cmd 0x0015c23b > 0xffffffff S=6 s=1
20:11:18.572376 (0080.03 ms) xid:cmd 0x0015c23b > 0xffffffff S=6 s=2
20:11:18.652979 (0080.60 ms) xid:cmd 0x0015c23b > 0xffffffff S=6 s=3
20:11:18.732354 (0079.38 ms) xid:cmd 0x0015c23b > 0xffffffff S=6 s=4
20:11:18.755093 (0022.74 ms) xid:rsp 0xf7be8388 < 0x0015c23b S=6 s=3 ACTiSYS IR100M
20:11:18.812350 (0057.26 ms) xid:cmd 0x0015c23b > 0xffffffff S=6 s=5
20:11:18.892518 (0080.17 ms) xid:cmd 0x0015c23b > 0xffffffff S=6 s=255 Linux
20:11:21.412486 (2519.97 ms) xid:cmd 0x0015c23b > 0xffffffff S=6 s=0
20:11:21.492395 (0079.91 ms) xid:cmd 0x0015c23b > 0xffffffff S=6 s=1
20:11:21.572368 (0079.97 ms) xid:cmd 0x0015c23b > 0xffffffff S=6 s=2
20:11:21.652405 (0080.04 ms) xid:cmd 0x0015c23b > 0xffffffff S=6 s=3
20:11:21.732458 (0080.05 ms) xid:cmd 0x0015c23b > 0xffffffff S=6 s=4

irdadump must be run as root or installed setuid root, as it requires root privileges.

irdadump -d -x -s 256 will check the contents of the frames. This should tell us if the frames have malformed content, or if the irda stack is doing something wrong.

DIAGNOSTICS

N.N.

BUGS

N.N.

RELATED TO irdadump…

irattach(8), irdaping(8), irdadump(8), findchip(8), irpsion5(8), modprobe(8)

Linux/IrDA Project http://irda.sourceforge.net -*- Linux/IrDA-Tutorial http://www.hpl.hp.com/personal/Jean_Tourrilhes/IrDA/index.html -*- Infrared-HOWTO http://tuxmobil.org/howtos.html

AUTHOR

This manual page is written by Werner Heuser <[email protected]>. It is based on the READMEs from irda-utils by the Linux/IrDA Project and the Linux/IrDA-Tutorial.

COPYRIGHT

Copyright (c) 2001 Werner Heuser

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License (GFDL), Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts and no Back-Cover Texts.