Sophie

Sophie

distrib > Mandriva > 9.1 > ppc > media > contrib > by-pkgid > 7206e10290cab8d34c8db0bf7f12ce95 > files > 26

liblcrzo0-devel-4.16.0-2mdk.ppc.rpm

                Laurent Constantin's network library (lcrzo)

                      --------------------------------
                      |           TODO LIST          |
                      --------------------------------

++ Next version

 * [nothing]


++ Future Versions

 * Add an IPC in function lcrzo_process_other_init to be sure
   the child has copied lcrzo_global before existing the function
   (problem of tool 177).

++ Far future versions

 * When LCRZO_DEBUG_MEM_CORRUPT is set, we only support unaligned 
   pointers (so older Solaris and Tru64 Unix does not work).

 * Port to other environments : NetBSD, HP-UX, AIX, etc.

 * Use lcrzo_conf_set_sysrenew_allow to block system update when
   a function is doing a loop. For example :
      lcrzo_er(lcrzo_conf_devices_count(&count));
      lcrzo_er(lcrzo_conf_get_sysrenew_allow(&old));
      lcrzo_er(lcrzo_conf_set_sysrenew_allow(LCRZO_FALSE));
      for ( i=1 ; i<=count ; i++ )
      { lcrzo_er(lcrzo_conf_devices_value_pos(i, ...));
      }
      lcrzo_er(lcrzo_conf_set_sysrenew_allow(old));

 * Functions to create TCP options.

 * Create lcrzo_list_remove_duplicate_partial(..., startpos, truestart,
   endpos, ...). The list has not duplicates between startpos and truestart.
   Create lcrzo_list_sort_partial(..., startpos, truestart, endpos, ...).
   We suppose that the list is sorted between startpos and truestart.

 * Provide a function like lcrzo_record_get_next to loop sequentially
   through items in a record.


++ Version 5.00

 * A lot of functions of lcrzo were quickly written, and are not 
   optimized. All those functions should be rewritten. The main problem
   is that they use bad algorithms or high level functions (lcrzo
   functions are used inside lcrzo itself ; so it is slow and not nice ;
   lcrzo should contains almost no call to lcrzo functions, and should
   be written using pure glibc functions).

 * Suppress French : lcrzo will be only in English.

 * Homogenize lcrzo_file_xxx and lcrzo_record_xxx functions (parameter
   order).

 * lcrzo_hdrlarp.prot_src is an lcrzo_ipa instead of lcrzo_ipl.

 * lcrzo_err_get(err, &string) to obtain the string corresponding
   to an error.

 * lcrzo_data_print_get(, &string) to obtain the string corresponding
   to formatted data.

 * provide new sniffing functions giving timestamp and raw sniffed
   data.

 * replace defines like LCRZO_PRINTTYPE_xxx by an enum. It allows to 
   obtain the symbol in debugging mode (because it is stored in the
   symbol table, and a define is not).

 * records should contain MSDOS lines (ends with \r\n, instead of \n).

 * Think about a new way to deal with data. Currently, lcrzo contains
   a lot of malloc. This is not optimized.

 * Create two lcrzo_list modules :
    - to store items fully stored in the allocated space
    - to store items containing an outsize pointer : so we need
      a removing_function and a duplicating_function. Then, we can also
      have : lcrzo_list_add_pos(..., lcrzo_bool addacopy, ...) to add
      the item or a duplicate of the item.
   Then, create lcrzo_list_insert_list, lcrzo_list_extract_list,
   lcrzo_list_copy_list, lcrzo_list_copy_criteria_list, etc.


++ Version 6.xx

 * Currently lcrzo works for Ethernet cards. Support could be added for :
    - PLIP/SLIP
    - FDDI (I do not have such cards)
    - Token Ring (I do not have such cards)
    - etc.

 * Dial-in modems are not supported under Windows.

 * Create those functions :
    - lcrzo_sock_tcpser_virtmulti
    - lcrzo_sock_tcpser_virtoipmulti

 * Add 2 functions to set/get promiscuous bit on the device.

 * Analyze IPv6.