Monthly Archives: March 2008

Console Replacement for Windows

The Windows Console is an abomination. In this modern word of mice, cut and paste, and fast video output, it’s slow, painful to use, and ugly.

As it turns out, there’s an Open Source project called, appropriately enough, Console. This project aims to address these long-standing shortcomings of the Windows console.

SourceForge Console application screenshot

Great Things

  • Proper selection without having to go to the System menu and select ‘Mark’
  • Tabs!
  • Tab title updates with name of running executable
  • Customization of the UI: toggle tabs, status bar, menu bar, tool bar
  • Supports copy on select. This will be familiar if you use PuTTY. It means selected text is automatically copied to the clipboard.

Not-So-Great Things

  • Tab title isn’t customizable
  • Colors cannot be set on a per-tab basis
  • Context menu contains a duplicate of the full Window menu, even though you likely only want the Edit menu contents

Overall, I’m very impressed with the status of the project, and I look forward to contributing to it!

Posted in Technology | Tagged , , , , , , , | Leave a comment

Windows Vista UAC Goofiness

Windows Vista UAC is not always a predictable beast.

Today I found out that if an executable doesn’t set level="asInvoker" in its manifest, UAC confirmation will kick in if any of the following substrings appear in the filename:

  • setup
  • install
  • update

A digital signature does not affect this behavior.

Besides adding “asInvoker” to the manifest, another workaround is to rename the executable to remove the trigger word. For example, renaming MyProductUpdater.exe to MyProductRenewal.exe will (for now) bypass the UAC logic.

Note that this in no way bypasses the protections of UAC. Functions which perform some task which requires UAC-approval will simply fail. This will only be useful if you have an update tool which only updates user-owned resources, since that doesn’t require UAC-approval.

Posted in Technology, Win32 | Tagged , , , , , , , | Leave a comment

Hacking the Buffalo TeraStation Live

The Buffalo TeraStation Live is a NAS device which uses an embedded, ARM-based computer running a variant of Linux. Originally, I wanted to enable NFS, though later I stuck with CIFS/Samba. However, enabling SSH access proved invaluable for performing backups without having to worry about whether or not my Mac was able to automount the CIFS/Samba share.

Enable Telnet Logins

As this guide details, acp_commander is used to enable telnet logins and deploy addons.tar to the TeraStation. What the guide doesn’t mention is that acp_commander may fail, I had to run it several times before it succeeded. Here is the output from my successful run:

macbook:~/TeraStation jeff$ java -jar acp_commander.jar -t 192.168.1.9 -o -addons
ACP_commander out of the linkstationwiki.net project.
Used to send ACP-commands to Buffalo linkstation(R) LS-PRO.

WARNING: This is experimental software that might brick your linkstation!

Using random connID value = 07CAA8F945F3
Using target:   raid/192.168.1.9
Authenticate:   OK (ACP_STATE_FAILURE)
Installing addons.tar ...
creating directory...   OK
Didn't find  locally, looking at

http://downloads.linkstationwiki.net/Uploads/LSPro/Binaries/

java.io.FileNotFoundException: /192.168.1.9/share/acp_commander/addons.tar (No such file or directory)
        at java.io.FileOutputStream.open(Native Method)
        at java.io.FileOutputStream.(FileOutputStream.java:179)
        at java.io.FileOutputStream.(FileOutputStream.java:70)
        at acpcommander.FileSystem.copyFile(FileSystem.java:44)
        at acpcommander.acp_commander.main(acp_commander.java:862)
start telnetd...        OK (ACP_STATE_OK)
Reset root pwd...       Password changed.

You can now telnet to your box as user 'root' providingno / an empty password.
macbook:~/TeraStation jeff$ 

Note that, in this run, addons.tar wasn’t successfully retrieved and deployed. addons.tar provides wget, su, and joe.

Add Software

The TeraStation Live uses an ARM processor just like the Linksys NSLU2. The NSLU2 has a great community, so there are a large number of pre-built modules available.

Posted in Linux, Technology | Leave a comment

XML + XSLT Won’t Render in Firefox

In an attempt to create some easily customizable Kanji flashcards, I put all the class handouts into an XML file and wrote an XSLT file to transform it into HTML.

Internet Explorer was able to render the resultant HTML table, but Firefox would simply show me unformatted text. Ultimately, the problem turned out to be with my xsl:stylesheet declaration.

Good

This declaration worked under both IE and Firefox:

   <?xml version="1.0" encoding="utf-8" ?>
   <xsl:stylesheet version="1.0"
                   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                   xmlns:h="http://www.w3.org/1999/xhtml">

Bad

However, this version would only render under Internet Explorer:

   <?xml version="1.0" encoding="utf-8" ?>
   <xsl:stylesheet version="1.0"
                   xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                   xmlns="http://www.w3.org/TR/xhtml1/strict">
Posted in Technology | Tagged , , , , , | Leave a comment