Author Archives: George

Breaking the Vigenere cipher

s

I have signed up for the excellent Cryptography course by Prof. Jonathan Katz at Coursera, and took the first programming assignment which was about breaking the Vigenere cipher. The instructor explained one of the ways to do it, and recommended to rely on letter distribution in English. But while the suggested approach was interesting, I […]

reverse engineering 10 Comments

Android: an easy splash screen implementation using ImageView

s

I’ve seen a number of suggestions of how to implement a splash screen properly. Most typical implementation is through activities. To show it, you need to make it the first activity in your application, which has a few disadvantages: It is an activity, so it will use the Android-specific effect (typically sliding) to switch from […]

android Comments Off on Android: an easy splash screen implementation using ImageView

OpenSuSE 13.2: do not use BTRFS as rootfs

s

OpenSuSE 13.2 comes with BTRFS chosen as your default rootfs, replacing the old trusted ext4. Unfortunately the kernel version it ships with contains a known flaw which breaks some software using preallocated files and mmap() on them. Known issues have been reported for rtorrent (failed synchronization) and KDE (plasma-desktop crashes and could not be restarted […]

Uncategorized 3 Comments

Running Mac OS X under qemu/KVM on AMD CPU

s

Due to the excellent work of Gabriel L.Somlo it is possible to run the emulated Mac OS X on Linux under Qemu/KVM. The changes seem to be minimal, and the operating system emulation works well – as long as you have the Intel CPU, that’s it. If you have only the AMD CPU, the emulation […]

Uncategorized 28 Comments

Practical difference between epoll and Windows IO Completion Ports (IOCP)

s

Introduction This article compares the difference between the use of epoll and Windows I/O Completion Port (hereby IOCP). It may be of interest to system architects who need to create a high-performance cross-platform networking servers, and to software engineers porting such code from Windows to Linux or vice versa. It may also be of interest […]

Uncategorized 2 Comments

select / poll / epoll: practical difference for system architects

s

When designing a high performance networking application with non-blocking socket I/O, the architect needs to decide which polling method to use to monitor the events generated by those sockets. There are several such methods, and the use cases for each of them are different. Choosing the correct method may be critical to satisfy the application […]

Linux Tagged , , , 28 Comments

Failed to load steamui.so ?

s

Recent Steam update switched it to SDL2, so unless you have the very latest libSDL2 installed, you’ll get an error while trying to load Steam: Fatal error: Failed to load steamui.so The short test will quickly tell you the problem: LD_LIBRARY_PATH=$HOME/Steam/ubuntu12_32 ld $HOME/Steam/ubuntu12_32/steamui.so which will print a bunch of lines starting from: ld: warning: libSDL2-2.0.so.0, […]

Steam Tagged Comments Off on Failed to load steamui.so ?

Installing Steam at the unsupported Linux which is not Ubuntu

s

Today at Feb 14th Valve released Steam for Linux. At this moment it officially only supports Ubuntu. However it is easy to run it on any other Linux distribution, in my case at OpenSuSE 12.2.

Linux, Steam Comments Off on Installing Steam at the unsupported Linux which is not Ubuntu

Preventing WordPress comments spam

s

There seem to be an easy way to prevent a significant number of WordPress comment spam. The majority of spam comments nowadays come with either a bunch of URLs, or with a generic message such as: Hi there! Just discovered your site while i was browsing and i must say that i found it quite […]

Uncategorized Comments Off on Preventing WordPress comments spam

Reverse-engineering the KaraFun file format. Part 4, the encryption

s

So far all the files we have seen were not encrypted. However some users pointed out there are KFN files which are encrypted. While the encrypted files were still analysed and dumped properly, the output files were encrypted and hence unusable. But the users also confirmed that KaraFun player plays those files just fine, and does […]

android, reverse engineering 25 Comments