Status Report #1 of 16

May 2, 2008

Accomplishments

  • collected papers for Google
  • tested similar tools to get a good view about user's needs

Priorities

  1. finish my uni's projects
  2. start to design an architecture of library

Status Report #2 of 16

May 9, 2008

Accomplishments

Priorities

  1. finish my uni's projects
  2. fixing another bugs

Status Report #3 of 16

May 16, 2008

Accomplishments

  • comitted patch for -iR/-iL option bug (issue #15)
  • fixed the issue #16
  • wrote a patch for most recently order in target list (issue #18)
  • wrote a patch for predefined manual target (issue #19)
  • tested umit deb package

Priorities

  1. hunting bugs
  2. fixing them
  3. comitting them ;)

Status Report #4 of 16

May 23, 2008

Accomplishments

  • tested ticket #2 - works fine
  • tested ticket #3 - need more improvement (check my comment http://trac.umitproject.org/ticket/3)
  • tested ticket #4 - works fine but should be rewritten
  • rewrited patch for #4 - http://trac.umitproject.org/ticket/4
  • wrote a patch for delete profile issue (#8) - adds new menu item
  • commited polish translation for umit
  • tested ticket #9 - doesn't work or i don't know what should happen
  • tested ticket #7 - can't patch. file is broken

Priorities

  1. finishing my last 2 projects on Uni
  2. designing architecture of packet manipulator library

Status Report #5 of 16

May 30, 2008

Accomplishments

  • tested patches
  • finished some uni's projects

Priorities

  1. finishing last project
  2. checking architecture of similar libraries
  3. designing architecture of packet manipulator library

Status Report #6 of 16

June 6, 2008

Accomplishments

  • read source codes of similar libraries to get good point of view about disadvantages/advantages
  • first draft of architecture
  • found another defect #26 (fixed already by Adriano)

Priorities

  1. finishing desigin and API
  2. start coding

Status Report #7 of 16

June 13, 2008

Accomplishments

  • nothing. i was off because of finishing uni's projects and exams

Priorities

  1. everything for umit, can't write nothing more because i'm deadly tired. sorry

Status Report #8 of 16

June 20, 2008

Accomplishments

  • tested Ubuntu package

Priorities

  1. writing first draft of core
  2. writing template for plugins

Status Report #9 of 16

June 27, 2008

Accomplishments

  • created a branch for UMPA
  • read about py.test
  • read about raw packets, sockets
  • finished some architecture design
  • wrote some simple manipulation packets code
  • started writing core

Status Report #10 of 16

July 4, 2008

Accomplisments

  • wrote first draft of Socket class
  • wrote first draft of Packet class
  • wrote first fraft of Protocol
  • wrote few utils functions
  • created own exception class UMPAException

Prorities

  1. extending protocols code
  2. finishing with Socket and Packet classes
  3. auto-filling feature, base for extensions, support for capturing (on EuroPython? sprint time!)

Status Report #11 of 16

July 11, 2008

Accomplishments

  • refactored protols super-classes (Field, Flags, Protocol)
  • finished API for protocols
  • improved IP class

Prorities

  1. finishing auto-filling of each IP headers
  2. implementing TCP
  3. wrapping struct module
  4. designing API for extensions
  5. writting support for lipbcap as a first extension
  6. beginning template system

EuroPython?2008

I was made a lighting talk about Umit and Umit's sprint http://trac.umitproject.org/wiki/PacketManipulator/BackEnd/EuroPython2008Sprint


Status Report #12 of 16

July 18, 2008

Accomplishments

  • Flags improvement
  • new functions for API (most requested by nopper)
  • implemented bit-packing for every protocols. it rocks! [1]
  • wrapper for struct module
  • cleaned code

Prorities

  1. IP and TCP last stage
  2. designing API for extensions
  3. capturing support
  4. beginning template system

[1] http://trac.umitproject.org/changeset/3159


Status Report #13-14 of 16

August 1, 2008

Accomplishments

  • Completely finished sending packets. Since r3294 it works
  • Solved the problem of fields which depends on other protocols/fields
  • Provided new classes like SuperIntField?
  • Added new methods for API
  • Reorganized the core of protocols
  • Completely implemented IP protocol (fragmentation is omitted)

Prorities

  1. TCP implementation
  2. interface for libpcap wrapper
  3. starting template system
  4. promote Umit Projest at Google Office on Monday ;)

Status Report #15 of 16

August 8, 2008

Accomplishments

  • TCP implementation
  • some fixing in IP implementation
  • new util's function get_bits() which work with both types of offset
  • redesigned Protocol._raw() and splitted it up
  • UDP implementation
  • strict/warn support for broken packets
  • improvement in payload attribute
  • libpcap reasearch

Prorities

because of some problems with python wrapper for libpcap, some plans have changed

  1. XML file format support
  2. global/local protocols/extensions collector
  3. schedule extension
  4. "data" protocol
  5. [if time left] ICMP/ARP/Ethernet implementation

Status Report #16 of 16

August 15, 2008

Accomplishments

  • reviewed, corrected and applied nopper's patches
  • XML extenstion completed (provided functions and object's methods)
  • TCP/UDP ports are now enumerate type, added ports names from /etc/services
  • Payload protocol (for data of 5-7 OSI layers)
  • schedule extension
  • first draft ICMP implementation

Prorities

  1. fixing "checksum" bug
  2. cleaning code
  3. writing tests
  4. improving documentation
  5. finishing ICMP implementation

Status Report #16.5 of 16

August 18, 2008

Accomplishments

  • fixed bug in calculating checksum algorithm
  • protocols/extensions local/global collector
  • fixed issue with cyclical import
  • added more examples
  • cleaned issue with droping priviliges
  • cleaned code (not finished yet)
  • added sexy print output
  • added setup.py and other sh-scripts for installing, cleaning, building etc.
  • wiki updated - now it's: UMPA
  • added some plain text files like README, AUTHORS etc.
  • new functions in umpa.protocols

Prorities

  1. improving documenation (docs/* and UMPA/Documentation)
  2. cleaning code
  3. updated pydocs and comments
  4. writing tests