Directory contents
   /
   |----> ftp.c     -- Main kernel module
   |----> ftp.h     -- Common header file declaring the params structure
   |----> do_ftp.c  -- User space program
   `----> Makefile  -- Makefile for compiling with 2.6 kernels. You need
                       to have a compiled kernel source to build the module

Usage
    As a normal user
        make
        gcc do_ftp.c
    As root
        insmod ftp.ko
        ./a.out <remote ip> <local host's ip> <remote file> <local file> <username <password>
        rmmod ftp.ko

Sample transcript for downloading the README file from ibiblio.org
------------------------------------------------------------------------------
$ make
make -C /lib/modules/2.6.9/build SUBDIRS=/home/ppadala/ftp modules
make[1]: Entering directory `/home/ppadala/linux-2.6.9'
  CC [M]  /home/ppadala/ftp/ftp.o
  Building modules, stage 2.
  MODPOST
  CC      /home/ppadala/ftp/ftp.mod.o
  LD [M]  /home/ppadala/ftp/ftp.ko
make[1]: Leaving directory `/home/ppadala/linux-2.6.9'
$ gcc do_ftp.c
$ su
Password:
# insmod ftp.ko 
# ./a.out <local host's IP address> 152.2.210.80 /README /tmp/README anonymous anon@cs.edu
Connection from 152.2.210.80 
return = 215 (length of file copied)
# rmmod ftp.ko
------------------------------------------------------------------------------
