vim as hex editor?
Yes..who would have thought?
Being a vim user, I hoped it would be able to edit hex files. I didn’t know for sure if it can do it or not so I decided to start digging into the manuals. This nice feature of vim has proven to be really important for me lately, now that I’m testing a protocol by modifying valid pcap files.
› Continue reading
Computing a HMAC inside the Linux kernel.
Recently I’ve been experimenting with Hash-based Message Authentication Code (HMAC) and I got to the point where I had to implement it inside a kernel module. Not having any experience with how I could go about doing it, I went searching for the Crypto API on the Internet. Surprise surprise, there isn’t much to search on. I really can’t understand why there’s so much obfuscation when it comes to kernel APIs. Oh well…
All that was left for me to do was to start digging through the kernel source files and to try to piece the puzzle together. Without further ado, here is what I managed to create.
› Continue reading
Eduroam on n900 – TELECOM SudParis
One of the WiFi networks available for students and staff at TELECOM SudParis (France) is Eduroam. Since I’m not always in the office, I need a WiFi connection for occasional email checking/sending. So, I decided to give Eduroam a go on my Nokia n900.
Before the firmware update (version 3.2010.02-8) released on Feb 16th, it was impossible to connect to this network. However, things have changed now.
Prior to today, the connection settings I was using were WPA-EAP with EAP mode: TTLS and EAP method: MSCHAPv2. The output from dmsg on the n900 showed that the authentication was always successful, but I was always getting disconnected by ‘local choice’: wlan0: deauthenticating by local choice (reason=3)
So…I decided to test other EAP methods. For TTLS, the n900 only supports 3 methods: EAP GTC, EAP MSCHAPv2 and MSCHAPv2. Since 2 out of 3 use MSCHAP, I tried EAP GTC. What do you know, it actually worked! I suspect some of the issues were partially caused by the lack of proper certificates. I fixed it by downloading the CA cert of TELECOM SudParis from here, transforming it into standard PEM format, and then importing it into the list of certificates on the n900.
Note: Unless the certificate is in PEM format and has the CA bit set, the certificate manager on the n900 will not provide you with the option to install it! The certificate you download is in standard x509 DER format. In order to export it into PEM, you need to use openssl. Here are the two commands you can use:
openssl x509 -in input.crt -out input.der -outform DER
openssl x509 -in input.der -inform DER -out output.pem -outform PEM
I hope this helps, since it took me a while to get a working connection.
Andrei~
Writing Loadable Kernel Modules using netfilter hooks (in-depth HOWTO) – Part 1
Note: This article was inspired by the lack of updated documentation on how to write proper netfilter kernel modules. At the time I’m writing this article, the latest stable release was 2.6.32.8. I am also assuming you are familiar with how LKMs (Loadable Kernel Modules) work. If you are not, then you might want to check this article first: tldp.org/HOWTO/Module-HOWTO/
In this article (Part 1) I will present how to create a simple Linux kernel module that implements a netfilter hook for a generic transport protocol (not one of the usual ones).
In Part 2, I plan to connect the module to the iptables rules generated on the userspace side.
› Continue reading
Neuromancer
I’ve recently come across a SF novel by the name of “Neuromancer”. Maybe some of you have heard about it, or maybe not. The point is that if you are into SF and you like technology/computers, then this is a “must read” book!
I found so many connexions to recent and past SF movies that I can’t even start counting them. For example: the world envisioned by William Gibson looks pretty much alike the scenario in Matrix: humans can enter the cyberspace, also known as the “matrix”. And it doesn’t stop here! Cybernetic implants, stim packs, firewalls referred to as “ice” and later on “Black Ice” (ring a bell?) and much, much more.
Google Wave
Google Wave is finally out! I was lucky enough to receive an invite from day 1 so for the past days I’ve been taking it for a ride. What I can say so far is that this application shows amazing potential!
As you log in for the first time, you start with a pretty clean interface. You get a list containing whichever friends from your contacts that have joined Google Wave (probably not many for the time being). You also get a list with a few gadgets that can be used right away in your waves. While they are not many, at least it’s a start. They include a map gadget, a poll, a trip organiser, a weather gadget and some kind of video conferencing for your waves. You can also share pictures and other resources during a wave.
› Continue reading
Installing GeForce GT220 drivers under Linux
I’ve recently upgraded my old desktop. For this occasion I decided to go for an Nvidia video card (the GeForce GT220) since it is better supported than ATI cards; and while at it, I also decided to go for a clean install of Ubuntu 9.04 (64-bit, of course). Everything went smoothly. The install time took less than 15 minutes and I was really pleased to see how well the new machine performs.
However, I noticed that large windows lagged when I dragged them around, and the general visual experience on my 25.5″ monitor was far from good. As I suspected, there was no video acceleration enabled. Easy, all I have to do is just to install the Nvidia drivers, right? Wrong.
Bad Free.fr!
When testing a little program that I’ve made, called ptool (more info here), I have found out that the LAN interface of my ADSL router was operating in promiscuous mode. The router is a standard issue from Free.fr.
I have no reason why this would happen, especially on the LAN port. If this is common practice from Free, then I might even be forced to change ISP. I’m curious how many other providers snoop on their users’ LANs.
If you’re curious whether or not your ISP is listening to your LAN traffic, you could try downloading and running the program that I’ve written. I think it currently supports most linux distributions and might work on Solaris and Mac OS too (not sure if that’s the case for the latest build though).
Please let me know what you find. I really want to get to the bottom of this!
Andrei~
Triplifying Bugzilla
I have recently joined the Computer Science department of TELECOM SudParis as an intern. My job is to integrate Triplify and Bugzilla in order to create semantic data. In other words, I have to export data from the Bugzilla database to an RDF file. All this is possible due to Triplify, a php script that can be configured to query given tables from the specified database.
The main part is the definition of a number of SQL queries selecting information that is meant for public use. In order for Triplify to be able to convert the results of your SQL queries into RDF, the query results are required to have a certain structure.
This is the classmap for the database tables queried by Triplify (class->table):
-
bom:Issue->bugs -
bom:product-> products -
bom:component-> components -
bom:milestone-> milestones -
bom:computersystem-> op_sys + rep_platform -
sioc:User-> profiles -
foaf:Person-> profiles
The main vocabulary used for the Bugzilla triplification is EvoOntBom, with occasional Bugzilla specific classes found in heliosBtOntology.
If you want to see the RDF+n3 output, please click here.
If you find this stuff interesting, don’t hesitate to contact me for more info.
Andrei~
Who is Andrei?
Cloud 'o Tags
Recent Comments
andrei on Eduroam on n900 – TELECOM SudParis
Adib on Eduroam on n900 – TELECOM SudParis
andrei on Eduroam on n900 – TELECOM SudParis
andrei on Eduroam on n900 – TELECOM SudParis
Adib on Eduroam on n900 – TELECOM SudParis

