$Id: TODO,v 1.12 2004/07/06 19:00:39 papillau Exp $

==============================================================================
11/04/2001   m:modem_run, p3:pppoa3, p2:pppoa2, p2m:pppoa2m
______________________________________________________________________________
            |
  Status    |                          Feature
____________|_________________________________________________________________
   done     |        Check that all tar.gz respect GPL licenses.
____________|_________________________________________________________________
   done (m) |        Correct upstream/downstream speed value. 
____________|_________________________________________________________________
   done     |    Correct ALL messages about "insmod/rmmod" & "line is blocked".
____________|_________________________________________________________________
done(p3/p2m)|    Replace pppoa2.log by a syslog() since creation may fail.
____________|_________________________________________________________________

===============================================================================
09/07/2001   m:modem_run, p3:pppoa3, p2:pppoa2, p2m:pppoa2m
______________________________________________________________________________
            |
  Status    |                          Feature
____________|_________________________________________________________________
            | Analyser Alcatel's microcode
    ???     |    +Check for a checksum (change a byte
            |    +Check the file format (block size & starting addr)
____________|_________________________________________________________________
  not todo  | Handle synchro's lost in modem_run
____________|_________________________________________________________________
            | Write an install documentation for non-developper use for each OS 
            |   (Linux & *BSD)
            |    + Write man pages for pppoa2 & modem_run
   done     |    +  Write a configuration script
            |    +  Write a tool to detect the correct vpi.vci from a list of known value
            |    +  Write a FAQ
____________|_________________________________________________________________
   done     | Handle OpenBSD/NetBSD in the common source code
____________|_________________________________________________________________
   done     | Try all kernel version & pppd version
____________|_________________________________________________________________
done(p3/p2m)| Handle ATM related function (AAL5) in a separate source file
____________|_________________________________________________________________
   todo     | Enhanced microcode extract utility (checking microcode)
____________|_________________________________________________________________
   done     | Script that check the configuration (module loaded, vpi.vci ...)
 (doctor)   | Could be done in the configure script
____________|_________________________________________________________________
   done     | Generate rpm for known distributions (Linux) and tar.gz for *BSD
____________|_________________________________________________________________
            | Write a tool to report the configuration (for use in bug report)
            |    In text format, so easily sent by email
   done     |    That can be automatically send by email.
            |    Ask the user to confirm the addition of file to the bug report.
____________|_________________________________________________________________
   done     | Connection script at boot time.
____________|_________________________________________________________________
   done     | Distribute the complete n_hdlc.c code to allow compilation
patch in src| without kernel recompilation
____________|_________________________________________________________________
   done     | Handle the pppd async mode
 (pppoa3)   |
____________|_________________________________________________________________
   todo     | Handle PPPoE protocol as well as PPPoA
____________|_________________________________________________________________
  not todo  | General documentation of PPP, PPPoA and PPPoE.
____________|_________________________________________________________________
   done     | Documentation of the design of the driver.
____________|_________________________________________________________________
   done     | Speedtouch for the newbies (Speedtouch pour les nuls!)
____________|_________________________________________________________________
   done     | Add a BUGS file with unresolved bugs
____________|_________________________________________________________________
 not todo   | Add links to firewall/NAT configuration tutorials
____________|_________________________________________________________________
   done     | Add a file for email, name, irc nick , position (dev,doc,beta)
  AUTHORS   | & config (OS,)
____________|_________________________________________________________________
  not todo  | Script to help beta testing (upload/download/ping/bugs)
____________|_________________________________________________________________
   done     | Check the cvs sourceforge site.
____________|_________________________________________________________________
 not todo   | Document coding guidelines (indentation, ...)
____________|_________________________________________________________________
   todo     | Add hotplug configuration to connect to Internet when the modem
            | is plug in.
____________|_________________________________________________________________

===============================================================================
29/07/01    m:modem_run, p3:pppoa3, p2:pppoa2, p2m:pppoa2m
______________________________________________________________________________
            |
  Status    |                          Feature
____________|_________________________________________________________________
    done    |  Enable to change the verbose level of pppoa2 without killing it.
            |  (named pipe?)
____________|_________________________________________________________________

18/05/2004

  - select interface 1 alt 1 by default (since it works on all modem
  and is required on SpeedTouch USB 330 model). change are required
  in both pppoa2.c and pppoa3.c. DONE

  - add the following shell scripts: DONE
    - speedtouch-setup (vpi, vci, login/passe, connect on boot,
      firmware path : put the .zip in /etc/speedtouch)
    - speedtouch-start : start the connection
    - speedtouch-stop : stop the connection

  - should update the speedtouch-setup script and man page to document
    --pppoe option. DONE

  - document that compilation should not occur in dir with spaces.
    Corrected. You can now compile in directory with spaces

19/05/2004

  - create the /etc/speedtouch/ directory on "make install" : DONE

23/06/2004

  - make code compile on *BSD

06/07/2004

  - remove the use of EHCI module since it unplugged/replugged USB 1.1
    devices on the same controller. We do not need this module since
    it is only for USB 2.0 and all of our supported modem are USB 1.1.

TODO:

  - add an error message if the firmware revision does not match the modem
  revision

  - set the tap0 interface's ethernet address with the value from the modem

  - when using in tap0 mode, make pppoa2/pppoa3 only exit/background
  if the tap0 device is initialized

  - update documentation. plan is :
    1. Download file
      1.1 Download firmware
      1.2 Download source or binary package
      1.3 Download dependencies (pppd, pppoe, )
    2. Install driver
      2.1 Install from source
      2.2 Install from binary package
    3. Setup (speedtouch-setup)
      - put the .zip in /etc/speedtouch
      - ask login, passe
      - ask vpi, vci if they cannot be deducted from login
      - ask about PPPoA or PPPoE
      - ask to enable hotplug (usbd on BSD)
    4. Start the connection (speedtouch-start)
    5. Stop the connection (speedtouch-stop)

  - put code in special color around code (in HTML documentation)
  - display an error message in modem_run, pppoa2, pppoa3 when no modem
    is found.

  - handle the case where the kernel module is loaded
  - update message at the end of "make install" to tell users to use
    speedtouch-setup
  - make binary available for major distro (they must be tested before
    being available). Reason: some users don't have gcc (Mandrake Discovery
    9.2 for instance)
  - create a graphical tool to configure the modem
  - add a sleep 1 if the modem is already in use or not found before exiting
    and issue an error message on stderr
  - check for /dev/net/tun and mknod b 10 200 /dev/net/tun if not +
	mkdir -p /dev/net
  - check for "alias char-major-10-200 tun" in /etc/modules.conf
    in script speedtouch-setup
  - on FreeBSD 5.2.1, modem_run does not detect that modem has been unplugged=======

  - port configuration/start/stops shell scripts to *BSD
  - check for unzip when running speedtouch-setup
  - reset modem_run mutex if no modem is found
  - add /etc/speedtouch/speedtouch.conf as conffile for debian package

