Archive for the 'Firefox' Category

Week 11

Monday, August 7th, 2006

Aaaaargh!! I lost 3 (three) days searching for a bug. I checked everything.. or at least I thought I checked everything. And at the end, I found one missing line that stopped my extended Jabberzilla to work with confirmation requests delivered by messages…

In general, it seems that everything… WORKS :)

Plans for next week

  • Testing, etc, etc

Week 10

Monday, July 31st, 2006

As I started modyfing Jabberzilla I noticed that I cannot write much unless I know how the “HTTP-Client” part will be done. So I had to think about that.

First I have to mention, that there is still no decision from JSF regarding possible changes to the JEP… So there were two possible ways:

  1. extend existing schemes by using magical “xmpp” realm name (as in the current JEP)
  2. create new XMPP auth scheme (as proposed by some people)

New scheme is attractive from implementor’s point of view: it can be easily done as Firefox extension. Modyfing existing schemes would require more hacking. On the other hand, I wouldn’t like to re-implement all Digest auth logic already present in Firefox.
The first idea was: create new scheme, but reuse the code.
Second idea: actually call methods of existing auth components in my new component.
And the best idea came at the end: Firefox selects auth component by authentication scheme. So now… why not trick it that - for example - Basic with realm="xmpp" is actually a different scheme, let’s say XMPP-Basic?

So, I wrote a handler for new scheme(s), and then added a small rewrite tool that changes WWW-Authenticate headers on the fly :)

Maybe sounds easy, but it took me much time to invent, and required to read really much…

BTW: I really recommend XUL Planet if you’re planning to code something for Mozilla.

Plans for next week

  • Make my Great Solution work (yes, I have some code already, but it’s rather a prototype)
  • Make it work together with Jabberzilla

Week 9

Monday, July 24th, 2006

Finishing Apache module was quite easy, so I’m not going to talk about it ;)

Jabberzilla… I wanted to set up nice development environment. This requires compiling Mozilla. And this requires much work. Too much work… One day for reading how-tos, setting up compilation environment (it is not so easy on Windows), fighting with some broken scripts, etc, etc, etc. Then next day to compile. Then it throws an error which you have no idea how to fix ;)
Then you start thinking: why do I have to compile this, if I’m (probably) not going to edit any file written in C++? :)
Yes, Mozilla extensions are simply zip files, so it is possible to extract, modify and zip again!

Tip of the day: don’t follow build instructions blindly ;)

So, when I had the working-and-unpacked version, I could start getting familiar with the code. Just one question: why is everything solved so differently than in Psi? No, I’m not saying that it is worse or better - it’s just different, and this makes everything harder…

Plans for next week

  • Start actually modyfing Jabberzilla at last…
  • Think how to hack standard authentication handlers in Firefox

Week 8

Tuesday, July 18th, 2006

At last… after 1.5 week, the temperature is going back to normal. So at last I can work normally…

So, as planned, I had took some rest this week. Plus I studied about writing Firefox extensions and downloaded Jabberzilla. Now time for some coding :)

Plans for next week

  • Finish Apache module (Safari accounts activated!)
  • JEP-0070 support for Jabberzilla