[BACK]Return to TODO CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / dist / libpcap

File: [cvs.NetBSD.org] / src / dist / libpcap / Attic / TODO (download)

Revision 1.1.1.1 (vendor branch), Mon Feb 27 15:45:40 2006 UTC (18 years, 1 month ago) by drochner
Branch: TCPDUMP
CVS Tags: yamt-pf42-baseX, yamt-pf42-base4, yamt-pf42-base3, yamt-pf42-base2, yamt-pf42-base, yamt-pf42, wrstuden-revivesa-base-3, wrstuden-revivesa-base-2, wrstuden-revivesa-base-1, wrstuden-revivesa-base, wrstuden-revivesa, wrstuden-fixsa-newbase, wrstuden-fixsa-base-1, wrstuden-fixsa-base, wrstuden-fixsa, netbsd-5-base, netbsd-5-2-RELEASE, netbsd-5-2-RC1, netbsd-5-2-3-RELEASE, netbsd-5-2-2-RELEASE, netbsd-5-2-1-RELEASE, netbsd-5-2, netbsd-5-1-RELEASE, netbsd-5-1-RC4, netbsd-5-1-RC3, netbsd-5-1-RC2, netbsd-5-1-RC1, netbsd-5-1-5-RELEASE, netbsd-5-1-4-RELEASE, netbsd-5-1-3-RELEASE, netbsd-5-1-2-RELEASE, netbsd-5-1-1-RELEASE, netbsd-5-1, netbsd-5-0-RELEASE, netbsd-5-0-RC4, netbsd-5-0-RC3, netbsd-5-0-RC2, netbsd-5-0-RC1, netbsd-5-0-2-RELEASE, netbsd-5-0-1-RELEASE, netbsd-5-0, netbsd-5, netbsd-4-base, netbsd-4-0-RELEASE, netbsd-4-0-RC5, netbsd-4-0-RC4, netbsd-4-0-RC3, netbsd-4-0-RC2, netbsd-4-0-RC1, netbsd-4-0-1-RELEASE, netbsd-4-0, netbsd-4, mjf-devfs2-base, mjf-devfs2, matt-premerge-20091211, matt-nb5-pq3-base, matt-nb5-pq3, matt-nb5-mips64-u2-k2-k4-k7-k8-k9, matt-nb5-mips64-u1-k1-k5, matt-nb5-mips64-premerge-20101231, matt-nb5-mips64-premerge-20091211, matt-nb5-mips64-k15, matt-nb5-mips64, matt-nb4-mips64-k7-u2a-k9b, matt-mips64-base2, matt-mips64-base, matt-mips64, matt-armv6-prevmlocking, matt-armv6-nbase, matt-armv6-base, matt-armv6, libpcap-0_9_4, keiichi-mipv6-base, keiichi-mipv6, jym-xensuspend-nbase, jym-xensuspend-base, jym-xensuspend, hpcarm-cleanup-nbase, hpcarm-cleanup-base, hpcarm-cleanup, cube-autoconf-base, cube-autoconf, abandoned-netbsd-4-base, abandoned-netbsd-4
Changes since 1.1: +0 -0 lines

import original libpcap-0.9.4 from tcpdump.org,
with unrelated subdirs omitted

 TODO list for libpcap
=======================

Important stuff (to be done before the next release)
---------------

General

- configure should not be in the CVS. Most open source projects have an 
  autogen.sh script to run autoconf etc. after checkout. I think we 
  should stick to the standard. 

- The source files should be better documented. There is no official 
  design guideline for what is done where. There should be a common coding
  style (okay, you can guess that by looking at the code) and a guide for
  what needs to be documented.

Linux kernel interface

- Currently there is a race condition in that a socket is activated at the
  same time it is opened - before applying a filter. This has to
  be corrected so that capture starts when pcap_read is called for the 
  first time. 

Less urgent items
-----------------

- Better documentation and cleanup of the interface. I am seeing a few  
  problems at the first glance which needs fixing:
  + pcap_lookupnet makes little to no sense with protocols != IPv4
  + not very well suited for interactive programs (think ethereal). There
    should be a way for the application to get a file descriptor which it
    has to monitor and a callback in pcap which has to be called on
    activity (XXX - "pcap_fileno()" handles the first part, although
    "select()" and "poll()" don't work on BPF devices on most BSDs, and
    you can call "pcap_dispatch()" as the dispatch routine after putting
    the descriptor into non-blocking mode)
  + too many functions. There are a lot of functions for everything which
    violates the KISS principle. Why do we need pcap_strerror, pcap_perror
    and pcap_geterr?
  + the manpage has a brief description of each function but where is the
    big picture? Seems like you need to buy UNP for that...