Security of Google Chrome Plug-ins and Extensions
July 29th, 2010
Does Google Chrome plug-in and extensions security model allow for a plug-in or a extension to hijack certain operations in the browser, like spoofing DNS name resolution?
What is the likelihood for an extension, like LastPass for Chrome, to hijack the browser’s DNS name resolution process in such a way that, when the user is redirected to a site like PayPal, in fact he or she is redirected to something that looks like PayPal but is not? If an extension or plug-in can hijack the browser’s DNS name resolution process, the browser’s address bar might read like http://www.paypal.com/ but the actual browser would have, in fact, established HTTP/TCP connection against another Web site that looks like PayPal’s but using a different, non-legitimate IP address.
Eclipse, ADT, strings.xml and java.lang.NullPointerException
July 22nd, 2010
On a clean installation of Eclipse and the Android Development Tools (ADT), and for a new Android project, when trying to edit the strings.xml file, a java.lang.NullPointerException is thrown.
To fix the problem, edit strings.xml directly, bypassing the GUI, by double clicking the file in the Eclipse workbench, then selecting strings.xml from the tab at the bottom. Then, replace the line that reads:
<resources>
with
<resources xmlns:android="http://schemas.android.com/apk/res/android">
Skype, VoIP and proprietary solutions
July 13th, 2010
This post is mostly a rant about Skype, the current state of VoIP solutions and proprietary solutions.
For quite a while I’ve owned an Android device. I don’t like proprietary solutions that force the customer into another’s hidden agenda. I don’t like proprietary solutions that change licensing or pricing unidirectionally without consensus. And I don’t like proprietary solutions that server a monitory instead of a majority. I use Skype because I make lot of calls to land lines in other countries. I haven’t been able to find any other VoIP provider that is easy to use and supports multiple devices (the only one close to this is Google Voice, but Google Voice is not yet available outside the US). They have PC software and software for iPhone and iPad, with little or no restrictions. But I am still waiting on Skype to release a native Android application for it (besides the existing one that only works on a very limited set of devices in the Verizon US wireless network).
I tried to come up with a non-imaginative, reliable solution to this. I tried Fring, but Fring does not support Skype anymore. I also tried Nimbuzz but Skype support does not work at all on Android Froyo (2.2). So the next natural thing to try was SIPdroid and SIP for Skype. Unfortunately, and contributing to my overall disappointment, SIP for Skype does not support subscriptions and, additionally, you have to run a business. Using SIP for Skype requires buying a channel subscription to allow for outbound calls (you will need as many channel subscriptions as simultaneous outbound calls you want to support), but channels do not support subscriptions, like unlimited calls to landlines, and they have their own credit line. When a Skype user places a call over SIP, the credit is withdrawn directly from the channel, and not from the user’s credit (the SIP credentials used are the channel’s not the user’s). Hence, even if the Skype user has a subscription plan, call to landlines will still have a variable cost.
Why does Skype limit support to Verizon US wireless network? Verizon Wireless states they have 70.8 million customers. The global wireless market, according to a research topped at 3.3 billion subscribers by the end of 2007. That means that Verizon was roughly 2.15% of the total mobile market at that time. Even if Android market share in the US is just a mere 9% according to Nielsen, it means there are lots of customers that are not on Verizon but using Android and still are incapable of using Skype.
So please, Skype, release Skype for Android now, with no artificial limitations based on some murky, strange and obscure requirements from the Telcos. And stop blaming other’s like Fring. No one else but Skype is damaging the Skype brand for not supporting all platforms, unrestrictedly. Remember that Skype makes money because of its customers, and not anyone else. Serving your customers should be Skype’s only mission.
OpenSolaris b134 text-based installation
July 8th, 2010
Beginning with OpenSolaris b134 it is now possible to do a text-based installation. Some of the main differences between the new text-based installation and the LiveCD-based installation are:
- The text-based installation supports serial console.
- The text-based installation performs a minimal installation. X11, GNOME and many other packages will not be installed by default, but can be installed later on by following instructions from Text Installer b134-based project gate images.
- The text-based installation offers more installation options, like installing into a whole disk, a partition or a slice within a Solaris2 partition. Again, this can be achieved by following instructions from Text Installer b134-based project gate images.
Being able to install OpenSolaris into a slice within a partition can be useful. For example, my OpenSolaris box has 1x2TB disk and 3×1.5TB disks. I want one ZFS pool to span 4×1.5TB slices (across the 4 drives) and the ZFS root pool on the remaining space in the 2TB disk. With the LiveCD it requires a lot of hacking as described in HP Proliant DL180 G6 and ZFS (part V). With the text-based installation it is straightforward and it does not require booting a Linux distribution to modify the partition table, or from an OpenSolaris LiveCD to adjust the slices.
Solaris, HP SmartArray and data corruption on shutdown
July 7th, 2010
For quite some time I had been experiencing power-off problems on a HP Proliant server running Solaris (or OpenSolaris). Most of the time, the poweroff or init 5 commands will not cut the power and the machine will hang and stay up with fans spinning at full speed. The only solution was to manually power cycle or use LOM to shut the machine down. This has caused data corruption problems for me several times, specially when the HP SmartArray batteries get discharged.
Turns out there is a HP support document, SHUTDOWN PROCEDURE REQUIRED for ProLiant Server Running Sun Solaris 10 to Properly Flush Cache on Smart Array Controller Prior to Shutdown that precisely describes my situation. It seems it’s an interaction problem between Solaris and the cpqary3 drivers (2.1.0 or older) that causes buffers in the HP SmartArray controller to not be flushed on shut down. If the batteries drain, eventually data loss might occur. And precisely, since I was using cpqary3 driver version 2.1.0, I have just upgraded to cpqary3-2.2.0 to see if this solves my problems for once and all. We’ll see