Archive for the ‘Hacking’ Category

Minor Asterisk for FRITZ!Box Update

Sunday, February 6th, 2011

I am a little short on time, so I will keep this post short.

In brief: If you had trouble compiling Asterisk against the current Freetz development branch or an Asterisk version built against an older version was regularly crashing when establishing a new connection, this update is for you.

The updated version is available for download at http://github.com/ginkel/asterisk-freetz-build/tarball/v0.5. As usual, code contributions are welcome. The source code is available on GitHub.

Confused? ;-) This post tells you what this is all about.

SCM-SCL011-Treiber (“nPA-Basisleser”) unter LGPL?

Wednesday, November 24th, 2010

Vor kurzem hatte ich mir einen SCL011-RFID-Reader bestellt. Nicht, weil ich mir den neuen Personalausweis zugelegt hätte – bewahre. Ich wollte vielmehr schon immer mal mit RFID herumexperimentieren. Und da es diesen Reader aktuell zum Preis einer Pizza vom Italiener gibt, habe ich zugeschlagen – viel falsch machen kann man bei dem Preis ja nicht.

Heute lag der Reader in der Post und als ich gerade den Linux-Treiber installieren wollte, dachte ich mir, ich schaue mir diesen vorab mal im Detail an. Und was sehen meine müden Augen da? In einem Descriptor (scl011_2.06_linux_64bit/proprietary/SCL011.bundle/Contents/Info.plist), der dem Treiber-Binary beigepackt ist, steht zur Lizenz:

This driver is protected by terms of the GNU Lesser General Public License version 2.1, or (at your option) any later version.

Ich habe beim Hersteller jedenfalls mal den passenden Quellcode angefordert ;-) und werde über die Reaktion hier berichten.

Rails Scalability

Sunday, October 17th, 2010

Pretty interesting Google Tech Talk about scaling Rails apps or web apps in general:

Time is running out…

Wednesday, September 22nd, 2010

Well, not for me, but for an integral part of the Internet as we know it today: IPv4. The Internet is getting short on IPv4 addresses and as more and more gadgets get IP-enabled and emerging countries consume the remaining available address space faster and faster it is time to start thinking about switching to IPv6, which should offer sufficient address space for the time being.

Said, done. As of recently, my FRITZ!Box 7270, which I use to connect to the Internet, started offering native, as well as tunneled IPv6 connectivity. I decided to go for a SixXS tunnel, as my ISP does not yet offer native connectivity. I won’t go into all the details of setting this up as it is well-documented elsewhere. Instead, I would like to point out some pitfalls, which I hit, but which can be easily avoided:

  1. Do not try to connect the FRITZ!Box with the tunnel without having a subnet attached to it. It won’t work.
  2. Try to get more than 25 ISK (credits) at SixXS during sign-up. Providing a link to your XING or LinkedIn profile during sign-up should do the trick. Otherwise, you will not be able to bring up your tunnel as you won’t be able to request a subnet with this amount of initial credit. Goto 1. ;-)

If you’re really into adventures, set up a reverse delegation for the revserse lookup of IP addresses from your IPv6 network. You should have a name server at hand, which has excellent IP connectivity. A FAQ covering this aspect is available at SixXS.

Asterisk for FRITZ!Box 7270 Updated to Version 1.6.2.11

Saturday, September 11th, 2010

After I had updated my FRITZ!Box to the current “Labor” firmware along with Freetz trunk my existing Asterisk build suddenly stopped working. This was a good reason to bring my asterisk-freetz-build script in sync with the current Asterisk 1.6.2 version as well with Freetz trunk, which I have been using for the most recent firmware build.

The updated version is available for download at http://github.com/ginkel/asterisk-freetz-build/tarball/v0.4. As usual, code contributions are welcome. The source code is available on GitHub.

And if this is all Greek to you, feel free to read my original blog post, which is a little more verbose.

Asterisk for FRITZ!Box 7270 Updated to Version 1.6.2.9

Monday, July 5th, 2010

It has been a while since I published my guide to cross-compile Asterisk for the FRITZ!Box 7270. This guide and build script was based on Asterisk 1.6.0.19.

Asterisk development has not stopped, though, so the current Asterisk branch – currently at revision 1.6.2.9 – got out of sync with the asterisk-freetz-build script.

Now, what is so great about community-based software is that it facilitates contributions by others: Recently, I received an e-mail from Thomas Rueter, who provided me with a set of patches to compile Asterisk 1.6.2.8 using asterisk-freetz-build. His patches served as a basis for a revamped asterisk-freetz-build v0.2 package, which is capable of cross-compiling Asterisk 1.6.2.9 and chan_capi 1.1.5 for Freetz 1.1.x.

If you just want the updated package, you can grab it here. In case you are interested into contributing to its development, a copy of it is now available on GitHub.

And if this executive summary does not make too much sense to you ;-) , feel free to read my original blog post, which I also updated to reflect the version change.

US International Keyboard Layout w/o Dead Keys for Microsoft Windows

Monday, May 3rd, 2010

As much as I would like to completely switch over to Linux, for some tasks I am unfortunately still stuck with Microsoft Windows. This comes with the issue that Windows natively does not ship with the keyboard layout that I am routinely using under Linux: US International (No Dead Keys).

Fortunately, there is an easy solution available: Using the The Microsoft Keyboard Layout Creator it was a matter of seconds to remove the dead keys from the the stock US International keyboard layout.

The resulting keyboard layout file is available for download for your convenience. You can easily import this file into the Microsoft Keyboard Layout Creator and turn it into installable keyboard layout DLLs.

Hash It! 1.1.0 adds ccSLD support

Friday, April 30th, 2010

A couple of days ago I visited the UK and also took my Android smartphone with me. After accessing some loal .co.uk web sites I quickly noticed that Hash It! would not figure out the right site tag for them when it was invoked from the Android web browser via the “Share” intent.

So, I just rolled an update, Hash It! 1.1.0, which adds support for the most common ccSLDs (country code second-level domains), such as .co.uk, .ac.uk or .com.sg.

Hash It! 1.1.0 is available via the Android Market. Details are also available at: http://android.ginkel.com/

Enjoy!

Java Method Signature Name Mangling

Sunday, April 25th, 2010

As with any modern programming language that supports method overloading, Java uses name mangling to distinguish methods that share the same name, but only differ in their parameters. Now, actually figuring out the exact algorithm used by javac by googling the Internet turned out to be quite tricky. Eventually, I dug up the following description, which at least serves as a starting point:

http://asm.ow2.org/doc/faq.html#Q7

P.S.: This would not even have been an issue if HTC would open-source their proprietary code for the HTC Desire…

Hash It! Updated to Version 1.0.2

Tuesday, April 20th, 2010

It has been a while since I last worked on Hash It!, but thanks to the bug report of an attentive user I just uploaded a new version (1.0.2) of Hash It! to the Android Market. Bottom line: Hash It! now works correctly on Android 1.5.

Hash It! is licensed under the GPLv3 and as such comes with full source code for your entertainment.

Further details on how to download it to your mobile phone as well as the changelog are available at: http://android.ginkel.com/

Get it while it is still hot! ;-)