GSoC/GCI Archive
Google Summer of Code 2013


Web Page:

Mailing List:

Wireshark is the world's foremost network protocol analyzer. It lets you capture and interactively browse the traffic running on a computer network. It is the de facto (and often de jure) standard across many industries and educational institutions.

Students will have the opportunity to work with a talented and experienced development team and we will try to make arrangements so that they may attend Sharkfest, Wireshark's developer and user conference.


  • Improved Fuzzing My proposal aims to improve the efficiency and the coverage of the tests by developing a "smart" fuzzer heavily based on your current fuzzing script. I also propose a way to help identify duplicate coverage and distill the capture file collection used in the tests following a request from Gerald Combs.
  • JSONshark Project In this project, we developed a web application based on tshark commands, so that users can remotely capture packets or open raw packet data files through browsers. Users may also dissect and parse the captured packets. Relevant detailed information of the packets will thus be shown in the browser. This application is composed of three parts, the front end, the Node.js back end and the wrapper based on tshark commands. The front end (index.ejs) is responsible for sending user requests, displaying the captured and parsed packets. The node.js back end (app.js and echld.js) is responsible for handling user requests by calling the wrapper and communicating with the front end in real time through module. The wrapper (echldwrapper.h .cc, jsonparser.h .cc) is implemented as a c/c++ addon module for the node.js server, so that the back end can call tshark commands as sub-processes, and output the captured packets and parsed packet information as json messages. Functions in the wrapper are general enough to be extended for the echld module in wireshark, instead of only tshark commands.
  • QtShark student programmer Student application for the project QtShark.