Content-type: text/html Set-Cookie: cookiehash=D8TIX1F9GET8DML97LCWDC1UDL31CF7Q; expires=Mon, 20 Jul 2020 00:00:00 GMT; path=/; domain=.drivemeinsane.com
Previous Entry.. Next Entry.. |
More Fun With Technology
June 01, 2014 02:36
Determined not to waste $150 that I spent on the nice new IP cam I bought, nor feeling inclined to return it and resign myself to some older, less functional, less quality option, I decided to hook the damn thing up and packet sniff until I figured out how it worked. 8 hours later, I have brought myself up to speed on a few things.
First off, the old version of sniffit I used in the distant past wouldn't compile on more modern systems, or at least, not on the firewall machine, which is where I wanted to run it to ensure I was capturing all of the webcam packets. I tried a few other options for sniffing, all of which seemed inclined to insert a lot of extra noise into the captured data stream. I eventually tracked down an rpm for sniffit and got it installed. Then I realized that some data wasn't getting captured at all, and even now I'm not sure why that is the case, but I decided to approach things from another angle. I installed sniffit on Loki, which I have a working console on, and just sniffed EVERYTHING on that computer. Launched the browser, watched the video feed for 30 seconds, then closed everything back down.
Turns out authentication is all about digests and nonce's and qop's and realms, and opaque's. A few of you might know what that is all about, others are certainly drooling in anticipation, waiting to find out. No matter, the issue is that now, as part of the authentication process, even knowing the user and password for access, it is now necessary to first request access and get denied, but part of that denial provides the means to make a second request. Sure, it's more secure than base64 encoding, but it would be nice if it could go through in a single request. That, or just disable authentication on the cam side. However, neither of these is going to happen, such is the world we live in.
The end result is I get to dredge out code I haven't worked on in years to once again make some major modifications to, just to end up with the means to support what is quickly becoming an ancient protocol anyway. At this point, it almost seems to make more sense to put my efforts into getting the H.264 working instead of just making sure MJPEG continues to work in all of it's new incarnations.
The biggest downside of all of this is the endless amount of time that it requires just to keep everything working. Several weeks of effort now have gone toward trying to get another cam up and running. I have a lot of great ideas for new features, but instead I have to waste what little free time I have dealing with issues like this. It's... frustrating, to say the least.