“Think about your audience”

When I first saw Git’s and Wireshark’s joint project description for Outreachy, I immediately knew I wanted to get involved. As a junior developer, I’ve been using Git since the 1st year of my studies, and as a DNS privacy advocate, I’m familiar with research and articles that used Wireshark in their packet inspection, yet had never had the chance to work with Wireshark itself myself, other than the rare class exercises in my 2nd or 3rd year of Bachelor’s…

So What exactly are Git and Wireshark? And what am I trying to accomplish for this project?

Git goes beyond distributed version control; it’s one of the main open source projects you start working with as a developer. In my case, it gave me first contact with open source communities, and the most tangible proof, that “sharing” indeed “is caring”; that having access to other people’s work is good for me, for them (in the long run!), and, oh yes indeed, for the glorious soul of the internets!
Then, of course, you start running across things like squashing commits and cherry-picking changes, and your eyes might bleed a little… but when you start to overcome that, it really is worth it not only for becoming more experienced in maintaining your own (and your team’s) code but also for that great feeling of certainty that those changes that took you hours to write are safe and accessible somewhere. Even if you have no clear idea where, you know that they are!

And Wireshark goes well beyond packet dissection as well; a tool that creative and curious folks can modify to their liking to analyze and inspect Any type of packet transmitted over the network that they can think of, gaining lots of information as they do. As long as those curious folks can follow loads of examples of cool ways to parse and inspect information, and can picture how and what to dissect, they can write a dissector file for the protocol, send it upstream, and rejoice when the option for analyzing that protocol or type of packet becomes available for everyone.

And the intersection of both projects? We want to have fun with dissecting Git packets! And we want loads more information when we do!!

Starting with base functionality building on top of other member’s work shared in my previous post, we added parsing of the multiplexing (sideband) version in use (if any). Then we started work on parsing the specific version of the git protocol being used following up on MR 805, and, my favorite so far probably because of my privacy advocacy background, we started working on adding git protocol support for HTTPS by following up on a patch started (and shared) by Richard Sharpe (thanks Richard!).

  • Can we use Wireshark to differentiate traffic sent over HTTPS through port 443, be it Git packets, or encrypted DNS-over-HTTPS packets?
  • Can this be useful to Git?

These and other questions are what I’m hoping to contribute some answers to, but there’s for sure endless others; as tools used by developers, researchers, advocates, and students alike, the opportunities are endless as is your imagination. Alas I’m not a creative type!

So then, what are Your suggestions?

Leave a comment

Design a site like this with WordPress.com
Get started