MoonPoint Support Logo


Shop Amazon Warehouse Deals - Deep Discounts on Open-box and Used ProductsAmazon Warehouse Deals

Advanced Search
Sun Mon Tue Wed Thu Fri Sat

Thu, Dec 31, 2009 11:58 am

Radeon 9250 with Windows 7

Initially I couldn't get Second Life to work on my wife's desktop system, which has Windows 7 and an ATI Radeon 9250 AGP video adapter. I was eventually able to resolve the problem, though.

[ More Info ]

[/virtual_worlds/sl] permanent link

Thu, Dec 31, 2009 10:32 am

Setting Sofware Variable from the Command Line

I often need to run WPKG's wpkg.js script from the command line, but when run that way the %SOFTWARE% variable is not set to point to the location where I store the software I am going to install with WPKG. The value can be set from the command line, however, with set SOFTWARE=\\server\share.

When using the WPKG-client program, the variable is set by it. If you run the wpkg.js script manually with \\server\share\wpkg.js, you need to set it manually. You can create a batch file, such as wpkg.cmd to do so.

@echo off
set SOFTWARE=\\server\share
set SETTINGS=\\server\share2
cscript wpkg.js [whatever parameter you like]


  1. [wpkg-users] %SOFTWARE% variable
    By: Rainer Meier (r.meier at
    Date: February 18, 2008 Mailing Lists

[/os/windows/software] permanent link

Wed, Dec 30, 2009 10:48 pm

Determining the Uninstall Location for a Program

I needed to be able to determine the uninstall program for a program that was installed on a system by querying the registry. When you go to the Control Panel and choose "Add or Remove Programs" or "Uninstall a Program", you see a list of installed programs, such as is shown below:

Uninstall a program (Windows 7)

The information listed there is associated with Uninstall registry keys that are found at HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall in the Windows registry.

Uninstall a program (Windows 7)

I created a batch file to query the registry to show all of the programs that have such an Uninstall key and that will accept a program name and return the uninstall command found under that key for the program.

The first example below shows the output when no arguments are passed to the batch file on the command line. For the second example, the script finds the uninstall value in the registry for the program vim. The third example shows the output when the value is not found. The fourth example shows how to query when the name of the program has spaces in it.
Adobe Flash Player ActiveX
All ATI Software
ATI Display Driver
Connection Manager
Total Uninstall 5_is1
C:\Users\JDoe\Downloads>uninstallstring vim
C:\Program Files\vim\vim72\uninstall.exe
C:\Users\JDoe\Downloads>uninstallstring gvim
ERROR: The system was unable to find the specified registry key or value.
C:\Users\JDoe\Downloads>uninstallstring Adobe Flash Player ActiveX

The batch file is as follows:

@echo off

REM uninstallstring.bat
REM Written By: Jim Cameron
REM Created: 2009-12-29
REM Last Modified: 2009-12-30
REM Version: 1.0
REM Usage:
REM uninstallstring
REM uninstallstring program
REM Purpose: If no arguments are given to the batch file on the command line, 
REM it will display a list of all the programs with UninstallString values, 
REM i.e., all the registry keys under 
REM HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall. If 
REM an argument appears on the command line, it should be one of the values 
REM reported when no arguments are given to the script, i.e. a program name, 
REM such as "vim" or "Adobe Flash Player ActiveX" (don't actually put the quotes
REM around the names, even if there are spaces in the name. E.g. for the latter 
REM case you would use the following:
REM uninstallstring Adobe Flash Player Activex
REM When a program name is included on the command line, uninstallstring.bat 
REM will determine the "UninstallString" value in the registry for that
REM particular program, i.e.  the location for the uninstall program for a 
REM particular piece of software. It will return just that value. E.g., for 
REM the "uninstallstring vim", it would return the following:
REM C:\Program Files\vim\vim72\uninstall.exe
REM If it can not find an uninstall registry value for the program listed it 
REM will return the following:
REM ERROR: The system was unable to find the specified registry key or value.

REM The following example shows a "reg query" command that could be issued from 
REM the command line to determine the value of "UninstallString" for the Vim 
REM editor software. The last line of output contains the "value name", 
REM "value type", and "value data", which is the part of the output of interest.

REM C:\>reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Vim /v UninstallString
REM HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Vim
REM    UninstallString    REG_SZ    C:\Program Files\vim\vim72\uninstall.exe

REM First, display the UninstallString values present in the registry.
REM Values returned by the reg query command will be in the following format:
REM HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Vim

IF "%1"=="" (
 GOTO Show_All
) ELSE (
 GOTO Find_String )


set _All=reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
FOR /f "tokens=6* delims=\" %%A IN ('%_All%') Do echo %%B


REM Set _Program to be the parameter entered on the command line. 
REM Use %* rather than %1 to cover cases where the program has spaces in the 
REM name.
set _Program=%*

REM Set the variable _UninstallString_Query to the reg query command to be issued.

set _UninstallString_Query=reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%_Program%" /v  UninstallString

REM There are two parts at the beginning of the line, the "value name" and the 
REM "value type" that aren't relevant, By specifying "2*" the "value name" is 
REM ignored, the "value type" goes into %%A and %%B holds everything else on 
REM the line.

FOR /f "skip=2 tokens=2*" %%A IN ('%_UninstallString_Query%') Do echo %%B


Download uninstallstring.bat


  1. Creating DOS Batch Files
    Useful Information: tons of info stuffed into a small site
  2. For /f - Looop through text Command line reference
  3. For - Looop through command output Command line reference
  4. Batch files - How To ... Verify if Variables are Defined
    Rob van der Woude's Scripting Pages
  5. Microsoft Windows XP - If
    Microsoft Corporation
  6. Microsoft DOS if command
    Computer Hope's free computer help
  7. Information on batch files
    Computer Hope's free computer help
  8. Microsoft Registry Tools
    Softpanorama (slightly skeptical) Open Source Software Educational Society
  9. Quotes, Escape Chars, Delimiters Command line reference
  10. Tips for using the Windows command prompt in Windows XP
    The Command Line in Windows
  11. Batch File Command Reference
    At The Data Center - by Don WIlwol
  12. Batch file count tokens in var Computer Tech Support Forum

[/os/windows/commands] permanent link

Wed, Dec 30, 2009 5:07 pm

Handle Installation with WPKG

I wanted to install Mark Russinovich's Handle (version 3.42) program using WPKG. I created the following package file for its installation.
<?xml version="1.0" encoding="UTF-8"?>


  <check type="file" condition="exists" path="%PROGRAMFILES%\Utilities\Sysinternals\handle.exe" />
  <!-- Test first to see if the Sysinternals directory already exists. 
  Otherwise, if it exists and an attempt is made to create it, which
  will fail, the entire installation process will fail as well. 
  Note: the double quotes must appear around the file name used as
  a test for "if not exist", since %PROGRAMFILES% expands to a directory
  path with a space in it. -->
  <install cmd='cmd /c if not exist "%PROGRAMFILES%\Utilities\Sysinternals" mkdir %PROGRAMFILES%\Utilities\Sysinternals' />
  <install cmd='cmd /c copy %SOFTWARE%\Utilities\Sysinternals\handle.exe "%PROGRAMFILES%\Utilities\sysinternals\."' />
  <remove cmd='cmd /c rmdir /s /q "%PROGRAMFILES%\Utilities\Sysinternals"' />
  <upgrade cmd='' />



When handle.exe is first run, it prompts for the acceptance of the End User License Agreement (EULA). You can avoid the prompt by running the command with the /accepteula parameter, e.g. handle /accepteula. It has to be run from from any account under which you want to use the program. It creates the registry key HKEY_USERS\SID\Software\Sysinternals\Handle, where SID is the Security Identifier for the user under which it is being run. Within the key, it creates the value below:

EulaAcceptedREG_DWORD0x00000001 (1)

You can just use handle /accepteula or you can use REG ADD HKCU\Software\Sysinternals\Handle /v EulaAccepted /t REG_DWORD /d 1 /f under the relevant account to create the registry key.


  1. Handle
    By: Mark Russinovich
    Published: November 19, 2008
    Windows Sysinternals
  2. Microsoft Windows XP - Cmd
    Microsoft Corporation
  3. Batch File Commands
    Windows Support Center
    James A. Eshelman, Proprietor & Webmaster
  4. The option "-accepteula" doesn't work Title is required
  5. >>> EULA prompt when running PSTools <<<
    Date: December 19, 2006
    Sysinternals Forums
  6. handle.exe
    Date: October 16, 2007
    Sysinternals Forums

[/os/windows/software/wpkg] permanent link

Tue, Dec 29, 2009 7:32 pm

Installing Vim with WPKG

I downloaded Cream (for Vim). Cream is a free, easy-to-use configuration of the famous Vim text editor for Microsoft Windows, GNU/Linux, and FreeBSD. I downloaded it rather than Vim from the website of the developer, Bram Moolenaar, since I had read the version from the developer's site doesn't support a silent installation, i.e. one where the user does not have to answer any questions or click on any buttons to complete the installation. I wanted to be able perform a silent install using WPKG, a software deployment tool.

THe WPKG page for Vim, noted that the Windows installer from doesn't have a silent installer, bu the installer created by Steve Hall, which is the one I downloaded from the site does have one. The author of the WPKG webpage for Vim also noted that Steve's Vim installers from 7.0.146 onwards work correctly for silent installs; however, silent uninstalls still do not work correctly.

The WPKG webpage author created the following removal batch file:

@echo off

if exist "C:\Program Files\vim\vim70\uninstall.exe" %comspec% /c start "Vim" /wait /d %WINDIR% "C:\program files\vim\vim70\uninstall.exe" /S
exit 0

His batch file presumed that Vim would be installed in C:\program files\vim. I wanted to specify a different directory for the installation directory, so I created a batch file that will check the Windows registry for the location where Vim is installed and then uninstall the software based on the location found for it under the UninstallString for Vim in the registry.

@echo off

REM The following example shows a "reg query" command that could be issued
REM from the command line to determine the value of "UninstallString" for
REM the Vim editor software. The last line of output contains the "value name",
REM "value type", and "value data", which is the part of the output of
REM interest.

REM C:\>reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Vim /v UninstallString
REM HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Vim
REM    UninstallString REG_SZ C:\Program Files\vim\vim72\uninstall.exe

REM Set the variable _UninstallString_Query to the reg query command to be
REM issued.

set _UninstallString_Query=reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Vim /v UninstallString

REM There are two parts at the beginning of the line, the "value name" and
REM the "value type" that aren't relevant. By specifying "2*" the "value name"
REM is ignored, the "value type" goes into %%A and %%B holds everything else
REM on the line.

FOR /f "tokens=2*" %%A IN ('%_UninstallString_Query%') Do set _Uninstall_program=%%B

%comspec% /c start "Vim" /wait /d %WINDIR% "%_uninstall_program%" /S

exit 0

The installation file, gvim-7-2-320.exe was built with the Nullsoft Scriptable Install System (NSIS) as I could see by analyzing the file with FileAlyzer and searching for text in the binary file and also when I tried running the file without the /S option for a silent install. When I ran the file without the /S option, I saw "Nullsoft Install System v2.45" displayed on one of the installation windows.

An installation package created with NSIS should accept a /D=dir parameter to allow one to specify the installation directory, but no matter what I tried the software always installed in the default location of C:\Program Files\vim. I did put the option at the end of the installation line and used a capital "D" for the parameter, since the parameters are case sensitive. For the WPKG install line I first tried the following:

<install cmd='%SOFTWARE%\Editors\gvim-7-2-320.exe /S' /D=%PROGRAMFILES%\Editors\vim/>

That didn't work. the WPKG webpage for NSIS stated "It must be the last parameter used in the command line and must not contain any quotes, even if the path contains spaces. Only absolute paths are supported." So I tried the following variations in place of the environment variable %PROGRAMFILES%, but the results were always the same.

\Program Files\Editors\vim
C:\Program Files\Editors\vim

I.e. Vim was installed in C:\Program Files\vim no matter what I used. I thought that perhaps I had to use the 8.3 form for directores with a space in them, but using Progra~1 for Program Files did not help. It didn't matter that the directory Editors already existed, i.e. that I wasn't expecting it to create multiple directory levels. I finally just left it in that location.

The package file I used with WPKG for gvim, gvim.xml contains the following lines:

<?xml version="1.0" encoding="UTF-8"?>

<package id="gvim" name="gvim" revision="1" reboot="false" priority="0">
   <check type="uninstall" condition="exists" path="Vim 7.2.320" />
   <!-- Though it uses the NSIS installer, the program won't accept
   the /D=dir option that allows you to specify the installation 
   directory. It insists on installing itself in C:\Program Files\vim. -->
  <install cmd='%SOFTWARE%\Editors\gvim-7-2-320.exe /S' />
  <upgrade cmd='%SOFTWARE%\Editors\vim-remove.bat' />
  <upgrade cmd='%SOFTWARE%\Editors\gvim-7-2-320.exe /S'  />
  <remove cmd='%SOFTWARE%\Editors\vim-remove.bat' />


[/os/windows/software/wpkg] permanent link

Sun, Dec 27, 2009 9:45 pm

Installing RealPopup with WPKG

I installed RealPopup 2.6 Build 167 on a Windows 7 system using WPKG, which is open source software for deployment and distribution of software. I created a realpopup.xml file which I placed in WPGK's packages directory on the server from which I install software. The realpopup.xml file contained the following commands:

<?xml version="1.0" encoding="UTF-8"?>

   <check type="uninstall" condition="exists" path="RealPopup"/>
   <install cmd='%SOFTWARE%\Network\Chat\RealPopup\realp26_167.exe /sp- /verysilent /Dir="%PROGRAMFILES%\Network\Chat\RealPopup"'/>
   <upgrade cmd='%SOFTWARE%\Metwork\Chat\RealPopup\realp26_167.exe /sp- /verysilent /Dir="%PROGRAMFILES%\Network\Chat\RealPopup"'/>
   <remove cmd='"%PROGRAMFILES%\Network\Chat\RealPopup\unins000.exe" /sp- /verysilent /norestart'/>


%SOFTWARE% is a variable representing the directory on the server where software to be installed is located. I was able to specify the directory where the software should be installed with /Dir="%PROGRAMFILES%\Network\Chat\RealPopup" rather than having to accept the default installation directory, since RealPopup uses Inno Setup, an open source installer, to install RealPopup. I could tell beforehand that it uses Inno Setup by analyzing it with Filealyzer.

FileAlyzer analysis of realp26_167.exe

The developer's website no longer exists, but I found the software still works under Windows 7. The program provides a capability to chat with other users on the same LAN. It supports many useful features such as options for users and groups, an internal network browser, names auto complete, and so on. RealPopup is available in more than 12 languages.

[/os/windows/software/wpkg] permanent link

Sun, Dec 27, 2009 8:23 pm

Installing PuTTY 0.60 with WPKG

I installed PuTTY on a system using WPKG, which is open source software for deployment and distribution of software. I created a putty.xml file which I placed in WPGK's packages directory on the server from which I install software. The putty.xml file contained the following commands:

<?xml version="1.0" encoding="UTF-8"?>

   <check type="uninstall" condition="exists" path="PuTTY version 0.60"/>
   <install cmd='%SOFTWARE%\network\ssh\putty-0.60-installer.exe /sp- /verysilent /Dir="%PROGRAMFILES%\Network\SSH\PuTTY"'/>
   <upgrade cmd='%SOFTWARE%\network\ssh\putty-0.60-installer.exe /sp- /verysilent'/>
   <remove cmd='"%PROGRAMFILES%\Network\SSH\PuTTY\unins000.exe" /sp- /verysilent /norestart'/>

%SOFTWARE% is a variable representing the directory on the server where software to be installed is located. I was able to specify the directory where the software should be installed with /Dir="%PROGRAMFILES%\Network\SSH\PuTTY" rather than having to accept the default installation directory of %PROGRAMFILES%\PuTTY , since PuTTY uses Inno Setup, an open source installer, to install PuTTY. I could tell beforehand that it uses Inno Setup by analyzing it with Filealyzer.

FileAlyzer analysis of putty-0.60-installer.exe

[/os/windows/software/wpkg] permanent link

Tue, Dec 22, 2009 5:10 pm

DVI versus HDMI versus VGA

After examining various monitors while out shopping for a Christmas gift for someone, I realized I needed to become familiar with the differences between HDMI, DVI, and VGA, in order to assess which might provide a higher monitor might provide a higher video quality, since different monitors supported different combinations of those video interfaces.

[ More Info ]

[/video/dvi] permanent link

Sat, Dec 19, 2009 2:59 pm

Port Spanning

Cisco switches have the capability to mirror what is going to/from one port on a switch to another port on the same switch for monitoring purposes. Cisco dubs this mirroring capability "port spanning". The monitor command can be used to have all of the data to and from a particular port copied to another port of your choosing on the switch.

[More Info]

[/hardware/network/switch/cisco] permanent link

Tue, Dec 15, 2009 2:27 pm

Open Failed for

When I tried restarting ELOG from a user account on a Solaris 7 system, I received the following error:
bash-2.03$ /usr/local/bin/elogd -c /home/elog/elogd.cfg -d /home/elog/logbooks -n localhost -D /usr/local/bin/elogd: fatal: open failed: No such file
 or directory

I had been running the program before without a problem, so I looked for It was present on the system.

bash-2.03$ find / -name -print 2>/dev/null
# ls -l /usr/local/ssl/lib
total 8950
drwxr-xr-x   2 bin      bin          512 Jun 22 15:46 engines
-r--r--r--   1 bin      bin         5396 Mar 29  2009 fips_premain.c
-r--r--r--   1 bin      bin           68 Mar 29  2009 fips_premain.c.sha1
-rw-r--r--   1 bin      bin      2263212 Mar 29  2009 libcrypto.a
lrwxrwxrwx   1 root     other         18 Oct 16  2007 -> libcrypto.
-r-xr-xr-x   1 bin      bin      1525564 Mar 29  2009
-rw-r--r--   1 bin      bin       416204 Mar 29  2009 libssl.a
lrwxrwxrwx   1 root     other         15 Oct 16  2007 ->
-r-xr-xr-x   1 bin      bin       313176 Mar 29  2009
drwxr-xr-x   2 bin      bin          512 Jun 22 15:46 pkgconfig

So I checked to see what libraries elogd was using with the ldd command.

bash-2.03$ ldd /usr/local/bin/elogd =>        /usr/lib/ =>   /usr/lib/ =>       (file not found) =>     /usr/lib/ =>    /usr/lib/ =>    /usr/lib/

So I then logged into the root account and checked the elogd file with the ldd command from that account.

bash-2.03$ su - root
Sun Microsystems Inc.   SunOS 5.7       Generic October 1998
# ldd /usr/local/bin/elogd =>        /usr/lib/ =>   /usr/lib/ =>       /usr/local/ssl/lib/ =>     /usr/lib/ =>    /usr/lib/ =>    /usr/lib/ =>    /usr/local/ssl/lib/ =>         /usr/local/lib/

From that account, I did not see "file not found" for

At an FAQ page on the Electrical and Computer Engineering Department website for the University of Toronto I found the following advice:

Q. When I try to run "svn" on Solaris, I get the error: svn: fatal: open failed: No such file or directory
How can I get svn to work on Solaris?

A. Add /local/openssl-0.9.8a/lib to the LD_LIBRARY_PATH env var before you \start:
i.e., setenv LD_LIBRARY_PATH /local/openssl-0.9.8a/lib

I checked the LD_LIBRARY_PATH setting for the root command.


I then checked the value for the variable for the user account.

bash-2.03$ echo $LD_LIBRARY_PATH


On Solaris systems, you can use the -s option to show the full library search path.

bash-2.03$ ldd -s /usr/local/bin/elogd

   find; required by /usr/local/bin/elogd
    search path=/usr/lib  (default)
    trying path=/usr/lib/ =>        /usr/lib/

   find; required by /usr/local/bin/elogd
    search path=/usr/lib  (default)
    trying path=/usr/lib/ =>   /usr/lib/

   find; required by /usr/local/bin/elogd
    search path=/usr/lib  (default)
    trying path=/usr/lib/ =>       (file not found)

   find; required by /usr/local/bin/elogd
    search path=/usr/lib  (default)
    trying path=/usr/lib/ =>     /usr/lib/

   find; required by /usr/lib/

   find; required by /usr/lib/

   find; required by /usr/lib/
    search path=/usr/lib  (default)
    trying path=/usr/lib/ =>    /usr/lib/

   find; required by /usr/lib/

   find; required by /usr/lib/
    search path=/usr/lib  (default)
    trying path=/usr/lib/ =>    /usr/lib/

   find; required by /usr/lib/

   find; required by /usr/lib/

   find object=/usr/platform/SUNW,Ultra-5_10/lib/; required by /usr/lib/

So, when attempting to run elogd from the user account, the system was only checking /usr/lib for Since the file wasn't in that location, I got the "fatal: open failed: No such file or directory" message. So, though I thought I had been running the program from that user account, I must have always previously been running it from the root account, since I didn't ever see the error message before when running elogd.

So, while logged into the user account, I set LD_LIBRARY_PATH to /usr/local/ssl/lib. I was then able to run elogd from the user account without an error message appearing.

bash-2.03$ LD_LIBRARY_PATH=/usr/local/ssl/lib
bash-2.03$ export LD_LIBRARY_PATH
bash-2.03$ /usr/local/bin/elogd -c /home/elog/elogd.cfg -d /home/elog/logbooks -
n localhost -D
bash-2.03$ ps -ef | grep elogd | grep -v grep
jsmith  7961     1  0 14:13:05 ?        0:00 /usr/local/bin/elogd -c /home/elog/
elogd.cfg -d /home/elog/logbooks -n localhos


  1. Blastwave Packages
    Date: January 25, 2008
    Joyent Wiki
  2. When I try to run "svn" on Solaris, I get the error: svn: fatal: open failed: No such file or directory Killed
    Eugenia's Home Page
  3. Obtaining a List of the Libraries Required by a Program
    MoonPoint Support

[/os/unix/solaris] permanent link

Sun, Dec 13, 2009 4:57 pm

How Long Does Refrigerated Egg Salad Last?

We had some egg salad in the refrigerator that had "use by January 9, 2010" stamped on it, I was hesitant to have it for dinner tonight, though, because I opened the container on December 7, 2009. We hadn't eaten much of the egg salad that night, so there was quite a bit left. I searched online for information on how long egg salad might last in a refrigerator. Some people posting answers to others asking the same question stated it was only good for a couple of days, while others said 3 to 5 days. The maximum time I saw anyone mention was a week. I was hoping to find a more authoritate source than just guesses by people posting in forums, though. I did find a statement on a United States Department of Agriculture (USDA) Food Safety and Inspection Service (FSIS) site regarding Tips for Easter and Passover Food Safety stating the following:

For egg safety - to stay healthy and avoid foodborne illness — USDA advises:

Since the recommendation from the FSIS site was not to use egg sald after 3 to 4 days, I threw away the egg salad.

[/info/food/safety] permanent link

Fri, Dec 11, 2009 10:35 pm

Paint Shop Pro 9 Not Enough Memory Error

While editing an image in Paint Shop Pro 9.01 on her laptop my wife received the error message below:

Script Output
Executing Crop
Executing DeleteLayer
------- Command Execution Failed -----------
Command Name: JGLDeformObject
Error Text: Not enough memory to complete this operation; close one or more documents or applications and try again. If this does not correct the problem, you may need to adjust your memory settings or work on a smaller document.
------- Command Execution Failed -----------
Command Name: JGLDeformObject
Error Text: Not enough memory to complete this operation; close one or more documents or applications and try again. If this does not correct the problem, you may need to adjust your memory settings or work on a smaller document.

It took me awhile to figure out that the problem was simply due to an image resizing option being set to "percent" rather than "pixels". I should have spotted that fairly quickly, but didn't.

[ More Info ]

[/os/windows/software/graphics/corel/psp] permanent link

Tue, Dec 08, 2009 9:54 pm

Problem with Media Card Reader in HP G70 Laptop

A family member has an HP laptop, model number HP G70-460US. I upgraded Microsoft Windows on the system from Vista to Windows 7 a few weeks ago. Today, when she tried using memory sticks from her camera in the media card reader built into the laptop, Windows Explorer would stop responding. I attempted to restart Windows Explorer, but it wouldn't restart. Nor could I shutdown and restart the system without powering it off using the power button.

I tried a couple of memory sticks, but the result was the same. She could sometimes move files from a memory stick, but then attempting to access the memory stick again would cause the Windows Explorer to stop responding.

I downloaded and installed the Realtek USB 2.0 Card Reader driver, which appears to have resolved the problem.

Version:6.1.7100.30093 A
Compatibility: Microsoft Windows 7 (32-bit), Microsoft Windows 7 Home Premium (64-bit), Microsoft Windows 7 (64-bit), Microsoft Windows 7 Professional (64-bit), Microsoft Windows 7 Ultimate (64-bit), Microsoft Windows 7 Home Basic (32-bit), Microsoft Windows 7 Home Premium (32-bit), Microsoft Windows 7 Professional (32-bit), Microsoft Windows 7 Ultimate (32-bit), Microsoft Windows 7 Starter (32-bit), Microsoft Windows 7 Home Basic (64-bit)
System requirements:No additional prerequisites
Description:This driver enable card reader read/write functionalities.
Enhancements:Original Software/Drivers

Download Site: HP
Download URL: Realtek USB 2.0 Card Reader

[/pc/hardware/hp] permanent link

Mon, Dec 07, 2009 5:52 pm

Conditional Formatting in Excel

Microsoft Excel has a "conditional formatting" feature that allows one to change the formatting of cells based on their contents. E.g., you can specify that the background color for a cell or the font color be changed based on the current value of a cell.

[ More Info ]

[/os/windows/office/excel] permanent link

Tue, Dec 01, 2009 7:28 am

Removing the Arrow from Windows Shortcuts under Windows 7

A family member doesn't like the arrows on Windows shortcuts, so I needed to remove them from her new Windows 7 system. I found that the registry key I removed from her Windows XP system to remove the arrows from shortcuts on that system no longer was present in the Windows registry on her Windows 7 system. I did find someone providing a .reg file that could be used to add a registry entry under Windows 7 that would remove the shortcut arrows.

[ More Info ]

[/os/windows/win7] permanent link

Wed, Nov 25, 2009 4:01 pm

Jewel Logic and SecuROM

While looking for some files on a family member's Windows XP Media Center Edition system today, I found an unusual hidden directory named SecuROM:

X:\Documents and Settings\Amy\Application Data>dir /ah
 Volume in drive X is Sun
 Volume Serial Number is 4E62-15B2

 Directory of X:\Documents and Settings\Amy\Application Data

09/08/2009  06:49 PM    <DIR>          .
09/08/2009  06:49 PM    <DIR>          ..
08/30/2005  08:52 AM                62 desktop.ini
08/27/2007  04:54 PM    <DIR>          SecuROM
               1 File(s)             62 bytes
               3 Dir(s)  173,915,779,072 bytes free

X:\Documents and Settings\Amy\Application Data>dir /ah SecuROM
 Volume in drive X is Sun
 Volume Serial Number is 4E62-15B2

 Directory of X:\Documents and Settings\Amy\Application Data\SecuROM

08/27/2007  04:54 PM    <DIR>          .
08/27/2007  04:54 PM    <DIR>          ..
08/27/2007  04:54 PM    <DIR>          UserData
               0 File(s)              0 bytes
               3 Dir(s)  173,915,779,072 bytes free

X:\Documents and Settings\Amy\Application Data>dir /ah SecuROM\UserData
 Volume in drive X is Sun
 Volume Serial Number is 4E62-15B2

 Directory of X:\Documents and Settings\Amy\Application Data\SecuROM\UserData

08/27/2007  04:54 PM    <DIR>          .
08/27/2007  04:54 PM    <DIR>          ..
08/27/2007  04:55 PM               444 securom_v7_01.bak
08/27/2007  04:55 PM               444 ???????????p?????????
08/27/2007  04:55 PM                16 ???????????p?????????
               3 File(s)            904 bytes
               2 Dir(s)  173,915,680,768 bytes free

Checking on what SecuROM might be, I found a Wikipedia webpage on it at SecuROM.

SecuROM is a CD/DVD copy protection product, most often used for commercial computer games running under Microsoft Windows, developed by Sony DADC. SecuROM aims to resist home media duplication devices, professional duplicators, and attempts at reverse engineering the game. The use of SecuROM has generated controversy due to the fact that it is not uninstalled upon removal of the game. In 2008, consumers filed a class-action lawsuit against Electronic Arts for its use of SecuROM in the video game Spore.

I found the following information in the article troubling, since I sometimes use Process Explorer on systems for troubleshooting purposes.

Disk drive emulators and some debugging software will also cause the launch of the game to fail and a security module error to be generated. In fact a reboot of the entire system was required if Process Explorer prior to version 11 was used before an attempt to run the protected software. That problem was caused by a driver that was kept in memory after Process Explorer was closed.

I checked to see what software was installed on the system on August 27, 2007, which is the date the SecuROM directory and files within it were created. The family member installed a lot of games that day. The SecuROM directory was created at 4:54 P.M. that day. I saw she installed Jewel Logic shortly before the SecuROM directory was created. Jewel Logic is produced by Cosmi Corporation. Since the timestamp on the Jewel Logic directory on her system was 4:53 P.M., I suspect that when she installed Jewel Logic, it used the SecuROM copy protection scheme and as a result the SecuROM files were placed on her system during the installation of Jewel Logic.


  1. SecuROM
    Wikipedia, the free encyclopedia
  2. The Voice of Heard/SecuROM: Making Copyright Even Less Sense
    By: TC Tim
    Date: December 8, 2008
    WCCA TV13 | Worcester Community Cable Access
  3. Securom 7 Antidumps

[/security] permanent link

Tue, Nov 24, 2009 10:38 pm

Installing Winamp Media Player 5.5.6

I installed Winamp Media Player 5.5.6 on my wife's laptop today. I removed the eMusic Promotion offer and the Winamp Toolbar afterwards.

[ More Info ]

[/os/windows/software/audio/winamp] permanent link

Sun, Nov 22, 2009 9:57 pm

MUSHClient and SQLite

MUSHClient, is a freeware MUD client. Since I wanted to be able to install the software on several systems, but have all of the systems use the same MUSHClient World Information files, which are stored as .MCL files, I wanted to see where the program stored the location for the worlds files. Of course, I could manually change the location within the Global Preferences on each system, but I wanted to see if there was a way I could just put the information in a .reg Windows registry file or set it with a script.

Initially, I thought the program stored the default world file directory location in the Windows registry, but I found that, though there was a DefaultWorldFileDirectory value in the registry, the program actually used an SQLite database, instead of the registry entry.

[ More Info ]

[/gaming/mushclient] permanent link

Sun, Nov 22, 2009 4:53 pm

Passwords Plus Registry Keys for Databases

When a password database is created in Passwords Plus from DataViz, it creates the following registry key:

The key will have a DaggerFolder value.

Value name:DaggerFolder
Value data:C:\Users\Jane\Documents\Passwords Plus

The directory listed will be the location where Passwords Plus creates its user folders where it will store individual password databases

Passwords Plus allows a user to have multiple databases specified by user. For instance, Jane Smith could create one with a username of Jane for her personal passwords and another one JSmith for her work-related passwords.

If she did, beneath the HKEY_CURRENT_USER\Software\DataViz\PasswordsPlus registry entry, you would find the following: HKEY_CURRENT_USER\Software\DataViz\PasswordsPlus\Users\Jane

And the following value would be found within that key:

Value name:DBPath
Value data: C:\Users\Jane\Documents\Passwords Plus\Jane\PassPlusDB.PDB

The value would specify exactly where the Passwords Plus database would be located.

If Jane created another user within Passwords Plus, named JSmith, the following would also be found within a HKEY_CURRENT_USER\Software\DataViz\PasswordsPlus\Users\JSmith key:

Value name:DBPath
Value data: C:\Users\Jane\Documents\Passwords Plus\JSmith\PassPlusDB.PDB

If you want to have multiple systems share the same databases, which will be accessible through a shared folder on a server, you could change the DaggerFolder and DBPath values. E.g., suppose there is a folder shared from MyServer with a share name of Shared and underneath that shared folder is a directory named Passwords with holds the various usernames created for Passwords Plus. Then you could have the following value for DaggerFolder

Value name:DaggerFolder
Value data:\\MyServer\Shared\Passwords

And you could use the following for a Passwords Plus username of Jane:

Value name:DBPath
Value data: \\MyServer\Shared\Passwords\Jane\PassPlusDB.PDB

If you wanted to copy these settings from one system to another, so that you don't have to manually edit the registry values on the second system, you can run regedit and navigate to HKEY_CURRENT_USER\Software\DataViz, click on it to select it, then select File and Export the registry settings to a file, say Passwords-Plus-Users.reg. You can then take that registry file to another system and double-click on it to enter the same values into the registry on that system.

Note: these notes were written for Passwords Plus for Windows 1.006 and 1.007 and may or may not apply to other versions.

[/os/windows/software/security/password] permanent link

Tue, Nov 17, 2009 11:00 pm

Sierra's Hallmark Card Studio Deluxe Data Location

Sierra's Hallmark Card Studio Deluxe 1.0 creates a registry entry to indicate where it stores event planner calendar entries and address book entries. The registry key HKEY_LOCAL_MACHINE\SOFTWARE\Sierra OnLine\Hallmark Card Studio\Deluxe\1\Paths might have the following information for a default installation.

Value name:DataPath
Value data:c:\SIERRA\CardStudio\Data

On a Windows XP system, you would find the PLANR32.DAT file it uses at that location. However, on a Windows 7 system, the data might actually be stored in PLANR32.DAT in another location specific to the user account from which the data is accessed, .e.g for a user with an account name of Liza, the data directory would be C:\Users\Liza\AppData\Local\VirtualStore\SIERRA\CardStudio\Data, assuming you selected the default location for installing the software rather than putting it under C:\Program Files\SIERRA\CardStudio as I would do. The PLANR32.BAK backup file it creates when you update the data would be in the same location.

Note: the VirtualStore registry entry is an example of Registry virtualization. According to Microsoft, "Registry virtualization is an application compatibility technology that enables registry write operations that have global impact to be redirected to per-user locations. This redirection is transparent to applications reading from or writing to the registry. It is supported starting with Windows Vista."

But, you can have Card Studio look elsewhere by changing the regsitry value for DataPath. E.g. you could have the program on two systems look in a directory at a network location for the data, so that the two systems would share the same data. For instance you could put \\MyServer\Shared\Sierra\CardStudio\Data in that registry entry to have it look on a system named MyServer with a directory shared as Shared. Note: you will have to run regedit from an administrator's account to be able to update the registry entry.

HKEY_LOCAL_MACHINE\SOFTWARE\Sierra OnLine\Hallmark Card Studio\Deluxe\1\Paths

Value name:DataPath
Value data:\\MyServer\Shared\Sierra\CardStudio\Data


  1. Hallmark Card Studio Software
  2. Registry Virtualization
    Microsoft Developer Network (MSDN)

[/os/windows/software/graphics/sierra] permanent link

Tue, Nov 17, 2009 5:32 pm

Using SpamCop Blocking List (SCBL) with Sendmail

I've been getting far too much spam in my inbox despite using 6 different DNSBL's currently with sendmail. The blocklists I'm using on my email server do block a lot of spam, but a lot still gets through. I just checked a report I generate at midnight each day on how many messages were blocked by each list I am currently using and saw the following for yesterday:
Mon 11/16/2009

0 	 McFadden Associates E-mail Blacklist
70 	 Spamhaus Block List
4687 	 Passive Spam Block List (PSBL)
2496 	 Spam and Open Relay Blocking System (SORBS)
50 	 Swinog DNSRBL
14 	 Not Just Another Bogus List (NJABL)

7317 	 Total

The McFadden blacklist hasn't been working for quite some time; I should have removed it from sendmail's /etc/mail/ file previously. I removed it today and added the SpamCop Blocking List (SCBL).

I decided to add that list after reading a comment at Blocking Spam That Are In A Foreign Language by Low Jeremy about its usefulness in blocking messages in a foreign language. I've been getting a lot of messages that appear to be in Russian. Since I can't read Russian, such messages are of no avail to the spammers and are exceedingly annoying to me, since they clutter my inbox every day.

I'm using sendmail on the server, so I replaced the reference to the defunct McFadden Associates E-mail Blacklist in /etc/mail/ with FEATURE(`enhdnsbl', `', `"Spam blocked see:"$&{client_addr}', `t')dnl.

There are instructions for incorporating an SCBL check into various email server programs at How do I configure my mailserver to reject mail based on the blocklist? Specific instructions for sendmail are at SpamCop FAQ: Sendmail.

I followed the suggestion of using enhdnsbl, an enhanced version of DNSBL, rather than dnsbl as I'm using in /etc/mail/ for other blacklists on the system, because I have a recent version of sendmail and because the SpamCop site had the following information:


Some problems have been found with later versions of Sendmail.

The easiest fix may be to use the second method above, enhdnsblk instead of dnsbl.

SpamCop uses 'rbldns' to serve it's blacklist information. Rbldns does not yet have support for IPv6, but newer versions of sendmail (8.12.0 and greater) try IPv6 before IPv4. Sendmail asks for an AAAA record instead of an A record and SpamCop rejectes the query - resulting in spam slipping through the filters.

There are instructions for disabling AAAA (IPv6) queries from sendmail at Disable AAAA (IPv6) lookups without recompiling Sendmail, and the site states the following, but I decided to just use the enhdnsbl approach.

Some DNS based rejection lists cause failures if asked for AAAA records. If your sendmail version is compiled with IPv6 support (NETINET6) and you experience this problem, add

define(`DNSBL_MAP', `dns -R A')

before the first use of this feature. Alternatively you can use enhdnsbl instead (see below).

I deleted the McFadden blacklist entry and added the SCBL entry to the end of the list of blacklists I check. I now have the following in /etc/mail/

FEATURE(local_procmail, `', `procmail -t -Y -a $h -d $u')dnl
FEATURE(`access_db', `hash -T<TMPF> -o /etc/mail/access.db')dnl
FEATURE(`dnsbl', `', `550 Spam Block: mail from $&{client_addr} refused - See')dnl
FEATURE(`dnsbl', `', `550 Spam Block: mail from $&{client_addr} refused - see')dnl
FEATURE(`dnsbl',`',`550 Spam Block: mail from $&{client_addr} refused - see')dnl
FEATURE(`dnsbl',`',`550 Spam Block: mail from $&{client_addr} refused - see')dnl
FEATURE(`dnsbl',`',`550 Spam Block: mail from $&{client_addr} refused - see$&{client_addr}')dnl
FEATURE(`enhdnsbl', `', `"Spam blocked see:"$&{client_addr}', `t')dnl

I regenerated with m4 /etc/mail/ > /etc/mail/ and then restarted sendmail with /etc/init.d/sendmail restart.

A few minutes after I restarted sendmail, I checked /var/log/maillog to see whether the SCBL had blocked any spam and found it had already blocked 21 messages.

# grep spamcop /var/log/maillog | wc -l


  1. DNSBL
    Wikipedia, the free encyclopedia
  2. Blocking Spam That Are In A Foreign Language
    By: Low Jeremy
    Article Submitted On: December 04, 2006
  3. How do I configure my mailserver to reject mail based on the blocklist?
  4. SpamCop FAQ: Sendmail
  5. Disable AAAA (IPv6) lookups without recompiling Sendmail
    Date: April 26, 2007
    comp.mail.sendmail - PHWinfo
  6. Sednmail cf/README

[/network/email/sendmail] permanent link

Sun, Nov 15, 2009 3:11 pm

ClamWin 0.95.3 Scan of Windows 7 Home Premium Edition Laptop on 2009-11-15

I scanned a laptop running Windows 7 Home Premium Edition with ClamWin Free Antivirus version 0.95.3 on 2009-11-15. ClamWin reported the following:

C:\$WINDOWS.~Q\DATA\Users\admin\Desktop\desktop.ini: Worm.Autorun-2190 FOUND
C:\$WINDOWS.~Q\DATA\Windows\System32\config\systemprofile\Desktop\desktop.ini: Worm.Autorun-2190 FOUND
C:\Users\admin\Desktop\desktop.ini: Worm.Autorun-2190 FOUND
C:\Users\Liza\Desktop\desktop.ini: Worm.Autorun-2190 FOUND
C:\Windows\SoftwareDistribution\Download\d16f45aa864340ccf36504588c6fae4b\ W32.Virut.Gen.D-163 FOUND
C:\Windows\SoftwareDistribution\Download\daa4e3a0ea4e94aba329bc28d3b354b1\ W32.Virut.Gen.D-163 FOUND

But, I believe all of those were false positives.

[ More Info ]

[/security/antivirus/clamav] permanent link

Sat, Nov 14, 2009 9:58 pm

Image Backup with Windows 7 Backup Program

I recently upgraded my wife's laptop from Vista Home Premium to Windows 7 Home Premium. I installed a lot of applications on the system and decided it was time to get an image backup of the system. I've been using Symantec's Ghost 2003 program for image backups, but when I tried to backup the laptop with it, it aborted part way through the backup. So I decided to try the backup program that comes with Windows 7 to create an image backup. It was fairly straightforward to use and I didn't encounter any problems with it.

[ More Info ]

[/os/windows/win7/Backup] permanent link

Sat, Nov 14, 2009 8:05 pm

Comic Collector and Themida

When I tried starting Comic Collector 4.5.1 from, a window opened with the title of "Themida" Within the window was the statement "A monitor program has been found running in your system. Please, unload it from memory and restart your program." The Comic Collector software incorporates code from Oceans Technologies called Themida that attempts to stop anyone from debugging software that incorporates the Themida code. I had Process Monitor v2.8 from Microsoft running at the time. The Themida code apparently detects changes made by Process Monitor to display file and registry accesses in real-time and stops programs from running that incorporate the Themida code, so that someone can't analyze the code in real-time. It doesn't matter if you exit from Process Monitor; you have to reboot the system to undo whatever change was made by Process Monitor when it started in order to get Comic Collector to open.

[ More Info ]

[/os/windows/debugging/Themida] permanent link

Sat, Nov 14, 2009 7:33 pm


Through someone else's posting, I discovered a site today that will help you identify a font. The site is WhatTheFont .
Seen a font in use and want to know what it is?
Submit an image to WhatTheFont to find the closest matches in our database. Or, let cloak-draped font enthusiasts lend a hand in the WhatTheFont Forum

You can upload an image file to the site for analysis or specify a URL.

You can also search for and buy fonts from the site at MyFonts.

[/fonts] permanent link

Fri, Nov 13, 2009 8:54 pm

Adding Folders Under "All Programs" for All Users Under Windows 7

I just recently installed Windows 7 on my wife's laptop. I wanted to add a new program group (folder) that I intended to name "Utilities" under "All Programs" so that the group would be visible to all accounts on the system. I right-clicked on the start program button as I would under Windows XP, but there was no "Open all users" or "Explore all users" option. And there was no Documents and Settings\All Users\Start Menu\Programs folder where I would add a new folder under Windows XP. Instead, you add a folder under C:\ProgramData\Microsoft\Windows\Start Menu\Programs. To see this folder you will have to turn on the display of hidden files and folders, which you do under Windows 7 by selecting "Organize" from the Windows Explorer, then selecting "Folder and search options", and then clicking on the "View tab". Then under "Hidden files and folders", select "Show hidden files, folders, and drives". You will then be able to see the C:\ProgramData\Microsoft\Windows\Start Menu\Programs folder and create a new folder within it.

Once I had created the Utilities folder by right-clicking and selecting "New" and "Folder" within the C:\ProgramData\Microsoft\Windows\Start Menu\Programs, I then expected to just be able to right-click again within the Utilities folder and select "New" and "Shortcut". But the only option under "New" was "Folder". So I next opened another Windows Explorer window, thinking I could create a shortcut by just going to the folder where the program was located that I wanted to add to the Utilities folder and then clicking on the program, in this case procmon.exe, and then dragging it over to C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Utilities while holding down the Alt key (if you just drag the program from one location on the same drive to another, the progam is moved, but, if you hold down the Alt key at the same time, you will get a shortcut, aka "link"). But that didn't work either. I received the message "Windows can't create a shorcut here. Do you want the shortcut to be placed on the desktop instead?" I chose "yes". I was then able to move the shortcut from the desktop to the C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Utilities, though I was told "You'll need to provide administrator permission to move to this folder." I clicked on "Continue" and the shortcut was moved. I was logged on under an account, admin, in the administrator group throughout the process.

This seems like a far more cumbersome means of performing a fairly simple task under Windows 7 than it was under Windows XP.

Apparently, you can have at most 70 folders under "All Programs" in Windows 7. Tim Long posted the following at Windows 7 Blank ‘All Programs’ Menu:

I’ve run into a problem in Windows 7 RC where the ‘All Programs’ menu goes completely blank, making it a pain to access installed programs. The search feature still works and programs can be accessed that way.

This happens when there are more than about 70 folders in the ‘All Programs’ menu. The workaround I have come up with is:

  1. Uninstall programs until there is <70 folders in the All Programs menu.
  2. Use Explorer to browse the All Programs folder (typically C:\ProgramData\Microsoft\Windows\Start Menu\Programs) and reorganise some of the folders into a subfolder. For example, create a Utilities folder and drag some of the other folders inside it. There must be <70 folders in the top level.

So you can use either method 1 or method 2 above to resolve the problem.


  1. Start Menu All Programs - Add or Delete Shortcuts
    By: Brink
    Date: November 3, 2008
    Windows 7 Forums
  2. Windows 7 blank All Programs menu
    Date: August 19, 2009
    Super User
  3. Windows 7 Blank ‘All Programs’ Menu
    By: Tim Long
    Date: August 19, 2009
    Blogs - TiGra Networks

[/os/windows/win7] permanent link

Fri, Nov 13, 2009 9:42 am

Drupal and RDF

At a recent International Semantic Web Conference (ISWC), Rennsselaer Polytechnic Institute researchers demonstrated how they had re-rendered data from the website of the U.S. Office of Management and Budget (OMB) into the Resource Description Framework.

According to Wikipedia, the Semantic Web is "is an evolving development of the World Wide Web in which the meaning (semantics) of information and services on the web is defined, making it possible for the web to understand and satisfy the requests of people and machines to use the web content.It derives from World Wide Web Consortium director Sir Tim Berners-Lee's vision of the Web as a universal medium for data, information, and knowledge exchange."

The Rennsselaer Polytechnic Institute researchers' goal, according to Li Ding, was to "make the whole thing shareable and replicable for others to reuse." Ding said that rendering data into RDF, which is used to create the Linked Data necessary to the Semantic Web, can make it easier to interpose it with other sets of data to create entirely new datasets and visualizations, Ding said. He showed a Google Map graphic that interposed RDF versions of two different data sources from the Environmental Protection Agency, originally rendered in CSV files.

The White House recently deployed the Drupal Content Management System (CMS) for the webiste. According to David Lantner, editor of the "Clear Type Press" blog, Drupal could give the White House a good start in annotating its data in a machine-readable way, since it "enables authors to add semantic their markup using attributes that are both machine-readable and human-friendly."

At the ISWC gathering, Stephanie Corlosquet, a former researcher at the National University of Ireland's Digital Enterprise Research Institute, demonstrated a set of four interrelated new modules he helped develop for Drupal to ease the use of RDF. The modules were written to "expose the site structure in an RDF format automatically, so site administrators or users don't have to care about RDF or do anything with RDF," he said.

Mr. Corlosquet stated "Drupal has a very modular design, so we can plug [the modules] into the system very easily." He said these modules will be incorporated into the next core version of the system, Drupal 7.


  1. How the Semantic Web would work
    By: Joab Jackson
    Date: November 9, 2009
    Government Computer News (GCN)
  2. White House shift to open-source Web system draws mostly praise
    By: Joab Jackson
    Date: October 29, 2009
    Government Computer News (GCN)
  3. Resource description tool can add smarts to your Web pages
    By: Joab Jackson
    Date: October 23, 2009
    Government Computer News (GCN)
  4. Symanec Web

[/network/web/cms/drupal] permanent link

Thu, Nov 12, 2009 10:00 pm

Checking MAC Addresses on a Cisco Switch

On a Cisco switch, you can use the show mac address-table command to view the MAC addresses of devices connected to the switch.

[ More Info ]

[/hardware/network/switch/cisco] permanent link

Thu, Nov 12, 2009 11:13 am

User Account Control (UAC) Adjustments for Windows 7

In Windows 7 is everything Vista should have been, with one noteworthy exception, Erick Voskuil, CTO for BeyondTrust, warns that Windows 7 default configuration for User Account Control (UAC) unnecessarily reduces the security of the operating system and that one should change those default settings to secure a system running Windows 7.

The default setting results in a reduction of prompts -- the prompts continue, yet security is eviscerated. Though protecting administrative credentials is clearly a secure measure, Microsoft is trying to have it both ways – arguing that UAC is not a security boundary. The purpose of UAC is to protect against malware. Even if it's not a “security boundary” the message is about defending your PC against “hackers and malicious software.” If it doesn't do that, what's the point of the remaining prompts?

In my opinion the decision to configure users this way by default violates Microsoft's “Secure by Default” principle, which says that, “software should run with the least necessary privilege.” Clearly, the operating system should support a standard user or administrator with UAC fully enabled. The proof-of-concept code to exploit this shortcoming has already been published.

Windows 7 is great stuff, just don't forget to go to the control panel and turn security on.


  1. Windows 7 is everything Vista should have been, with one noteworthy exception
    By: Eric Voskuil, CTO, BeyondTrust
    Date: November 4, 2009
    SC Magazine For IT Security Professionals

[/security/patches/windows] permanent link

Thu, Nov 12, 2009 11:02 am

Microsoft Patches Released 2009-11-10

On Tuesday, November 10, 2009, Microsoft released six patches to address fifteen vulnerabilities. MS09-065 fixes three vulnerabilities in Windows kernel-mode drivers, one of which is deemed "critical" by Microsoft. It does not impact Vista or Server 2008 systems. But, on Windows 2000, XP, and Server 2003 systems, the bug can be exploited to allow remote code to be executed. The bug can be exploited by someone creating a webpage using a maliciously crated Embedded OpenType font. A victim need only view the webpage with the embedded font. Proof-of-concept code has already been released to exploit the bug through a " drive-by attack."

Another of the patches issued by Microsoft on Tuesday, MS09-067 addresses eight flaws in Microsoft Office that can lead to remote code execution should a user open an Excel file that has been crafted to exploit one of the flaws.


  1. Microsoft fixes 15 flaws with six patches
    By: Dan Kaplan
    Date: November 10, 2009
    SC Magazine for IT Security Professionals

[/security/patches/windows] permanent link

Sun, Nov 08, 2009 8:10 pm

Using a Shared Database at a Network Location with eBay's Turbo Lister 2

My wife uses eBay's Turbo Lister 2 to manage her eBay auctions. She has a custom template she uses and wanted to have her laptop and desktop systems use the same information, i.e. any change she made in the program while working on the laptop would be seen by Turbo Lister on her desktop system and vice versa. The laptop was new; she had been using Turbo Lister 2 exclusively on the desktop system.

So when I installed Turbo Lister 2 (version was shown when I clicked on Help and About Turbo Lister after installing the software) on her laptop running Windows 7, I checked to see what registry value it was using, after I ran the program once, to point to the location it uses for its data directory. There was no option for specifying the location for the program's data when I checked under Tools and Options in the program, so I had to find the location in the registry. On the Windows 7 laptop, I saw the following registry value under HKEY_CURRENT_USER\Software\eBay\Turbo Lister2:

DataDirREG_SZC:\ProgramData\eBay\Turbo Lister2

I checked the contents of that directory from a command prompt and saw there were 3 .tdb files within that directory, an App.tdb, a user000.tdb and one associated with a name matching her eBay store.

Note: you may not see the directory from the Windows Explorer, since C:\ProgramData is a hidden directory, if you don't have it configured to show hidden folders. But, if you get a command prompt and issue the command, dir "C:\ProgramData\eBay\Turbo Lister2", you should see its contents.

On her Windows XP desktop system, I found the following registry value for the location of Turbo Lister's databases:

DataDirREG_SZ C:\Documents and Settings\All Users\eBay\Turbo Lister2

I copied the contents of the directory C:\Documents and Settings\All Users\eBay\Turbo Lister2 from the desktop system to a shared network folder. Then on both systems I changed the registry value for DataDir to point to that location. E.g., you could use the following, if the system that was sharing the folder was named MyServer and the shared folder was shared as Auctions with a Turbo Lister2 directory created within it.

DataDirREG_SZ \\MyServer\Auctions\Turbo Lister2

Note: don't make the registry changes while Turbo Lister is open.

[/os/windows/software/auction] permanent link

Sun, Nov 08, 2009 5:57 pm

Movie Collector 6.4.1 Customization

I installed Movie Collector™ on my wife's new laptop today. Since we want all systems in the household to use a common movie database, I configured it to use a database stored on a shared network folder.

[ More Info ]

[/software/database/collectorz/MC-Customization] permanent link

Tue, Oct 06, 2009 4:41 pm

Determining if Wget Supports SSL

I needed to write a Bash script that will use Wget to download webpages from a secure website using HTTPS. In order to be able to use Wget for this purpose, one needs to have access to a version of Wget compiled with SSL support. You can determine if wget on a particular system was compiled with SSL support using the command wget --help | grep HTTPS.

Output on a system where wget has SSL support:

$ wget --help | grep HTTPS
HTTPS (SSL/TLS) options:

Output on a system where wget does not have SSL support:

$ wget --help | grep HTTPS

[/network/web/tools/wget] permanent link

Tue, Sep 29, 2009 3:23 pm

Joker Mail Forwarding

The domain registrar, allows you to have email addressed to someone at a domain registered with them forwarded to an email account at another domain. E.g., one could forward email addressed to to imposes the following limits for that service:
  1. 40 mail addresses per domain
  2. 10486kB as the maximum size of a single mail
  3. 200 mails per day per address provides the option of filtering spam. Hopefully, email rejected as spam doesn't count towards the 200 email messages per day limit.

The service might not be suitable for someone who receives large attachments to messages, because of the 10 MB limit on the size of a message.

[/network/email/joker] permanent link

Sun, Sep 27, 2009 3:25 pm

Memory Errors Encountered During Testing on 2009-09-26

My wife's Windows XP Professional PC would boot into Windows, but whenever she logged on and tried to do anything, the system would reboot. I ran memory tests on the system with five free programs and one commercial program.
ProgramVersionFreeErrors Detected
Windows Memory Diagnostic Beta 0.4YesYes
MemScope 1.10Yes Yes
QuickTech Pro 4.11NoNo
Memtest86+ 1.70YesNo
Memtest86 3.3YesNo
DocMemory 3.1betaYesNo

More Info

[/os/windows/utilities/diagnostic/memory] permanent link

Sat, Sep 26, 2009 5:51 pm

HR Tag Within Pre Tag

When I checked a webpage for HTML errors using the W3Creg; Markup Validation Service, I saw errors such as the following reported:

Error Line 165, Column 4: document type does not allow element "HR" here; missing one of "MAP", "IFRAME", "BUTTON" start-tag


The mentioned element is not allowed to appear in the context in which you've placed it; the other mentioned elements are the only ones that are both allowed there and can contain the element mentioned. This might mean that you need a containing element, or possibly that you've forgotten to close a previous element.

One possible cause for this message is that you have attempted to put a block-level element (such as "<p>" or "<table>") inside an inline element (such as "<a>", "<span>", or "<font>").

The problem occurred because I had placed <hr> between <pre> and </pre> tags. I had something like the following:

This is some text
This is some more text

I eliminated the error by placing a end pre tag after the first block of text and a begin pre tag before the second block of text.

This is some text
This is some more text


  1. CSS - html/css validation error
    Date: 2008-02-25
    Ultrashock Forums

[/network/web/html] permanent link

Fri, Sep 25, 2009 7:09 pm

Windows XP System Not Using Primary DNS

After a user rebooted her system, email she sent to an internal POP3 email server was being rejected. When I checked the email server's log file, I found that it was rejecting the email because it saw the email coming from the outside address of the firewall. It saw the "to" address of the email message she was trying to send as one that was not destined for an account on the email server and rejected it with a "relaying denied" message. The email server was configured to allow relaying from the IP address of her PC, but since it saw the email coming through the external firewall, it rejected it.

When I tried pinging the internal email server,, from her system, instead of its internal address,, being used, I saw the external address for the firewall was being used. I checked her /windows/system32/drivers/etc/hosts file first. I didn't see any entry for there. Nor did I see the address cached on her system when I entered the command ipconfig /displaydns | find /i "" at a command prompt. So I used a sniffer to observe the network traffic from/to her system. I saw that her system was querying the DNS server configured as the secondary name server for her system, which was an external DNS server provided by her Internet Service Provider (ISP) rather than the internal name server on her LAN.

I tried ipconfig /flushdns, but that made no difference. Her system continued to query the secondary name server and didn't seem to ever cache the address for When I tried ipconfig /registerdns, the system then queried the primary DNS server again.

The /registerdns argument to the ipconfig command "refreshes all DHCP leases and re-registers DNS names." The system had a static IP address, so the "re-registers DNS names" function of the command must have fixed the problem.

When she tried sending her email message again, though, it was rejected by the internal mail server. I had her restart her email client, Microsoft Outlook, and that resolved the problem. Apparently, Outlook also maintains its own cached information for the mail server it uses. I still didn't see the internal mail server's address cached when I issued an ipconfig /displaydns command, though.

The long term solution, though, to prevent the problem recurring would be to set up another internal DNS server to use as the secondary DNS server.


  1. XP not using Primary DNS
    Date: March 20, 2009 Technology @ your fingertips
  2. Configuring IP Addressing and Name Resolution
    Microsoft TechNet: Resources for IP Professionals
  3. When does a Windows client stop using a secondary DNS server and revert back to primary
    Date: August 11, 2009
    Server Fault
  4. Renew DNS client registration using the ipconfig command
    Updated: January 21, 2005
    Microsoft TechNet: Resources for IP Professionals

[/network/dns/windows] permanent link

Tue, Sep 22, 2009 7:17 pm

Creating a CD Image with ISO Recorder

I needed the capability to create an ISO file from a CD on a Windows Vista system. I installed the 64-bit version of ISO Recorder for Vista. Once I had it installed, I was able to create the file I needed by the following steps:
  1. Click on the Start button.
  2. Select Computer.
  3. Right-click on the CD/DVD drive and select "Create image from CD/DVD".
  4. Select the location and file name for the ISO file you wish to create.
  5. Click on the Next button.
  6. Click on the Finish button to exit ISO Recorder.

ISO Recorder also then allowed me to right-click on the ISO file and choose "Copy image to CD/DVD" to create another copy of the CD.

ISO Recorder 3.1 create CD from image

[/os/windows/software/utilities/cd-dvd/ISO_Recorder] permanent link

Tue, Sep 15, 2009 12:31 pm

Calculating the Number of Days Between Two Dates in Excel

The datedif function can be used in Microsoft Excel to calculate the number of days between 2 different dates.

The syntax for the DATEDIF function is as follows:

=DATEDIF(Date1, Date2, Interval)


Date1 is the first date,
Date2 is the second date,
Interval is the interval type to return.

If Date1 is later than Date2, DATEDIF will return a #NUM! error. If either Date1 or Date2 is not a valid date, DATEDIF will return a #VALUE error.
The Interval value should be one of the following:

Interval Meaning Description
m Months Complete calendar months between the dates.
d Days Number of days between the dates.
y Years Complete calendar years between the dates.
ym Months Excluding Years Complete calendar months between the dates as if they were of the same year.
yd Days Excluding Years Complete calendar days between the dates as if they were of the same year.
md Days Excluding Years And Months Complete calendar days between the dates as if they were of the same month and same year.

If Interval is not one of the items listed in above, DATEDIF will return a #NUM error.

Examples of datedif usage

[/os/windows/office/excel] permanent link

Sun, Sep 13, 2009 5:04 pm

File System not Supported on This Device Optimized for Removal

I was unable to backup a disk drive to an external drive attached to a system via a USB connection using the NTBackup program. The backup failed once the backup file reached 4 GB in size, which is the maximum size for the FAT32 file system, which was the file system on the Western Digital My Book USB external drive when I purchased it. So I decided to change the file system to NTFS by reformatting the drive. But I received an error message when I tried to convert the file system.

C:\>format f: /fs:ntfs
NTFS file system is not supported on this device optimized for removal.
To change the way this device is optimized, select the Policies tab in
the device's property sheet.

To change the file system, I right-clicked on the drive under My Computer, then chose Properties.

My Book 640 GB drive properties

I then clicked on the Hardware tab and selected the drive.

My Book 640 GB drive hardware

I then clicked on the Properties button and then the Policies tab. I changed the setting from "Optimize for quick removal" to "Optimize for performance". The "optimize for quick removal" setting disables write caching on the disk and in Windows, so you can disconnect the device without using the Safe Removal icon. The "optimize for performance" setting enables write caching in Windows to improve disk performance. When you choose this option, to disconnect the device from the computer, you should click the "Safely Remove Hardware" icon in the taskbar notification area."

USB device properties - optimize for performance

I then clicked on the OK button. I clicked on a second OK button to close the window.

I was then able to reformat the drive from the FAT32 file system to the NTFS file system.

C:\>format f: /fs:ntfs
The type of the file system is FAT32.
The new file system is NTFS.
Enter current volume label for drive F: My Book

Proceed with Format (Y/N)? y
Verifying 610477M
Volume label (32 characters, ENTER for none)? ACI-3
Creating file system structures.
Format complete.
 625129280 KB total disk space.
 625044456 KB are available.

[/os/windows/filesystem] permanent link

Sat, Sep 12, 2009 4:06 pm

CT6472Z40B Memory Module

Specifications for a 512 MB 184-pin DIMM DDR PC3200 memory module with part number CT6472Z40B from Crucial Technology.

[/hardware/pc/memory] permanent link

Tue, Sep 08, 2009 9:53 pm

Hello Kitty Online - Trojan.Win32.Generic!BT

A family member got an offer to become a beta tester for Hello Kitty Online today. The email message she received provided a link to download a setup program HKO_Downloader.exe. After she downloaded the file, I had her submit it to Virustotal , a site that checks files for malware with multiple antivirus programs. The Virustotal analysis of the file showed 2 of the 41 programs it used to check the file reporting a potential issue with the file. Note: someone else had uploaded a file named HKO_Island_of_Fun.exe on September 3, 2009 that Virustotal identified as being an identical file because that file had an identical hash value.

File HKO_Island_of_Fun.exe received on 2009.09.03 20:55:55 (UTC)
Current status: finished
Result: 2/41 (4.88%)

The two that identified the file as potentially being malware were as follows:

AntivirusVersionLast UpdateResult
McAfee+Artemis57302009.09.03 Suspect-29!4A5CA8AF0ECD
Sunbelt3.2.1858.22009.09.03 Trojan.Win32.Generic!BT

Information on Mcafee+Artemis is available at McAfee Artemis Technology. An evaluation of McAfee+Artemis is available at Anti-Virus Comparative Technology Preview Report McAfee Artemis.

Sunbelt's Trojan.Win32.Generic!BT Information and Removal webpage shows the following:

Threat NameTrojan.Win32.Generic!BT
Summary Trojan.Win32.Generic!BT is a downloader associated with rogue security programs (also called “scareware.”) Once downloaded, the rogues pretend to scan a victim.s computer for malware then display false warnings that the machine is infected. It tries to convince victims to purchase useless security software.
Category Trojan
Level High
Description Other names: F-Secure: Trojan-Downloader.Win32.FraudLoad.ffz Kaspersky: Trojan-Downloader.Win32.FraudLoad.ffz Microsoft: TrojanDownloader:Win32/FakeVimes
Release DateApr 7 2009
Last UpdatedAug 7 2009
File Traces- No traces available.

The HKO_Downloader.exe file downloads the actual software needed to participate in Hello Kitty Online, which is a site run by Aeria Games. I concluded that they may have licensed a downloading program that some others may use for nefarious purposes, but I didn't see sufficient reason to be concerned in this case and told her she could download the software and participate in the beta testing.

[/security/malware] permanent link

Mon, Sep 07, 2009 6:58 pm

HP Printer Processes

While checking a "Virtual Memory Minimum Too Low" warning message on a Windows XP system, I found the following HP processes running:

hpqste08.exe 9,784K
hpqste08.exe 5,128K
hpqnrs08.exe 1,324K

According to the Uniblue Process Library:

hpqste08.exe is a process installed alongside HP Imaging devices and provides additional configuration options for these devices. This program is a non-essential process, but should not be terminated unless suspected to be causing problems.

hpqste08.exe is a process installed alongside HP Imaging devices and provides additional configuration options for these devices. This program is a non-essential process, but should not be terminated unless suspected to be causing problems.

hpqnrs08.exe hpqnrs08.exe is a Network Monitor from Hewlett-Packard Development Company, L.P. belonging to HP Digital Imaging. This is a network device rediscovery service.

[/os/windows/printers] permanent link

Tue, Aug 25, 2009 9:23 pm

Obtaining an IP Address via DHCP with Pump on a Knoppix System

To obtain an IP address via the Dynamic Host Configuration Protocol (DHCP) on a Knoppix Linux system, you can use pump. As root, you can issue the commands below:

ifconfig eth0 up
pump -i eth0

The options available for pump are shown below:

root@Knoppix:~# pump --help
Usage: pump [OPTION...]
  -c, --config-file=STRING     Configuration file to use instead of
  -h, --hostname=hostname      Hostname to request
  -i, --interface=iface        Interface to configure (normally eth0)
  -k, --kill                   Kill daemon (and disable all interfaces)
  -l, --lease=hours            Lease time to request (in hours)
  -L, --leasesecs=seconds      Lease time to request (in seconds)
  --lookup-hostname            Force lookup of hostname
  -r, --release                Release interface
  -R, --renew                  Force immediate lease renewal
  -v, --verbose                Log verbose debug info
  -s, --status                 Display interface status
  -d, --no-dns                 Don't update resolv.conf
  --no-gateway                 Don't set a gateway for this interface
  --no-setup                   Don't set up anything
  --no-resolvconf              Don't set up resolvconf
  --no-bootp                   Ignore non-DHCP BOOTP responses
  --script=STRING              Script to use
  --win-client-ident           Set the client identifier to match Window's

Help options:
  -?, --help                   Show this help message

[/os/unix/linux/knoppix] permanent link

Sun, Aug 23, 2009 4:42 pm

Checking User Acccounts with the dscl Command Utility

On an Apple OS X system, a user's account is distinguished from other accounts by a User Identifier (UID), which is a unique number that identifies a particular user on a system having a particular login ID. A UID identifies the owner of a file and controls users' access to files.

OS X assigns some UIDs for special purposes

NumberUse Comment
UID 0Reserved for the root user Should not be deleted or modified except to change the password of the root user.
UIDs below 100Reserved for system use Should not be deleted or modified.
UIDs 500 - 2,147,483,648Users Should be unique on the system. If modified, the ownership of files and directories for the user must be changed.

A user's name and UID can be viewed with the dscl command utility.

To list users, within the terminal type:

dscl . list /users

To read a user account, within the terminal type:

dscl . read /users/

[/os/os-x] permanent link

Sun, Aug 23, 2009 3:20 pm

Services That Should Normally be Disabled

To increase security on an Apple OS X system, the following services should normally be disabled, unless you have a definite need for them:
  1. Windows File Sharing (SMB) - allows Windows users to access shared folders on your computer
  2. Personal Web Sharing / Hypertext Transfer Protocol (HTTP) - lets users of other computers view web pages in the sites folder on your computer
  3. Remote Login (SSH) - lets users of other computers access your computer using Secure Shell (SSH) and allows connection with Simple File Transfer Protocol (SFTP)
  4. File Transfer Protocol (FTP Access) - lets users of other computers exchange files with your computer using FTP applications and provides users access to all files on the Mac for which they have privileges. FTP transmits userids and passwords as cleartext, so can could allow someone else on the network on which your system resides to learn a userid and password for your system.
  5. Remote Apple Events - allows applications on other Mac OS X computers to send Apple Events to your computer
  6. Printer Sharing / Line Printer Request (LPR) - lets other people use printers connected to your computer

[/os/os-x] permanent link

Sun, Aug 23, 2009 3:00 pm

Changing Firewall Settings

The firewall settings can be chaned on a MAC OS X system by taking the following steps:
  1. Select the Apple menu
  2. Select the System Preferences option
  3. Select the Security option
  4. Select the Firewall tab
  5. Review and select options

Firewall tab

Turning on a service automatically reconfigures the built-in firewall to open the appropriate port(s) necessary for that service.

[/os/os-x] permanent link

Sun, Aug 23, 2009 2:49 pm

Sudo on OS X

The sudo command is used in the Terminal to execute a command with the privileges of another user, such as root. On Mac OS X, those with administrative privileges are allowed to use the sudo command.

On Unix and Linux systems, the su command is used to assume the identity of another user, typically root. Since the root account is normally disabled on Mac OS X systems, su will not work. As an alternative to enabling the root account, you can use sudo to run individual commands as root, one at a time. If you need a root shell, you can get one by running sudo -s. The sudo command requires an administrator password.

[/os/os-x] permanent link

Tue, Aug 18, 2009 9:59 pm

Gpg4win 2.0.0

If you want a graphical user interface (GUI) for the GNU Privacy Guard (GPG) program for Windows, you can use Gpg4win

[ More Info ]

[/security/encryption/gnupg] permanent link

Mon, Aug 17, 2009 10:04 am

Importing Data from an Access Database in Microsoft Excel

You can import data from a Microsoft Access database in Microsoft Excel 2007, even if you don't have Microsoft Access on the system. To do so, take the steps below:
  1. Open Excel.
  2. Create a new blank workbook or open an existing one that you wish to use.
  3. Click on Data.
  4. Select Import External Data.
  5. Select Import Data.
  6. Browse to the location of the Access .mdb file
  7. You will then be prompted to select the table in the Access database that you wish to import into an Excel spreadsheet. Select the table you wish to use by clicking on it and then clicking on OK.
  8. An Import Data window will open asking you where you wish to place the data in the Excel spreadsheet. The default location will be column A row 1. If that is where you want the data to go, click on OK, otherwise specify the location you wish to use.

    Import Data


  1. Import Microsoft Access Data Into Excel
    Mysticgeek's Realm :: Your Guide Through the Cyber Galaxy!

[/os/windows/office/excel] permanent link

Sun, Aug 16, 2009 1:00 pm

Wii Network Traffic When Powered On

I've been troubleshooting a problem with a Wii not having network connectivity this weekend. The Wii was plugged into a switch that showed the link was up. The Wii wasn't working when I had it configured for a fixed IP address, gateway address, and DNS server addresses. I tried DHCP, instead, but that didn't work, either. With a sniffer, I could observe the Wii sending out DHCP requests, but I never saw any response coming back from the DHCP server. Yet, I could see other network traffic reaching the Wii. I plugged the cable going into the Datel USB network adapter I was using with the Wii into my laptop and it would get an IP address from the DHCP server, so all of the network cabling seemed to be good. I even installed a driver for the Datel USB to Ethernet network adapter into my laptop and loaded a driver for that adapter on the Windows Vista laptop. That worked as well.

I was able to resolve the problem by putting a small 5-port hub between the switch and the Wii. Everything worked fine then, but I don't know why that worked. I thought there might a problem with autonegotiation of the duplex and speed settings, but on the switch side I tried all possible settings for the duplex setting, i.e. auto, full, and half, with all possible combinations of the speed setting, i.e. auto, 100 Mbs, 10 Mbs, but none of the nine combinations worked.

When I did get the Wii's Internet connectivity working, I captured the traffic from/to it, so I would have a better idea of how it determines whether it has Internet connectivity. I've recorded my notes here.

[/gaming/wii] permanent link

Wed, Aug 12, 2009 4:26 pm

Clearing Space on /var

On a Solaris 7 system, I found there wasn't sufficient space in /var to allow me to install software.
# gunzip libidn-1.14-sol7-sparc-local.gz
# pkgadd -d ./libidn-1.14-sol7-sparc-local

The following packages are available:
  1  SMClibidn     libidn
                   (sparc) 1.14

Select package(s) you wish to process (or 'all' to process
all packages). (default: all) [?,??,q]:

Processing package instance <SMClibidn> from </tmp/libidn-1.14-sol7-sparc-local>

(sparc) 1.14
Simon Josefsson et al
Using </usr/local> as the package base directory.
## Processing package information.
## Processing system information.
   20 package pathnames are already properly installed.
## Verifying disk space requirements.
    The /var filesystem has 0 free blocks. The current installation requires 152
 blocks, which includes a required 150 block buffer for open deleted files. 152 
more blocks are needed.

Do you want to continue with the installation of <SMClibidn> [y,n,?] n

Installation of <SMClibidn> was terminated due to user request.
No changes were made to the system.

When I checked the contents of /var/log, I found the following:

# ls -l
total 139882
-rw-------   1 root     sys      26576205 Aug 12 15:11 authlog
-rw-------   1 root     other    14635403 Aug 12 15:41 maillog
-rw-r--r--   1 root     root     6605320 Aug 12 15:44 named_querylog
-rw-r--r--   1 root     root     5538180 Jul 11 06:23 named_querylog.0
-rw-r--r--   1 root     root        3651 Jun 15 16:58 named_querylog.1
-rw-r--r--   1 root     other     794523 Jun 15 15:39 named_querylog.2.gz
-rw-------   1 root     other    4106078 Jun 24 18:04 poplog
-rw-------   1 root     other    13249096 Aug 12 14:50 sshd.log
-rwxrwxrwx   1 root     other        240 Jul 27  2000 sysidconfig.log

I moved authlog, maillog, and sshd.log to a a directory under /home, recreated the files in /var/log with touch, set the permissions to 600, and changed the group to what it had been previously on authlog.

# touch authlog.log
# touch maillog.log
# touch sshd.log
# chmod 600 authlog
# chmod 600 maillog
# chmod 600 sshdlog
# chgrp sys authlog
# ls -l
total 33402
-rw-------   1 root     sys            0 Aug 12 15:52 authlog
-rw-------   1 root     other          0 Aug 12 15:49 maillog
-rw-r--r--   1 root     root     6610244 Aug 12 15:54 named_querylog
-rw-r--r--   1 root     root     5538180 Jul 11 06:23 named_querylog.0
-rw-r--r--   1 root     root        3651 Jun 15 16:58 named_querylog.1
-rw-r--r--   1 root     other     794523 Jun 15 15:39 named_querylog.2.gz
-rw-------   1 root     other    4106078 Jun 24 18:04 poplog
-rw-------   1 root     other          0 Aug 12 15:55 sshd.log
-rwxrwxrwx   1 root     other        240 Jul 27  2000 sysidconfig.log

I then restarted the syslog daemon so it would use the new files.

# /etc/init.d/syslog stop
# /etc/init.d/syslog start
syslog service starting.

When I then checked the free space for /var, 94% of the capacity was used, whereas it had been 100% previously.

# df -k
Filesystem            kbytes    used   avail capacity  Mounted on
/proc                      0       0       0     0%    /proc
/dev/dsk/c0t0d0s0    2052750 1646775  344393    83%    /
fd                         0       0       0     0%    /dev/fd
/dev/dsk/c0t0d0s3    1015542  893738   60872    94%    /var
/dev/dsk/c0t0d0s4    5058110 4968663   38866   100%    /home
swap                  269872    6728  263144     3%    /tmp


  1. Moving Sendmail's Maillog File
    Date: August 10, 2005
    MoonPoint Support

[/os/unix/solaris] permanent link

Mon, Aug 10, 2009 12:27 pm

Proxychains and Knoppix

If you are using a Knoppix Linux system behind a SOCKS proxy server, you can use the proxychains package to enable applications that don't natively understand how to use a SOCKS proxy to work through the SOCKS proxy. The proxychains program forces any tcp connection made by any given TCP client to go through the specified proxy server (or proxy chain). It is a kind of proxifier. It acts like sockscap / premeo / eborder driver (intercepts TCP calls). Proxychains supports SOCKS4, SOCKS5 and HTTP CONNECT proxy servers. Different proxy types can be mixed in the same chain.

Since Mozilla Firefox understands how to use SOCKS proxies, you can configure it to go through the SOCKS proxy. You can configure it to use a SOCKS proxy by clicking on Edit, then Preferences, and then the Network tab. Click on Settings and then select Manual proxy configuration. For a SOCKS proxy, put the address of the SOCKS proxy server in the SOCKS Host field and the port that is being used on that server in the Port field.

If I establish a SOCKS proxy server using the ssh command, e.g. ssh -D 8055 jdoe@, then I'm tunneling connections to the SOCKS proxy through the encrypted SSH connection and I will use in the SOCKS host field and 8055 in the Port field, rather than the default SOCKS proxy port of 1080.

After downloading the proxychains package with Mozilla Firefox, aka iceweasel, I used dpkg to install it.

root@Knoppix:/home/knoppix# dpkg --install proxychains_2.1-5_i386.deb 
Selecting previously deselected package proxychains.
(Reading database ... 0 files and directories currently installed.)
Unpacking proxychains (from proxychains_2.1-5_i386.deb) ...
dpkg: dependency problems prevent configuration of proxychains:
 proxychains depends on libc6 (>= 2.3.2.ds1-21); however:
  Package libc6 is not installed.
dpkg: error processing proxychains (--install):
 dependency problems - leaving unconfigured
Errors were encountered while processing:

Proxychains looks for its configuration file in the following order:

  1. ./proxychains.conf
  2. $(HOME)/.proxychains/proxychains.conf
  3. /etc/proxychains.conf

I copied the sample file /etc/proxychains.conf.dpkg-new to /etc/proxychains.conf.

root@Knoppix:/home/knoppix# cp /etc/proxychains.conf.dpkg-new /etc/proxychains.conf

The following default information appears in that file:

# ProxyList format
#       type  host  port [user pass]
#       (values separated by 'tab' or 'blank')
#        Examples:
#               socks5   1080    lamer  secret
#               http    8080    justu   hidden
#               socks4    1080
#               http   8080    
#       proxy types: http, socks4, socks5
#        ( auth types supported: "basic"-http  "user/pass"-socks )
http 3128
http 3128
http 3128
#socks5 1080
#socks4 1080
#http 8080

I commented out the http lines with the address by placing a "#" at the beginning of the line. I then removed the "#" from the socks5 line and changed the address from to, since I was establishing a socks proxy using the ssh command. I changed the port from the default SOCKS port of 1080 to the one I used when I established the SOCKS proxy with ssh -D 8055 jdoe@, i.e. port 8055. I then had the following lines in proxychains.conf.

# http 3128
# http 3128
# http 3128
socks5 8055
#socks4 1080
#http 8080

I also commented out "random_chain" and "chain_len" and uncommented "strict_chain".

I was then able to use proxychains with gpg to import a public key for a package repository into the public keyring for the root account.

root@Knoppix:/home/knoppix# proxychains gpg --keyserver --rec
v-keys 9AA38DCD55BE302B
gpg: requesting key 55BE302B from hkp server
ProxyChains-2.1 (
random chain (1):....
gpg: /root/.gnupg/trustdb.gpg: trustdb created
gpg: key 55BE302B: public key "Debian Archive Automatic Signing Key (5.0/lenny) 
<>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)

I was also able to use proxychains for apt-get update by using proxychains apt-get update.


  1. ProxyChains - README (HowTo) TCP and DNS through proxy server, HTTP and SOCKS

[/os/unix/linux/knoppix] permanent link

Sun, Aug 09, 2009 6:25 pm

Using dpkg and apt-get with BitDefender Rescue CD

The dpkg utility can be used to add additional software once you have booted a system with a BitDefender Rescue CD, but first you need to create a few directories and files.
root@Knoppix:~# mkdir /var/lib/dpkg
root@Knoppix:~# mkdir /var/lib/dpkg/info
root@Knoppix:~# mkdir /var/lib/dpkg/updates
root@Knoppix:~# touch /var/lib/dpkg/status
root@Knoppix:~# touch /var/lib/dpkg/available

Alternatively, you can use the apt-get utility to download and install the packages you wish to use - see Using apt-get with BitDefender Rescue CD

[ More Info ]

[/security/antivirus/bitdefender/rescuecd] permanent link

Sun, Aug 09, 2009 10:23 am

Debian Version

Knoppix is vased on the Debian distribution of Linux. You can find the particular version of Debian on which it is based by checking /etc/debian_version.
root@Knoppix:~# cat /etc/debian_version

[/os/unix/linux/knoppix] permanent link

Thu, Aug 06, 2009 9:39 pm

Dell Latitude D505 Display Power Problem

I had to replace the motherboard on a Dell Latitude D505 laptop. The display would blank unless pressure was put on the center control cover near the power button.

[ More Info ]

[/pc/hardware/dell] permanent link

Sun, Aug 02, 2009 10:39 pm

BitDefender Rescue CD 2.0.0

BitDefender provides free rescue CD software that you can use to scan a Windows system. The rescue CD is based on Knoppix Linux. As of August 2, 2009, BitDefender Rescue CD 2.0.0 uses Knoppix 2.6.19. You can download an ISO file for the rescue CD from

To use the rescue CD, boot the system from the CD. You may need to configure the system's Basic Input Output System (BIOS) to attempt to boot from a CD before attempting to boot from the hard drive or hit a key that allows you to select the drive from which you want to boot. When you system starts booting from the CD, you will see an initial startup nenu.

Start knoppix in English (US)
Start knoppix in French
Start knoppix in console mode
Memory test
Boot from first hard disk

BitDefender Rescue CD

based on Knoppix

You must hit Enter when the menu appears or move the cursor up or down or the system will be booted from the hard drive rather than the boot process continuing from the CD.

Starting boot sequence
Click on the image to enlarge it

During the boot process, the virus definitions will be updated, if the system has an Internet connection. If the software has a problem updating the definitions it will hang for awhile at the stage where it tries to update the virus definitions and then you will see the message "Trying to update your network ?" When the BitDefender Rescue CD completes booting, you will have a Graphical User Interface (GUI). A BitDefender AntiVirus Scanner for Unices program will start automatically and start scanning the hard drive in the system.

By default, all partitions detected on the hard drive will be scanned. When the scan completes, you'll have to choose what actions to take on the infected file(s). You can choose one action for all files or select an action for each item.

If you right-click somewhere on the desktop, you will see a list of applications on the CD. You can get a terminal window by selecting Terminal or Terminal (as root) by selecting from the menu that appears when you right-click on the desktop. Don't pick Exit from this menu, until you are ready to shut down the system. I.e., wait until the scan has completed and you've chosen what to do with any infected files detected

[/security/antivirus/bitdefender/rescuecd] permanent link

Sun, Jul 26, 2009 1:13 pm

Cisco 2950 Switch Configuration

I set up a Cisco 2950 network switch this weekend using the Basic Management Setup process, which consists of answering a series of short questions posed by the switch in order to create a basic configuration for the switch. The steps are listed here.

[/hardware/network/switch/cisco] permanent link

Sun, Jul 19, 2009 2:43 pm

Enabling SSH on a Juniper NetScreen Firewall

To enable SSH on a Juniper NetScreen firewall through its web interface, take the following steps:
  1. Click on Configuration.
  2. Click on Admin.
  3. Click on Management.
  4. Check the box next to Enable SSH (V2).
  5. If you wish to change the port from the default value of 22, put in the value you wish to use in the Port field.
  6. If you also wish to enable Secure Copy (SCP), check the box next to Enable SCP.
  7. Click on the Apply button.

The above steps will allow access from the "trust" side of the firewall, e.g. the Local Area Network (LAN) behind the firewall. If you want to permit access from the "untrust" side, i.e. from the outside interface of the firewall, you will have to take additional steps.

To permit access from the "unstrust" side using the web interface to the firewall, take the following steps.

  1. Click on Network.
  2. Click on Interfaces.
  3. Click on the Edit link for the "untrust" zone.
  4. Under Service Options, check SSH.
  5. Click on OK.

[/security/firewalls/netscreen] permanent link

Wed, Jul 15, 2009 11:34 pm

Settings for Sony DSC-P92 for Auction Photos

A family member is putting a lot of items up for auction and needed to take pictures of the items with our Sony model number DSC-P92 digital camera. I had to play around with various settings on the camera the last time she put up items for auction to find the best settings. Unfortunately, I couldn't find the notes I made then, so had to go through the same process again today with the camera, so I decided today I would make a note on my blog of the settings she felt produced the best results of those I tried today, so I've posted them here.

[/hardware/camera] permanent link

Mon, Jun 29, 2009 2:16 pm

Sendmail 8.14.3 Upgrade

I upgraded sendmail n a Solaris 7 server from version 8.13.6 to version 8.14.3.

[ More Info ]

[/os/unix/solaris/network] permanent link

Sat, Jun 27, 2009 8:05 pm

Copying X-Fonter Settings

I needed to copy X-Fonter settings from my wife's desktop system to a new laptop. She uses X-Fonter as a font manager. On her Windows XP desktop system, there was a folder, C:\Program Files\X-Fonter\Collection with a lot of .xfl files. I copied the contents of that folder to \Program Files (x86)\X-Fonter\Collections on the new laptop.

An X-Fonter XFL file is just a text file that lists the location of fonts that are in a font collection. For instance, my wife has a "Celtic" collection. The information for that collection is stored in Celtic.xfl, which on her old system, contained the following lines:

X-Fonter Collection
D:\Computer & Desktop\Fonts\Collection\A\ameruncn.ttf|AmericanUncD
D:\Computer & Desktop\Fonts\Collection\A\AONCC___.TTF|Aon Cari Celtic
D:\Computer & Desktop\Fonts\Collection\B\boyduncial.ttf|BoydUncial
D:\Computer & Desktop\Fonts\Collection\B\BUNCHLO.TTF|Bunchló\Computer & Desktop\Fonts\Collection\C\Celtasmigoria.ttf|Celtasmigoria
D:\Computer & Desktop\Fonts\Collection\C\celticmd.ttf|Celticmd Decorative w Drop Caps
D:\Computer & Desktop\Fonts\Collection\C\CELTICHD.TTF|CelticHand
D:\Computer & Desktop\Fonts\Collection\C\CelticEels.ttf|CelticEels
D:\Computer & Desktop\Fonts\Collection\C\CelticaBlack.ttf|Celtica Black
D:\Computer & Desktop\Fonts\Collection\C\CELTIC-1.TTF|Celtic101
D:\Computer & Desktop\Fonts\Collection\C\celti_er.ttf|Celtic-Extended Normal
D:\Computer & Desktop\Fonts\Collection\C\celti_eb.ttf|Celtic-Extended Bold
D:\Computer & Desktop\Fonts\Collection\C\celti_cr.ttf|Celtic-Condensed Normal
D:\Computer & Desktop\Fonts\Collection\C\celti_cb.ttf|Celtic-Condensed Bold
D:\Computer & Desktop\Fonts\Collection\C\CELTP___.TTF|Celtic Patterns
D:\Computer & Desktop\Fonts\Collection\C\celti__r.ttf|Celtic Normal
D:\Computer & Desktop\Fonts\Collection\C\Celtic Knot.TTF|Celtic Knot
D:\Computer & Desktop\Fonts\Collection\C\CELTG___.TTF|Celtic Garamond the 2nd
D:\Computer & Desktop\Fonts\Collection\C\CELTF___.TTF|Celtic Frames
D:\Computer & Desktop\Fonts\Collection\C\celti__b.ttf|Celtic Bold
D:\Computer & Desktop\Fonts\Collection\C\CelticB.ttf|Celtic Bold
D:\Computer & Desktop\Fonts\Collection\C\CRY.TTF|Cry Uncial
D:\Computer & Desktop\Fonts\Collection\D\dahaut__.ttf|Dahaut
D:\Computer & Desktop\Fonts\Collection\D\DS_Celtic_Border-1.ttf|DS_Celtic Border 1
D:\Computer & Desktop\Fonts\Collection\D\DS_Celtic-2.ttf|DS_Celtic 2
D:\Computer & Desktop\Fonts\Collection\D\DS_Celtic-1.ttf|DS_Celtic 1
D:\Computer & Desktop\Fonts\Collection\F\FAERIE__.TTF|Faerie
D:\Computer & Desktop\Fonts\Collection\F\FLORIMEL.TTF|Florimel.
D:\Computer & Desktop\Fonts\Collection\F\FULLMN1.TTF|Full Moon 1
D:\Computer & Desktop\Fonts\Collection\G\GAEIL1.TTF|Gaeilge 1 Normal
D:\Computer & Desktop\Fonts\Collection\G\Gaelic.ttf|Gaelic
D:\Computer & Desktop\Fonts\Collection\K\kelt__cr.ttf|Kelt-Condensed Normal
D:\Computer & Desktop\Fonts\Collection\K\kelt__ci.ttf|Kelt-Condensed Italic
D:\Computer & Desktop\Fonts\Collection\K\kelt___r.ttf|Kelt Normal
D:\Computer & Desktop\Fonts\Collection\K\kelt___i.ttf|Kelt Italic
D:\Computer & Desktop\Fonts\Collection\P\Pee's Celtic Plain.ttf|Pee's Celtic Plain
D:\Computer & Desktop\Fonts\Collection\P\Pee's Celtic outline.ttf|Pee's Celtic outline
D:\Computer & Desktop\Fonts\Collection\P\Pee's Celtic Italic.ttf|Pee's Celtic Italic
D:\Computer & Desktop\Fonts\Collection\N\NARROW.TTF|PR Celtic Narrow
D:\Computer & Desktop\Fonts\Collection\S\SPIRI___.TTF|Spiral Initials
D:\Computer & Desktop\Fonts\Collection\S\st______.ttf|Stonecross
D:\Computer & Desktop\Fonts\Collection\S\stonehen.ttf|Stonehenge Regular
D:\Computer & Desktop\Fonts\Collection\T\Tattoo No1.ttf|Tattoo No1
D:\Computer & Desktop\Fonts\Collection\T\Tattoo No2.ttf|Tattoo No2
D:\Computer & Desktop\Fonts\Collection\U\uncl1475.ttf|Uncial 1475

She had copied all of the fonts to her new laptop, but now they were in a different location. Now they were in C:\Users\Username\Documents\Computer & Desktop\Fonts\Collection\l not D:\\Computer & Desktop\Fonts\Collection\l, with l representing the letter at the beginning of the font name. That was just the convention she used for organizing her fonts.

So I needed to update the location for all of her fonts in the XFL files on the laptop. I wasn't able to edit the files from her account util I changed the security permissions on the C:\Program Files (x86)\X-Fonter\Collections directory. To change the security permisions on the directory in Microsoft Vista, take the following steps.

  1. Right-click on the folder name and chose Properties.
  2. Click on the Security tab.
  3. Click on the Edit button.
  4. When notified that Windows needs your permission to continue, click on Continue.
  5. Click on the Add button.
  6. In the "Enter the object names to select" field, type the name for the account to which you want to grant permission to edit the collections XFL files, e.g. Mary, if that happened to be the login name to which you wanted to grant that capability.
  7. Click on the Check Names button to verify the entry.
  8. Click on OK.
  9. In the permissions list, click on Full Control to give that account the capability to make any needed changes to the folder and its contents, i.e. the collections XFL files.
  10. Click on OK.
  11. Click on OK again to close the Collections Properties window.

You can then edit the XFL files from the account to make any needed changes, rather than being forced to only make changes from the administrator account.

I edited the .xfl files with Windows Notepad using its "replace" function to replace the old location with the current location for her fonts. Then when I opened X-Fonter, clicked on the Collections tab, and selected a collection by clicking on it, I could see the font listed under Font Example and the font was shown in the right pane of the X-Fonter window rather than seeing "Font not Found" under Font Exmple and just a default font in the right pane of the X-Fonter window. If X-Fonter is displaying "File not Found" in the Font Example field, you can right click on the "File not Found" message and choose Properties to see where X-Fonter is expecting to find the font.

Note: If you have X-Fonter open when you edit an XFL file, you will need to close X-Fonter and reopen it for it to see any changes you have made to the XFL file.

[/os/windows/software/fonts] permanent link

Sat, Jun 27, 2009 6:35 pm

Transferring Winamp Settings Between Systems

I needed to transfer Winamp settings from my wife's desktop system to a new laptop system. I had added Live365 Internet Radio to her list of online services in Winamp. To set up Winamp on the new system to have Live365 in the list of online services I used the instructions at Adding Live365 to WinAmp's Online Services List.

She also wanted her bookmarks copied. On her old Windows XP system, her bookmarkes were stored in C:\Program Files\Winamp\ I couldn't find a file with that name on her new laptop running Windows Vista after Winamp was installed on it. So I asked her to create a bookmark in Winamp while she was logged into her account. I then searched the system again and found a file was created in C:\Users\Username\AppData\Roaming\Winamp, where Username was her account name on the laptop. I deleted that file and copied the one from the old system to that location. Note: at first I left the just recently created file there and pasted in the one from the other system, but that just created a shortcut to the one on the old system, so I deleted the existing one and then copied in the other one. When I opened Winamp on the new laptop, all of her bookmarks were accessible.

[/os/windows/software/audio/winamp] permanent link

Sat, Jun 27, 2009 1:26 pm

Moving Outlook Data from One System to Another

I needed to copy Outlook settings on my wife's Windows XP desktop system to a new HP laptop running Windows Vista. She wanted to have her email, contacts, and stationery available on the new system. I've placed my notes on what I needed to do in Moving Outlook Data from One System to Another.

[/os/windows/office/outlook] permanent link

Sat, Jun 27, 2009 12:04 pm

Reformatting a Paragraph in Vi

I often want to reformat a paragraph in Vi or Vim after I've pasted information into a document when the text is wrapping around rather than having line breaks at column 80. On a Linux system, I can place the cursor at the beginning of the paragraph and use !}fmt to reformat the paragraph. But that doesn't work when I'm using Vim on Windows. But I can use gq at the beginning of the paragraph on a Windows or Linux system to reformat a paragraph. When I then use the downward arrow key to move down in the document, the paragraph reformats.


  1. reformatting
    vim tips and tricks

[/software/editors/vi] permanent link

Sat, Jun 27, 2009 11:38 am

Michael Jackson dead? NO!!!

Michael Jackson died on June 25. Spammers are already trying to capitalize on his death by referencing it in their spam messages. Mcafee's TrustedSource site reports the following at Michael Jackson News Affects Web Traffic

The announcement of Michael Jackson.s death has caused immediate effects on the Web 2.0 world. The impact ranged from the interruption on Facebook of coverage of Farrah Fawcett.s death to a surge experienced by Twitter. The Web 2.0 world is definitely abuzz with traffic regarding his passing.

Within hours the percentage of “long-tail” URL traffic associated with Michael Jackson was growing. It peaked around 1 p.m. Eastern time today and now seems to be dropping. These URLs contained mostly generic information about Jackson-blogs, posts, tributes, photos, and collections of his entertainment past. And, yes, some even contained links to malware or rogue anti-virus software.

How do people find these URLs? seen spam, tweets, blog postings, group postings, and even mobile phone alerts. In addition, as predicted by Avert Labs, seen search-engine optimization (SEO) in action. There were several attempts to capitalize on redirecting users to known malware-serving sites associated with other SEO campaigns. We found it interesting during our research to see how fast some of the search engines seemed to respond to this. One popular keyword search done around 9 p.m. yesterday showed seven of the top 10 links going to some of these well-known malicious servers. That same search done an hour later showed only one of the top 10 involved.

As the entertainment industry continues to pay tribute and homage to Jackson, we expect that spam and SEO efforts will grow over the weekend. Eventually a new piece of news will replace this event, and there will be a new story-with much the same results.

My wife got email this morning with a subject of "Michael Jackson dead? NO!!!". Withing the message was the following text:

Michael Jackson dead? NO!!!

Open attached file and read!!!

There was an attachment with the message, Michael Jackson Live!.html . I saved the attachment to the hard drive and opened it with a text editor. There was only one line in it, which is shown below:

<meta http-equiv='Refresh' content='0; url=' />

If you opened the file in a web browser, that line would cause your browser to "refresh" the webpage you opened, but using the URL .

The spam message my wife received was listed at Michael Jackson dead? NO!!! on Spam me! Send me your spam messages!, a site which states "In a normal situation you should definitelly not want such thing in your e-mail inbox, however, this website is meant to do exactly the opposite: get as many spam messages as possible, clean them of any harmful stuff (adult images, links to dubious websites and others) and present them to you to research or whatever you want them for."

I didn't visit the site, but out of curiosity, checked its reputation at various web reputation sites.


I issued a query for at TrustedSource. Unfortunately, that site was experiencing difficulties when I checked and simply returned "Service currently not available (3), please try again later!"

McAfee SiteAdvisor®

I issued a query for at the McAfee SiteAdvisor® site. It returned "Our analysis found that this site may be promoted through spammy e-mail." It also reported "This site has been queued for testing. Please come back soon for automated results."

Norton Safe Web

I issued a query for at Symantec's Norton Safe Web site. It reported "This site has not been tested yet."

Barracuda Central

I also checked the reputation of the site using Barracuda Central's IP / Domain Lookups tools. Barracuda Networks sells antspam appliances. I clicked on the Domain Reputation tab and put in . Barracuda Central reported "This domain name is listed on Barracuda's Intent Block List."

Trend Micro Web Reputation Query

I issued a query on The Trend Micro Web Reputation Query site reported "This URL is not currently listed as malicious."

BorderWare ReputationAuthority

I issued a query on The site reported the domain had a "good" reputation.

[/network/email/spam] permanent link

Thu, Jun 25, 2009 6:18 pm

Determinining the Version of a Package

To determine the version number for an installed package on Solaris, the pkginfo command can be used. If I wanted to check the version number for the Apache Portable Runtime Libraries utilities package, apr-util, I could issue the pkginfo command with no options and grep for apr to determine the package name.
# pkginfo | grep apr
application SMCapr         apr
application SMCapru        aprutil

I can then check the version number using the command pkginfo -l SMCapru:

# pkginfo -l SMCapru
   PKGINST:  SMCapru
      NAME:  aprutil
  CATEGORY:  application
      ARCH:  sparc
   VERSION:  1.2.2
   BASEDIR:  /usr/local
    VENDOR:  Apache Software Foundation
    PSTAMP:  Steve Christensen
  INSTDATE:  Jun 25 2009 17:11
    STATUS:  completely installed
     FILES:     49 installed pathnames
                12 shared pathnames
                 8 directories
                 3 executables
              5750 blocks used (approx)

The version number listed is 1.2.2

[/os/unix/solaris/commands] permanent link

Tue, Jun 23, 2009 6:04 pm

Upgrading Apache to 2.2.6 on Solaris 7

I encountered some problems upgrading Apahce to version 2.2.6 on a Solaris system.

[ More Info ]

[/os/unix/solaris] permanent link

Tue, Jun 02, 2009 10:43 pm

Active Log Monitor

If you want to view access to your website in realtime, i.e. see what pages are being accessed as they are being accessed, you can use the Active Log Monitor PHP script.

[ More Info ]

[/network/web/server/apache] permanent link

Tue, Jun 02, 2009 5:11 pm

Apache Access Log Format

If you use the common log format for websites that reside on an Apache webserver, you may not see the referer and agent, e.g. information on visitors' web browsers, logged. You can switch to the combined log format to have the additional information logged.

[ More Info ]

[/network/web/server/apache] permanent link

Tue, May 19, 2009 6:01 pm

Email NetScreen Traffic Log

A Juniper Networks NetScreen firewall can be configured to send its traffic logs by email with a few simple steps.

[ More Info ]

[/security/firewalls/netscreen] permanent link

Mon, May 18, 2009 9:42 pm

Ghost 7.5 Client Unable to Obtain IP Address via DHCP

On Monday, a user called me to report that she was seeing "Unable to obtain IP address via DHCP. Network initialization failed: the DOS-mode client cannot proceed." messages on one of her company's PCs. Rebooting the system did not help. When I booted the system this evening, I saw the following appear on the system's screen during the boot process:
MS-DOS LAN Manager v2.1 Netbind
IBM Netbind Version 2.1
Microsoft (R) Mouse Driver Version 8.20
Copyright (C) Microsoft Corp. 1983-1992.
Copyright (C) IBM Corp. 1992-1993.
Mouse driver installed
Network initialization failed: the DOS-mode client cannot proceed
Unable to obtain IP address via DHCP
Network initialization failed: the DOS-mode client cannot proceed
Unable to obtain IP address via DHCP

The last two lines continued to repeat. I hit Ctrl-C to break out of the loop, which yielded a C:\GHOST> prompt. I realized then that the Ghost backup process that normally runs on the weekend encountered a problem. A Ghost 7.5 server normally starts a backup of the system on the weekend by contacting the Ghost client software on the system and instructing it to reboot into a Ghost virtual partition. When the backup process completes, the system will reboot into Windows. But, in this case, something went wrong.

Apparently, when the system rebooted into the Ghost virtual partition, it couldn't obtain an IP address from the Ghost server via DHCP and then just continually looped as it tried to obtain an IP address via DHCP. When I later checked the DHCP server, I found that it had exhausted its pool of available IP addresses for handing out via DHCP.

At the prompt, I typed ngctdos -hide and hit Enter to "hide" the Ghost virtual boot partition and restart the system normally.


  1. System Stuck in Ghost Virtual Boot Partition
    MoonPoint Support

[/os/windows/utilities/backup/ghost] permanent link

Tue, May 12, 2009 11:55 am

Avira AntiVir Rescue System

Avira provides a free rescue CD that can be used to scan a system for viruses and other malware. A Microsoft Windows system can be booted from the CD and scanned, which allows you to find and remove malware even when the system is so badly infected that it is unbootable or otherwise effectively unusable.

[ More Info ]

[/security/antivirus/avira] permanent link

Mon, May 11, 2009 9:15 pm

DNS Query Logging in Bind

BIND does not log DNS queries by default. If you want to log DNS queries, you will need to add code similar to the following to named.conf:
logging {
    channel query_logging {
         file "/var/log/named_querylog"
         versions 3 size 100M;
         print-time yes;                 // timestamp log entries

      category queries {

To have the change take effect, you need to kill the named process and restart it , e.g. kill `cat path_to/` followed by /usr/sbin/in.named to restart the service. You should then be able to view the log of DNS queries.

# cat /var/log/named_querylog
11-May-2009 17:00:34.885 XX /
11-May-2009 17:00:36.097 XX /
11-May-2009 17:00:39.883 XX /

[ More Info ]

[/network/dns] permanent link

Fri, May 01, 2009 11:40 am

Maximum Number of Email Recipients Allowed by GoDaddy offers email hosting service for domains. The maximum number of recipients that the GoDaddy email servers will permit for any one email message is 100. If you have more than 100 recipients, you will need to split the recipient list and send multiple copies of an email message.


  1. Email Account Limitations
    Last Updated: August 29, 2008
    GoDaddy Help Center

[/network/email/godaddy] permanent link

Tue, Apr 28, 2009 8:01 pm

Double Underline in HTML

I wanted to put a double underline under "Windows XP Professional Setup" on a webpage. I needed the text in that section of the page to be white on a blue background. To achieve that effect, I used <u style="border-bottom: solid 1px;">Windows XP Professional Setup<u>. The HTML code is shown below.
<div style="background-color: blue; color: white; width: 640px; padding: 2px;">
<u style="border-bottom: solid 1px;">Windows XP Professional Setup</u>


The code would produce the following:

Windows XP Professional Setup


  1. How do you make a double underline???
    Date: December 11, 2006
    Forums - CreateBlog

[/network/web/html] permanent link

Sun, Apr 26, 2009 4:19 pm

NFS on Solaris

Solaris 9 and later comes with an NFS server. To use it, edit the /etc/dfs/dfstab file. Place a share command in it using the syntax share [-F FSType] [-o specific_options] [-d description] [pathname].

The following shows an entry made to that file. Folders are shared via NFS using the share command. The options used are explained below:

-F nfsSpecify the filesystem type for sharing to be NFS.
-o rw=PC1Allow read and write access from one one client system named PC1
-d "share"Use share as the description for the share
#       Place share(1M) commands here for automatic execution
#       on entering init state 3.
#       Issue the command 'svcadm enable network/nfs/server' to
#       run the NFS daemon processes and the share commands, after adding
#       the very first entry to this file.
#       share [-F fstype] [ -o options] [-d "<text>"] <pathname> [resource]
#       .e.g,
#       share  -F nfs  -o rw=engineering  -d "home dirs"  /export/home2

share -F nfs -o rw=PC1 -d "share" /export/home/jsmith/Documents/share

The options that can be specified with -o are as follows:

     -o specific_options

         The specific_options are used to control access  of  the
         shared resource. (See share_nfs(1M) for the NFS specific
         options.) They may be any of the following:


             pathname is shared read/write to all  clients.  This
             is also the default behavior.


             pathname is shared read/write  only  to  the  listed
             clients. No other systems can access pathname.


             pathname is shared read-only to all clients.

Note: in the example above I used /export/home/jsmith/Documents/share as the directory to be shared. I had to use /export/home/jsmith/Documents/share rather than /home/Documents/jsmith/shared, because under Solaris the /home directory is a special directory. For sharing something under it with NFS, you need to use /export/home.

When I tried sharing the directory with the shareall command when I used /home/jsmith/Documents/share, I received an error message.

# shareall -F nfs
share_nfs: /home/jim/Documents/share: Operation not applicable

Once I used /export/home/jsmith/Documents/share in /etc/dfs/dfstab, I did not receive any error messages when running shareall.

# shareall -F nfs

Once the dfstab file has been edited, start the NFS server with svcadm enable network/nfs/server.

You can check the state of the NFS server with the svc command:

$ svcs network/nfs/server
STATE          STIME    FMRI
disabled       14:19:50 svc:/network/nfs/server:default

You can use the -v option with the svcadm to get more verbose information. You can use the -r option to enable other services on which it depends. Svcadm then enables each service instance and recursively enables its dependencies. If the -s option is specified, svcadm enables each service instance and then waits for each service instance to enter the online or degraded state. svcadm will return early if it determines that the service cannot reach these states without administrator intervention.

# svcadm -v enable -r network/nfs/server
svc:/network/nfs/server:default enabled.
svc:/milestone/network enabled.
svc:/network/loopback enabled.
svc:/network/physical enabled.
svc:/network/nfs/nlockmgr enabled.
svc:/network/rpc/bind enabled.
svc:/system/filesystem/minimal enabled.
svc:/system/filesystem/usr enabled.
svc:/system/boot-archive enabled.
svc:/system/filesystem/root enabled.
svc:/system/device/local enabled.
svc:/system/identity:node enabled.
svc:/system/sysidtool:net enabled.
svc:/milestone/single-user:default enabled.
svc:/milestone/devices enabled.
svc:/system/device/fc-fabric enabled.
svc:/system/sysevent enabled.
svc:/system/manifest-import enabled.
svc:/system/filesystem/local:default enabled.
svc:/milestone/single-user enabled.
svc:/system/filesystem/minimal:default enabled.
svc:/system/identity:domain enabled.
svc:/network/nfs/status enabled.
svc:/system/filesystem/local enabled.
# svcadm enable -s /network/nfs/server

If the service is still marked as disabled, you can use the -d option, which lists the services or service instances upon which the given service instances depend.

# svcs /network/nfs/server
STATE          STIME    FMRI
disabled       14:55:55 svc:/network/nfs/server:default
# svcs -d /network/nfs/server
STATE          STIME    FMRI
disabled       Jul_28   svc:/network/rpc/keyserv:default
disabled       Jul_28   svc:/network/nfs/mapid:default
online         Jul_28   svc:/milestone/network:default
online         Jul_28   svc:/system/filesystem/local:default
online         Jul_28   svc:/network/rpc/bind:default
online         Jul_28   svc:/network/nfs/nlockmgr:default
online         Jul_28   svc:/network/rpc/gss:default

When I tried starting the NFS server software on a Solaris 10 system, I didn't see error messages when I ran svdadm enable -s /network/nfs/server, but when I would check it afterwards with svcs /network/nfs/server, the service was listed as disabled. So I tried enabling the keyserv and mapid services, which were listed as disabled.

# svcs keyserv
STATE          STIME    FMRI
disabled       Jul_28   svc:/network/rpc/keyserv:default
# svcadm enable keyserv
# svcs keyserv
STATE          STIME    FMRI
maintenance    15:43:56 svc:/network/rpc/keyserv:default
# svcadm enable mapid
# svcs mapid
STATE          STIME    FMRI
online         15:44:58 svc:/network/nfs/mapid:default
# svcs /network/nfs/server
STATE          STIME    FMRI
disabled       14:55:55 svc:/network/nfs/server:default
# svcadm enable -s /network/nfs/server
svcadm: Instance "svc:/network/nfs/server:default" has been disabled by another 
# svcs -x  svc:/network/nfs/server
svc:/network/nfs/server:default (NFS server)
 State: disabled since Sun Apr 26 15:45:46 2009
Reason: Disabled by an administrator.
   See: nfsd(1M)
   See: /var/svc/log/network-nfs-server:default.log
Impact: This service is not running.

I finally realized that the NFS service won't start if there is no valid directory share. I had used /home/jsmith/Documents/share in /etc/dfs/dfstab instead of /export/home/jsmith/Documents/share. Once I corrected that problem, I was able to enable the /network/nfs/server service.

# svcs /network/nfs/server
STATE          STIME    FMRI
online         16:15:32 svc:/network/nfs/server:default
# svcadm enable -s /network/nfs/server
# svcs /network/nfs/server
STATE          STIME    FMRI
online         16:15:32 svc:/network/nfs/server:default

I had previously run svcadm enable -r /network/nfs/server to recursively enable any other services that the NFS service depended upon. Since the keyserv and mapid services had been listed as disabled after I ran that command, but I had subsequenty enabled them when I incorrectly concluded that the fact that they were disabled was keeping the NFS server service from running, I disabled them again.

# svcadm disable keyserv
# svcadm disable mapid
# svcadm restart /network/nfs/server
# svcs /network/nfs/server
STATE          STIME    FMRI
online         16:41:38 svc:/network/nfs/server:default

I then checked to verify the system was listening on the default port for NFS, port 2049.

# netstat -an | grep 2049
      *.2049                              Idle
      *.2049                              Idle
      *.2049                                                        Idle
      *.2049               *.*                0      0 49152      0 LISTEN
      *.2049               *.*                0      0 49152      0 LISTEN
      *.2049                            *.*                             0      0 49152      0 LISTEN
# netstat -a | grep nfs
      *.nfsd                              Idle
      *.nfsd                              Idle
      *.nfsd                                                        Idle


  1. Sharing directories with NFS in Solaris 10
    Solaris Administration Secrets and Security
  2. Setting up an NFS Server on Solaris
    Date: December 21, 2003
    Network Administrator Tools
  3. Solaris 10: enable NFS server
    By: qmchenry
    Date: May 20, 2005
    Tech-Recipes - Your cookbook of tech tutorials
  4. [osol-help] unable to bring up nfs server on solaris 10
    Date: May 15, 2007
    The opensolaris-help Archives
  5. NFS: Operation not applicable
    Date: August 12, 2006
    Sun Forums
  6. svcadm fails to enable nfs/server
    Date: August 12, 2008
    SUN Solaris - The UNIX and Linux Forums

[/os/unix/solaris] permanent link

Fri, Apr 17, 2009 8:42 pm

Default Virtualhost in Apache

The first virtualhost section in Apache's httpd.conf file will be used as the default for any domain that doesn't have its own virtualhost section in the configuration file, if you use *:80 in the virtualhost section. E.g., suppose the very first virtualhost listed in httpd.conf is as shown below.
<VirtualHost *:80>
    DocumentRoot /www/docs/
    ErrorLog logs/
    CustomLog logs/ common

If the IP address for, points to the same webserver, but there is no virtualhost section for, then anyone who uses will see whatever homepage was set up for


  1. VirtualHost Examples
    Apache HTTP Server Version 2.0
    The Apache HTTP Server Project

[/network/web/server/apache] permanent link

Thu, Apr 16, 2009 4:41 pm

Inserting Author and Last Edit Date in a Visio Drawing

In Visio 2003, to insert a field, such as the date a Visio drawing was last edited or the name of the document's creator, click on the text tool icon, i.e. the "A" in the toolbar at the top of the Visio window, which selects the Text Tool.

Visio - select text tool

Hold the mouse button down and drag the mouse while holding the button down to create a text box. To insert a field into the text box, rather than typing text, click on Insert, then select Field. You can click on Date/Time to see options for inserting dates and times into the document. If you selected the Last Edit Date/Time, you could insert the date and/or time the document was last edited. If you later edited the drawing again, that value would be updated automatically in the area where you inserted it in the drawing.

Visio - date/time field

If you placed author and company information in the drawings "properties" by clicking on File then Properties, you could insert that information in the document as well.

Visio - document properties

Instead of selecting Date/Time when choosing which information to insert in the document, you would then select Document Info for the field.

Visio - date/time field


  1. Creating text fields to display information in Visio
    Microsoft Office Online

[/os/windows/office/visio] permanent link

Tue, Apr 14, 2009 9:39 pm

Inserting a Newline Character Using Vi

To insert a newline character, i.e. to create a new line in a file using Vi on a Unix system, you can use ^M (you have to actually type Ctrl-V (i.e. the Ctrl and V keys hit simultaneously) followed by Enter to get the ^M to appear. For example, suppose that instead of commas separating elements in a list you wish to put each element on a new line.

Original lines

Gold, Silver, Bronze

Desired lines

Gold Silver Bronze

You can use the following command in Vi to replace all commas with the newline character starting from the first line in the file to the last (represented by $):

1,$ s/,/^M/g

As noted above, you need to hit Ctrl-V Enter to put the ^M in the command.


  1. How to represent a new line character in a regex in VI?
    By: mbrooks
    Date: December 30, 2006

[/software/editors/vi] permanent link

Tue, Apr 14, 2009 7:57 am

Character Encoding of Webpages

I've been validating the HTML code on the webpages I create for a few weeks using the W3C Markup Validation Service. For all of my webpages, I've been getting the warning below when I validate them:

No Character encoding declared at document level

No character encoding information was found within the document, either in an HTML meta element or an XML declaration. It is often recommended to declare the character encoding in the document itself, especially if there is a chance that the document will be read from or saved to disk, CD, etc.

The W3C site provides information on character sets and encoding of webpages at Tutorial: Character sets & encodings in XHTML, HTML and CSS.

There are, of course, many other useful references on the matter on the web. The Wikipedia article, Character encodings in HTML explains how browsers determine the character encoding of a webpage. Wikipedia provides information on issues related to the internationalization and localization, often abbreviated as i18n (where 18 stands for the number of letters between the i and the n in internationalization, a usage coined at DEC in the 1970s or 80s) and L10n respectively. The capital L in L10n helps to distinguish it from the lowercase i in i18n.

UTF-8: The Securet of Character Encoding has a good explanation of why it is advisable to specify the character encoding for your HTML documents and why using UTF-8 is recommended.

The webserver is providing information on the encoding of the webpages, i.e. it is sending Content-Type: text/html; charset=UTF-8 in the HTTP headers it sends to browsers, but I haven't been including a meta tag in the pages specifying the encoding, i.e. I haven't been using <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">. I decided to add that immediately after the <head> tag in the template I use for my webpages.

[/network/web/html] permanent link

Sun, Apr 12, 2009 11:06 pm

hMailServer - Free Email Server for Microsoft Windows

If you want to set up a Microsoft Windows system as an email server, there is a free, full-featured email server program available called hMailServer. It supports IMAP, POP3, and SMTP.

[ More Info ]

[/network/email] permanent link

Sun, Apr 12, 2009 7:22 pm

How to Stop Vim from AutoIndenting in Files

I use Vim for editing files on Windows systems. I edit HTML files with it, but find its habit of automatically indenting lines in those files based on the tags used annoying rather than helpful. Fortunately, that behavior can be turned off. To so so, edit the _vimrc file, which is in the directory where you installed Vim, e.g. C:\Program Files\Vim. For HTML files, i.e. any file with an extension of .htm or .html, you can add the following two lines to stop the autoindentation. Close Vim, add the lines, then reopen Vim and you should no longer have the autoindenation in those files.

autocmd BufEnter *.html setlocal indentexpr=
autocmd BufEnter *.htm setlocal indentexpr=

You can enter similar lines to stop autoindentation in other files.


  1. How to stop auto indenting
    Vim Tips Wiki

[/software/editors/vi] permanent link

Sun, Apr 12, 2009 6:29 pm

Configuring a NetScreen Firewall for an Internal SMTP Server

The steps here can be taken to configure a NetScreen firewall, such as the NetScreen-5GT or NetScreen-5XP firewalls, to allow email to be sent from or to an email server sitting behind the firewall, i.e. on the trusted side of the firewall, when the firewall is performing NAT.

[/security/firewalls/netscreen] permanent link

Sat, Apr 11, 2009 12:28 pm

Toshiba M35X Laptop Discharges on AC Power

I've been experiencing more power problems with my Toshiba M35X-S109 laptop. Even when it is powered by A/C, i.e. I have the power cabled attached to it, the battery will sometimes discharge and the system will power itself off. If I check the power status (click on Start, Control Panel, Performance and Maintenance, Toshiba Power Management), I see that the system is on A/C power, yet the battery is still discharging.

Toshiba Power Management on A/C battery discharging

Eventually, the Toshiba Power Management Utility will show that the battery has fully discharged. Then within a minute or two, the system will power itself off.

Toshiba Power Management on A/C battery zero charge

I had configured the Toshiba Power Management Utility to put the system in hibernate mode when the power got down to a a very low percentage, but it has never done so; the system just powers off. And, even though I had it configured to warn me when the battery power got down to 10%, I'm never warned either. The system just abrubtly powers itself off.

I had found other people reporting similar problems with this laptop when I searched for information on the problem previously - see Toshiba M35X Laptop Powers Off Randomly. The system had been showing 100% power yesterday evening and I hadn't noticed the charge state decreasing - I use Laptop Battery Power Monitor to constantly monitor the charge state of the battery - and I hadn't saved a lot of notes I had made regarding a problem I was working on. I know better than to use Windows Notepad, since it doesn't do any automatic file saving, but I had pasted output from a remote system and URLs related to the problem I was working on at the time into Notes. So I utterred a few curses when the laptop powered itself off, since all those notes were lost.

When the system is not charging, I see the two left-most LED's lit green on the front of the laptop. The left-most one indicates the laptop has A/C power. The middle one is lit green indicating the system is powered on. When the system is charging, the right-most one is lit amber when the battery is charging. And the Laptop Battery Power Monitor will have an orange arrow pointing out of it to notify me that the laptop battery is charging.

Laptop Battery Power Monitor - battery charging

When the system powers itself off, I've found that if I power it back on immediately, it will show a zero percent charge and power itself back off within a couple of minutes. If I do nothing, but leave the system off for awhile, when I turn it back on, it may show the battery as fully charged or show it is in a charging state, depending on how long I've left it powered off. Sometimes, though, it shows the battery in a partially charged state and immediately starts discharging again.

Today, I found that if I tipped the laptop backwords, I could get the state to go from discharging to charging. If I put it back down, sometimes it would show that it was charging, other times it would be discharging the battery. I also found that if I pulled the A/C power plug from the back of the laptop and plugged it back in, sometimes I could get it to go to the charging state. Sometimes the Laptop Battery Monitor utility would show briefly that the battery was being charged, but would almost immediately switch to showing it was discharging. If I removed the power plug and put it back in multiple times, I could sometimes get it to stay in the charging state. At the moment it's charging again.

I did some more online searching with Google again today to see what others were saying about such problems with Toshiba laptops. I found others reporting similar problems with other Toshiba laptops. Many, like myself, stated they are unlikely to consider a Toshiba laptop for future laptop purchases. I found a lot of very informative postings on the problem by various people at Toshiba Satellite P25-s520 AC Power Problem. Some people had reported resolving the problem by simply opening the laptop and blowing out dust. Others fixed their problem by replacing the nib on the power adapter. Others replaced or adjusted the placement of components inside the laptop. For anyone experiencing similar problems, I would recommend reading the postings there. If those webpages ever disappear or the site is unavailable, the Internet Archive, aka the Wayback Machine, has them archived at Toshiba Satellite Ps5-s520 AC Power Problem. One of the posters even posted a link on how to disassemble a Toshiba Satellite P25 notebook, which you might want to try to get rid of dust inside the laptop or if you want to check the power connection to the motherboard. The link is Disassembling Toshiba Satellite P25 notebook. It may be helpful for those who need to disassemble other models of Toshiba Satellite laptops as well.

One poster even said he was able to rectify the problem by wrapping aluminum foil around the nib of the power plug that goes into the back of the laptop. I tried that; it didn't help and, when the foil comes off and remains inside the connector on the back of the laptop, it may be difficult to get all of it back out, so, personally, I can't recommend that solution, though, if you are desparate, you can try it.

[/pc/hardware/toshiba] permanent link

Wed, Apr 08, 2009 10:48 pm


I added the Swinog DNSRBL to the list of DNS Blacklists (DNSBLs) that I have sendmail check on my email server. To do so, I added FEATURE(`dnsbl',`',`550 Spam Block: mail from $&{client_addr} refused - see')dnl to /etc/mail/ I now have the following DNSBLs listed in that file:
FEATURE(`dnsbl', `', `550 Spam Block: mail from $&{client_addr} refused - See')dnl
FEATURE(`dnsbl', `', `550 Spam Block: mail from $&{client_addr} refused - See')dnl
FEATURE(`dnsbl', `', `550 Spam Block: mail from $&{client_addr} refused - see')dnl
FEATURE(`dnsbl',`',`550 Spam Block: mail from $&{client_addr} refused - see')dnl
FEATURE(`dnsbl',`',`550 Spam Block: mail from $&{client_addr} refused - see')dnl

After adding the entry for the Swinog RBL, I generated a file from and restarted sendmail.

# m4 /etc/mail/ > /etc/mail/
# /etc/init.d/sendmail restart

I checked /var/log/maillog just moments after adding that blacklist and found it had blocked spam:

# grep '' /var/log/maillog
Apr  8 21:16:57 frostdragon sendmail[15676]: n391GuGi015676: ruleset=check_rcpt,
 arg1=<>, [65.75.
229.245] (may be forged), reject=550 5.7.1 <>... S
pam Block:mail from refused - see

The Swinog DNSBL blocked email to an email address that I used on December 8, 2004 when I registered software with Brøderbund Software. I never used the email for any other purpose. Usually, when I'm providing an email address to any company, I don't use my primary email address, but instead create an alias for that address that points to my primary email address. So, if I start getting a lot of spam addressed to the alias, I can just invalidate the alias. And, since the aliases I create are not ones a spammer would use if the spammer was employing a name dictionary attack, i.e. guessing likekly names, I know that the company has provided the email address I gave them to a spammer. So I know the spammer got the address above, which I've changed for any spam spiders that may crawl across this page, from Brøderbund Software or one of the companies that subsequently owned Brøderbund Software.

The Wikipedia article on the company at Brøderbund lists the following history of corporate ownership for Brøderbund.

Brøderbund was purchased by The Learning Company in 1998 for about USD$420 million in stock. Ironically, Brøderbund had initially attempted to purchase the original The Learning Company in 1995, but was outbid by Softkey, who purchased The Learning Company for $606 million in cash and then adopted its name. In a move to rationalize costs, The Learning Company promptly terminated 500 employees at Brøderbund the same year, representing 42% of the company's workforce. Then in 1999 the combined company was bought by Mattel for $3.6 billion. Mattel reeled from the financial impact of this transaction, and Jill Barad, the CEO, ended up being forced out in a climate of investor outrage. Mattel then gave away The Learning Company in September 2000 to Gores Technology Group, a private acquisitions firm, for a share of whatever Gores could obtain by selling the company. In 2001, Gores sold The Learning Company's entertainment holdings to Ubisoft, and most of the other holdings, including the Brøderbund name, to Irish company Riverdeep. Currently, all of Brøderbund's games, such as the Myst series, are published by Ubisoft.

I suspect that it wasn't just my email address that was sold to spammers. Probably Brøderbund's entire mailing list was sold by either Brøderbund or one of the companies that acquired it, though, of course there is a possibility it could just have been an employee of one of the companies trying to make some easy cash or one who was losing a job as his or her company was acquired by another company, who could have been looking to compensate for lost wages.

The address is still being used by spammers over four years later, even though the address has probably not been valid for over a year. Unfortunately, I don't remember when I first started getting spam addressed to that email address.

After having a hernia operation recently, I noticed I've been getting spam on a fairly regular basis suggesting I might want to use the legal services mentioned in the spam if I wanted to sue for any problems related to the patch used in the surgery. I don't remember seeing any of this type of message previously, though it's possible that I might have received such messages, but they never registered in my consciousness then as I deleted spam. But I'm wondering now if someone at the office of the doctor who performed the surgery sold my email address. I believe I did put my primary email address on a form I filled out at the doctor's office. If I had used an alias, I would know for certain, if that was the case.

[/network/email/spam/blocklists] permanent link

Tue, Apr 07, 2009 10:31 pm

NetScreen Snoop Command

Juniper NetScreen firewalls have a snoop command that functions similarly to the command of the same name on a Solaris system or the tcpdump utility for Unix/Linux systems or the Windows equivalent, WinDump. I.e., it provides some packet sniffing capabilities.

The snoop commands provide functionality one might expect from a sniffer, but you can also use debug commands to see how the firewall is applying policies to the traffic it sees.

[ More Info ]

[/security/firewalls/netscreen] permanent link

Tue, Apr 07, 2009 8:54 pm

Configuring a Linksys BEFSR41 Router for Animal Crossing

The Wii game Animal Crossing: City Folk, which was released on November 16, 2008 in the U.S. allows one to visit friends who also have Wii's on which they are running the game. But in order for someone to visit you, you must have your router/firewall configured so that the appropriate firewall ports are open.

[ More Info ]

[/gaming/wii] permanent link

Sun, Apr 05, 2009 9:00 pm

Configuring a Netscreen Firewall for Syslog Server Support

To configure a Juniper NetScreen firewall to send messages to a syslog server take these steps.

[/security/firewalls/netscreen] permanent link

Sun, Apr 05, 2009 8:18 pm

Free File Upload Sites for Virus Scanning

There are a number of sites where one can upload a file to have it scanned by multiple antivirus programs, e.g. VirusTotal, VirSCAN, and Jotti's Malware Scan site.

[ More Info ]

[/security/antivirus] permanent link

Sat, Apr 04, 2009 3:32 pm

Socat and Ncat

I needed to determine whether User Datagram Protocol (UDP) datagrams were being transmitted through a firewall on specific ports. I had a Windows system behind the firewall and a Linux system on the outside of the firewall. I intended to use Ncat on both systems. I installed Nmap on the Windows system, since it provides the Ncat utility. But when I tried to install Ncat on the Linux system, I encountered problems, so I installed socat, instead, since it provides similar capabilities.

Since I needed to test whether UDP datagrams would reach the Windows system on port 27900, I issued the command ncat -u 27900 -l to have ncat listen (the "-l" argument) on UDP port 27900 (the -u 27900 argument). I then issued the command socat - udp-sendto: on the Linux system. The - udp-sendto: allowed me to send data from the system socat was running on to the the destination address I was then able to type text, e.g. the words "a test" on the Linux system. I saw them appear on the Windows system indicating the firewall rule was functioning as needed.

Linux Sending System

$ socat - udp-sendto:
a test

Windows Listening System

C:\Program Files\Network\Nmap>ncat -u 27900 -l
a test

I then terminated the socat program on the Linux system with Ctrl-D and the ncat program on the Windows system with Ctrl-C.


  1. Nmap
  2. socat
  3. socat - Multipurpose relay (SOcket CAT)
    Linux Man Pages Manual Documentation for Linux / Solaris / UNIX / BSD

[/network/tools/scanning/socat] permanent link

Sat, Apr 04, 2009 3:01 pm

Ncat and Glibc

I wanted to install Ncat on a CentOS Linux system to test firewall rules. I intended to run Ncat on a Windows system behind the firewall to listen for UDP connections while using Ncat on the Linux system outside the firewall to send data to the Windows system through the firewall. I downloaded the Windows version of Nmap, which also provides the command line Ncat tool. I had no problems installing and running it on the Windows system. However, when I downloaded the Linux RPM for Ncat from the Nmap site and tried to install it, I encountered problems.
# rpm --install ncat-4.85BETA7-1.x86_64.rpm
error: Failed dependencies: is needed by ncat-4.85BETA7-1.x86_64

Yet, when I checked the system for the presence of, I found it was present.

# locate

I checked to see what package provided the file.

# rpm -qf /lib/
# rpm -qf /lib64/

When I checked the package, there appeared to be two glibc-2.5-24 packages present, since when I ran the command rpm -qi glibc-2.5-24, I saw the package listed twice, but with different sizes

# rpm -qi glibc-2.5-24
Name        : glibc                        Relocations: (not relocatable)
Version     : 2.5                               Vendor: CentOS
Release     : 24                            Build Date: Fri 23 May 2008 10:40:42 PM EDT
Install Date: Tue 29 Jul 2008 10:03:15 AM EDT      Build Host:
Group       : System Environment/Libraries   Source RPM: glibc-2.5-24.src.rpm
Size        : 11590290                         License: LGPL
Signature   : DSA/SHA1, Sun 15 Jun 2008 09:51:20 AM EDT, Key ID a8a447dce8562897
Summary     : The GNU libc libraries.
Description :
The glibc package contains standard libraries which are used by
multiple programs on the system. In order to save disk space and
memory, as well as to make upgrading easier, common system code is
kept in one place and shared between programs. This particular package
contains the most important sets of shared libraries: the standard C
library and the standard math library. Without these two libraries, a
Linux system will not function.
Name        : glibc                        Relocations: (not relocatable)
Version     : 2.5                               Vendor: CentOS
Release     : 24                            Build Date: Fri 23 May 2008 11:12:28 PM EDT
Install Date: Tue 29 Jul 2008 10:03:26 AM EDT      Build Host:
Group       : System Environment/Libraries   Source RPM: glibc-2.5-24.src.rpm
Size        : 12579066                         License: LGPL
Signature   : DSA/SHA1, Sun 15 Jun 2008 09:51:20 AM EDT, Key ID a8a447dce8562897
Summary     : The GNU libc libraries.
Description :
The glibc package contains standard libraries which are used by
multiple programs on the system. In order to save disk space and
memory, as well as to make upgrading easier, common system code is
kept in one place and shared between programs. This particular package
contains the most important sets of shared libraries: the standard C
library and the standard math library. Without these two libraries, a
Linux system will not function.

I tried updating the package.

# yum upgrade glibc
Loading "priorities" plugin
Loading "fastestmirror" plugin
Loading mirror speeds from cached hostfile
 * rpmforge:
 * base:
 * updates:
 * addons:
 * extras:
338 packages excluded due to repository priority protections
Setting up Upgrade Process
Resolving Dependencies
--> Running transaction check
---> Package glibc.i686 0:2.5-34 set to be updated
--> Processing Dependency: glibc-common = 2.5-34 for package: glibc
--> Processing Dependency: glibc = 2.5-24 for package: glibc-devel
--> Processing Dependency: glibc = 2.5-24 for package: glibc-devel
--> Processing Dependency: glibc = 2.5-24 for package: glibc-headers
---> Package glibc.x86_64 0:2.5-34 set to be updated
--> Running transaction check
---> Package glibc-headers.x86_64 0:2.5-34 set to be updated
---> Package glibc-common.x86_64 0:2.5-34 set to be updated
---> Package glibc-devel.x86_64 0:2.5-34 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

 Package                 Arch       Version          Repository        Size
 glibc                   x86_64     2.5-34           base              4.7 M
 glibc                   i686       2.5-34           base              5.2 M
 glibc-common            x86_64     2.5-34           base               16 M
Updating for dependencies:
 glibc-devel             x86_64     2.5-34           base              2.4 M
 glibc-headers           x86_64     2.5-34           base              589 k

Transaction Summary
Install      0 Package(s)
Update       5 Package(s)
Remove       0 Package(s)

Total download size: 29 M
Is this ok [y/N]: y
Downloading Packages:
(1/5): glibc-devel-2.5-34 100% |=========================| 2.4 MB    00:04
(2/5): glibc-common-2.5-3 100% |=========================|  16 MB    00:32
(3/5): glibc-headers-2.5- 100% |=========================| 589 kB    00:01
(4/5): glibc-2.5-34.i686. 100% |=========================| 5.2 MB    00:09
(5/5): glibc-2.5-34.x86_6 100% |=========================| 4.7 MB    00:08
Running rpm_check_debug
ERROR with rpm_check_debug vs depsolve:
Package glibc-devel needs glibc = 2.5-24, this is not available.
Package glibc-devel needs glibc = 2.5-24, this is not available.
Package glibc-devel needs glibc-headers = 2.5-24, this is not available.
Package glibc-devel needs glibc-headers = 2.5-24, this is not available.

When I ran rpm -qi glib afterwards, I saw version 2.5-24 still listed. I tried yum update glibc as well, though I didn't expect the results to be different; they weren't. I then checked for glibc files in the yum cache. There appeared to be both 32-bit and 64-bit versions present.

# ls /var/cache/yum/base/packages/glibc*

I removed all of them from the yum cache with rm -f /var/cache/yum/base/packages/glibc*. When I tried yum update glibc again, however, the results were the same.

I checked the arch of the installed glibc packages.

# rpm -qa --qf  '%{name}-%{version}-%{release}.%{arch}\n'|grep glibc

I did have 32-bit and 64-bit versions installed. I decided to try listing all of the glibc packages for the yum update command. That worked much better.

# yum update glibc glibc-common glibc-devel glibc-headers
Loading "priorities" plugin
Loading "fastestmirror" plugin
Loading mirror speeds from cached hostfile
 * rpmforge:
 * base:
 * updates:
 * addons:
 * extras:
338 packages excluded due to repository priority protections
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package glibc.x86_64 0:2.5-34 set to be updated
---> Package glibc-headers.x86_64 0:2.5-34 set to be updated
---> Package glibc-devel.i386 0:2.5-34 set to be updated
---> Package glibc-common.x86_64 0:2.5-34 set to be updated
---> Package glibc-devel.x86_64 0:2.5-34 set to be updated
---> Package glibc.i686 0:2.5-34 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

 Package                 Arch       Version          Repository        Size
 glibc                   x86_64     2.5-34           base              4.7 M
 glibc                   i686       2.5-34           base              5.2 M
 glibc-common            x86_64     2.5-34           base               16 M
 glibc-devel             i386       2.5-34           base              2.0 M
 glibc-devel             x86_64     2.5-34           base              2.4 M
 glibc-headers           x86_64     2.5-34           base              589 k

Transaction Summary
Install      0 Package(s)
Update       6 Package(s)
Remove       0 Package(s)

Total download size: 31 M
Is this ok [y/N]: y
Downloading Packages:
(1/1): glibc-devel-2.5-34 100% |=========================| 2.0 MB    00:03
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Updating  : glibc-common                 ####################### [ 1/12]
  Updating  : glibc                        ####################### [ 2/12]
  Updating  : glibc                        ####################### [ 3/12]
warning: /etc/ created as /etc/
warning: /etc/localtime created as /etc/localtime.rpmnew
warning: /etc/nsswitch.conf created as /etc/nsswitch.conf.rpmnew
  Updating  : glibc-headers                ####################### [ 4/12]
  Updating  : glibc-devel                  ####################### [ 5/12]
  Updating  : glibc-devel                  ####################### [ 6/12]
  Cleanup   : glibc                        ####################### [ 7/12]
  Cleanup   : glibc-headers                ####################### [ 8/12]
  Cleanup   : glibc-devel                  ####################### [ 9/12]
  Cleanup   : glibc-common                 ####################### [10/12]
  Cleanup   : glibc-devel                  ####################### [11/12]
  Cleanup   : glibc                        ####################### [12/12]

Updated: glibc.x86_64 0:2.5-34 glibc.i686 0:2.5-34 glibc-common.x86_64 0:2.5-34 glibc-devel.i386 0:2.5-34 glibc-devel.x86_64 0:2.5-34 glibc-headers.x86_64 0:2.5-34

I then checked the architecture for the installed packages again:

# rpm -qa --qf  '%{name}-%{version}-%{release}.%{arch}\n'|grep glibc

But when I tried to install ncat again, I got the same error as before.

# rpm --install ncat-4.85BETA7-1.x86_64.rpm
error: Failed dependencies: is needed by ncat-4.85BETA7-1.x86_64

When I checked on what was required for the ncat package, I saw the following:

# rpm --requires -qp ncat-4.85BETA7-1.x86_64.rpm
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1

I then tried installing the 32-bit version of ncat, but that attempt failed as well.

# rpm --install ncat-4.85BETA7-1.i386.rpm
error: Failed dependencies: is needed by ncat-4.85BETA7-1.i386

Since I had already expended far more time than I anticipated in trying to install netcat, I decided to try an alternative program with similar capabilities, socat, instead. I didn't have any problems installing it.

# yum install socat
Loading "priorities" plugin
Loading "fastestmirror" plugin
Loading mirror speeds from cached hostfile
 * rpmforge:
 * base:
 * updates:
 * addons:
 * extras:
338 packages excluded due to repository priority protections
Setting up Install Process
Parsing package install arguments
Resolving Dependencies
--> Running transaction check
---> Package socat.x86_64 0: set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

 Package                 Arch       Version          Repository        Size
 socat                   x86_64  rpmforge          398 k

Transaction Summary
Install      1 Package(s)
Update       0 Package(s)
Remove       0 Package(s)

Total download size: 398 k
Is this ok [y/N]: y
Downloading Packages:
(1/1): socat- 100% |=========================| 398 kB    00:01
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing: socat                        ######################### [1/1]

Installed: socat.x86_64 0:


  1. Nmap
  2. Ncat
    MP: Weblog
  3. Re: [rhelv5-list] Updating RHEL5.2 causes yum to loop infinitely...
    The Mail Archive
  4. Socat
    Top 100 Nework Security Tools
  5. socat - Multipurpose relay

[/network/tools/scanning/nmap] permanent link

Wed, Apr 01, 2009 11:37 am

Cherry Blossoms in Animal Crossing

When a family member started playing Animal Crossing™: City Folk on her WII today, which is April 1, i.e. April Fools Day in the U.S., she found a lot of trees she had recently planted were now red. She thought the trees had died. But the red leaves on some trees that appear in the game from April 1 through April 7 represent cherry blossoms.

Each year in Japan and the U.S., as well as some other countries, there are Cherry Blossom Festivals held when the cherry blossoms appear.

Japan gave the U.S. 3,020 sakura trees, aka cherry trees, to the U.S. in 1912 as a gesture of friendship. Those trees were planted in Sakura Park in Manhattan and along the Tidal Basin in Washington, D.C. Japan sent another 3,800 trees to the U.S. in 1965. The annual National Cherry Blossom Festival in D.C. has been a popular tourist attraction in the early spring for many years.

Also on April 1, you can get a special gift, if you speak to Tortimer, the tortoise-like character. If you talk to him on other special days, you can get other items from him.

To get the following of Tortimer's goods, speak to him on the corresponding day noted below.


  1. What does it mean if you have red trees ...
    Date: April 5, 2008
  2. Cherry blossom
    Wikipedia, the free encyclopedia
  3. National Cherry Blossom Festival
    Wikipedia, the free encyclopedia

[/gaming/wii] permanent link

Sun, Mar 29, 2009 9:29 pm

Live Messenger Scene

Windows Live Messenger (version 2009 and likely other versions) stores "scenes" in a scenes.mct file, usually in C:\Program Files\Windows Live\Messenger. If you want to create your own "scene" for use with Windows Live Messenger, you may want to create the image in a size that matches what is used for the scenes in scenes.mct, which is just a CAB file containing graphics files

[ More Info ]

[/network/chat/live_messenger] permanent link

Sat, Mar 28, 2009 10:25 am

Customizing the Start Menu

In Windows XP, if there are certain programs that you use quite frequently and would like to have immediately accessible when you click on the Windows Start button, you can add them to the Start menu, which is the menu that appears when you click on that button.

Normally, you will see your default email client and web browser at the top of the start menu. There may also be other items already on the menu.

Start Menu - before

If you want to add another item at the top of the start menu in the same section as the shortcuts for your default email client and web browser, all you need to do is click on Start, select All Programs and then locate the the program you wish to add to the menu. Right-click on that program and select Pin to Start menu. In the example below, Windows Live Messenger has been selected to be added to the Start menu.

Start Menu - pin Windows Live Messenger

You will then see the program on the upper-left side of the Start menu. You can now run the program by clicking on the Start button and selecting the program from that location.

Start Menu - after

If you ever want to remove the program from the Start menu, click the Start button, right-click on the program, and choose Unpin from the Start menu.

Start Menu - unpin Windows Live Messenger

  1. Customize your Start menu
    Published: September 7, 2006
    Microsoft Corporation

[/os/windows/xp] permanent link

Fri, Mar 27, 2009 5:07 pm

Qpopper 4.0.16 Upgrade on a Solaris 5.7 System

For anyone who might be encountering problems building Qpopper or other software on a Solaris system and seeing a checking size of unsigned long int... configure: error: cannot compute sizeof (unsigned long int), 77 error message at the configure stage or seeing ld: fatal: Symbol referencing errors at the make stage, try running configure with CFLAGS=-gstabs+, i.e. try ./configure CFLAGS=-gstabs+. Since Solaris uses shadow passwords, you should also use the --enable-specialauth option as well, i.e. use the following configure command:

./configure --enable-specialauth CFLAGS=-gstabs+

Otherwise, Qpopper won't likely accept an account's password when you try to download email. Using those options at the configure step allowed me to resolve issues I was having installing Qpopper 4.0.16 on a Solaris 5.7 system.

[ More Info ]

[/network/email/qpopper] permanent link

Thu, Mar 26, 2009 6:14 pm

SunOS 5.7: jsh, rsh, ksh, rksh, sh Patch

I installed the SunOS 5.7: jsh, rsh, ksh, rksh, sh Patch on a Solaris 2.7 system.

I first checked to see whether the patch was already installed with showrev -p. It was not installed.

# showrev -p | grep 108162

If a patch is installed, you would see something like the following:

# showrev -p | grep 106938-09
Patch: 106938-09 Obsoletes: 107018-04, 107332-04, 108412-01 Requires:  Incompati
bles:  Packages: SUNWcsu, SUNWcslx, SUNWcsl, SUNWarc, SUNWarcx, SUNWscpux, SUNWs

I placed the .zip patch file I downloaded into /var/spool/patch, unzipped it and installed the patch with patchadd.

# unzip
   creating: 108162-08/
  inflating: 108162-08/.diPatch
  inflating: 108162-08/patchinfo
   creating: 108162-08/SUNWcsr/
  inflating: 108162-08/SUNWcsr/pkgmap
  inflating: 108162-08/SUNWcsr/pkginfo
   creating: 108162-08/SUNWcsr/install/
  inflating: 108162-08/SUNWcsr/install/checkinstall
  inflating: 108162-08/SUNWcsr/install/copyright
  inflating: 108162-08/SUNWcsr/install/i.none
  inflating: 108162-08/SUNWcsr/install/patch_checkinstall
  inflating: 108162-08/SUNWcsr/install/patch_postinstall
  inflating: 108162-08/SUNWcsr/install/postinstall
  inflating: 108162-08/SUNWcsr/install/preinstall
   creating: 108162-08/SUNWcsr/reloc/
   creating: 108162-08/SUNWcsr/reloc/sbin/
  inflating: 108162-08/SUNWcsr/reloc/sbin/jsh
   creating: 108162-08/SUNWcsu/
  inflating: 108162-08/SUNWcsu/pkgmap
  inflating: 108162-08/SUNWcsu/pkginfo
   creating: 108162-08/SUNWcsu/install/
  inflating: 108162-08/SUNWcsu/install/checkinstall
  inflating: 108162-08/SUNWcsu/install/copyright
  inflating: 108162-08/SUNWcsu/install/i.none
  inflating: 108162-08/SUNWcsu/install/patch_checkinstall
  inflating: 108162-08/SUNWcsu/install/patch_postinstall
  inflating: 108162-08/SUNWcsu/install/postinstall
  inflating: 108162-08/SUNWcsu/install/preinstall
   creating: 108162-08/SUNWcsu/reloc/
   creating: 108162-08/SUNWcsu/reloc/usr/
   creating: 108162-08/SUNWcsu/reloc/usr/bin/
  inflating: 108162-08/SUNWcsu/reloc/usr/bin/jsh
  inflating: 108162-08/SUNWcsu/reloc/usr/bin/ksh
  inflating: 108162-08/README.108162-08
# patchadd 108162-08

Checking installed patches...
Verifying sufficient filesystem capacity (dry run method)...
Installing patch packages...

Patch number 108162-08 has been successfully installed.
See /var/sadm/patch/108162-08/log for details

Patch packages installed:

I checked the installation log file in /var/sadm/108162-08 and saw the following.

# cat /var/sadm/patch/108162-08/log

This appears to be an attempt to install the same architecture and
version of a package which is already installed.  This installation
will attempt to overwrite this package.

Dryrun complete.
No changes were made to the system.

This appears to be an attempt to install the same architecture and
version of a package which is already installed.  This installation
will attempt to overwrite this package.

Dryrun complete.
No changes were made to the system.

This appears to be an attempt to install the same architecture and
version of a package which is already installed.  This installation
will attempt to overwrite this package.

Installation of <SUNWcsr> was successful.

This appears to be an attempt to install the same architecture and
version of a package which is already installed.  This installation
will attempt to overwrite this package.

Installation of <SUNWcsu> was successful.

I then checked on the patch with showrev -p.

# showrev -p | grep 108162-08
Patch: 108162-08 Obsoletes: 108416-02 Requires:  Incompatibles:  Packages: SUNWc
su, SUNWcsr

[/os/unix/solaris/5_7] permanent link

Thu, Mar 26, 2009 5:12 pm

SunOS 5.7: packaging utilities patch

When checking SunSolve for available patches for a Solaris 5.7 system, I found a SunOS 5.7: packaging utilities patch. I unzipped the file I downloaded in /var/spool/patch and then used patchadd to install it, but received a message that another patch was required to be installed prior to this one.
# unzip
   creating: 107443-24/
  inflating: 107443-24/.diPatch
  inflating: 107443-24/patchinfo
   creating: 107443-24/SUNWarc/
  inflating: 107443-24/SUNWarc/pkgmap
  inflating: 107443-24/SUNWarc/pkginfo
   creating: 107443-24/SUNWarc/install/
  inflating: 107443-24/SUNWarc/install/checkinstall
  inflating: 107443-24/SUNWarc/install/copyright
  inflating: 107443-24/SUNWarc/install/i.none
  inflating: 107443-24/SUNWarc/install/patch_checkinstall
  inflating: 107443-24/SUNWarc/install/patch_postinstall
  inflating: 107443-24/SUNWarc/install/postinstall
  inflating: 107443-24/SUNWarc/install/preinstall
   creating: 107443-24/SUNWarc/reloc/
   creating: 107443-24/SUNWarc/reloc/usr/
   creating: 107443-24/SUNWarc/reloc/usr/lib/
  inflating: 107443-24/SUNWarc/reloc/usr/lib/libpkg.a
   creating: 107443-24/SUNWcsu/
  inflating: 107443-24/SUNWcsu/pkgmap
  inflating: 107443-24/SUNWcsu/pkginfo
   creating: 107443-24/SUNWcsu/install/
  inflating: 107443-24/SUNWcsu/install/checkinstall
  inflating: 107443-24/SUNWcsu/install/copyright
  inflating: 107443-24/SUNWcsu/install/i.none
  inflating: 107443-24/SUNWcsu/install/patch_checkinstall
  inflating: 107443-24/SUNWcsu/install/patch_postinstall
  inflating: 107443-24/SUNWcsu/install/postinstall
  inflating: 107443-24/SUNWcsu/install/preinstall
   creating: 107443-24/SUNWcsu/reloc/
   creating: 107443-24/SUNWcsu/reloc/usr/
   creating: 107443-24/SUNWcsu/reloc/usr/bin/
  inflating: 107443-24/SUNWcsu/reloc/usr/bin/pkginfo
  inflating: 107443-24/SUNWcsu/reloc/usr/bin/pkgmk
  inflating: 107443-24/SUNWcsu/reloc/usr/bin/pkgparam
  inflating: 107443-24/SUNWcsu/reloc/usr/bin/pkgproto
  inflating: 107443-24/SUNWcsu/reloc/usr/bin/pkgtrans
   creating: 107443-24/SUNWcsu/reloc/usr/sadm/
   creating: 107443-24/SUNWcsu/reloc/usr/sadm/install/
   creating: 107443-24/SUNWcsu/reloc/usr/sadm/install/bin/
  inflating: 107443-24/SUNWcsu/reloc/usr/sadm/install/bin/pkginstall
  inflating: 107443-24/SUNWcsu/reloc/usr/sadm/install/bin/pkgname
  inflating: 107443-24/SUNWcsu/reloc/usr/sadm/install/bin/pkgremove
   creating: 107443-24/SUNWcsu/reloc/usr/sadm/install/scripts/
  inflating: 107443-24/SUNWcsu/reloc/usr/sadm/install/scripts/cmdexec
  inflating: 107443-24/SUNWcsu/reloc/usr/sadm/install/scripts/i.awk
  inflating: 107443-24/SUNWcsu/reloc/usr/sadm/install/scripts/
  inflating: 107443-24/SUNWcsu/reloc/usr/sadm/install/scripts/i.sed
  inflating: 107443-24/SUNWcsu/reloc/usr/sadm/install/scripts/r.awk
  inflating: 107443-24/SUNWcsu/reloc/usr/sadm/install/scripts/
  inflating: 107443-24/SUNWcsu/reloc/usr/sadm/install/scripts/r.sed
   creating: 107443-24/SUNWcsu/reloc/usr/sbin/
  inflating: 107443-24/SUNWcsu/reloc/usr/sbin/installf
  inflating: 107443-24/SUNWcsu/reloc/usr/sbin/pkgadd
  inflating: 107443-24/SUNWcsu/reloc/usr/sbin/pkgchk
  inflating: 107443-24/SUNWcsu/reloc/usr/sbin/pkgmv
  inflating: 107443-24/SUNWcsu/reloc/usr/sbin/pkgrm
  inflating: 107443-24/README.107443-24
  inflating: 107443-24/LEGAL_LICENSE.TXT
# ls 107443-24
LEGAL_LICENSE.TXT  SUNWarc            patchinfo
README.107443-24   SUNWcsu
# patchadd /var/spool/patch/107443-24

Checking installed patches...
ERROR: This patch requires patch  107332-03
which has not been applied to the system.

Patchadd is terminating.

The 107332 patch was available from the SunSolve site, but its status was listed as "obsolete". That patch was obsoleted by patch 106938-07, which was in turn obsoleted by patch 106938-08, which was itself obsoleted by patch 106938-09, which has a title of "SunOS 5.7: libresolv, in.named, libadm, & nslookup patch".

I downloaded the SunOS 5.7: libresolv, in.named, libadm, & nslookup patch into /var/spool/patch and uncompressed it.

# unzip
   creating: 106938-09/
  inflating: 106938-09/.diPatch
  inflating: 106938-09/patchinfo
   creating: 106938-09/SUNWarc/
  inflating: 106938-09/SUNWarc/pkgmap
  inflating: 106938-09/SUNWarc/pkginfo
   creating: 106938-09/SUNWarc/install/
  inflating: 106938-09/SUNWarc/install/checkinstall
  inflating: 106938-09/SUNWarc/install/copyright
  inflating: 106938-09/SUNWarc/install/i.none
  inflating: 106938-09/SUNWarc/install/patch_checkinstall
  inflating: 106938-09/SUNWarc/install/patch_postinstall
  inflating: 106938-09/SUNWarc/install/postinstall
  inflating: 106938-09/SUNWarc/install/preinstall
   creating: 106938-09/SUNWarc/reloc/
   creating: 106938-09/SUNWarc/reloc/usr/
   creating: 106938-09/SUNWarc/reloc/usr/lib/
  inflating: 106938-09/SUNWarc/reloc/usr/lib/libadm.a
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-l300.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-l300s.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-l4014.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-l450.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lTL.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-ladm
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-ladm.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-laio.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lauth.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lbsm.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lc.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lc2stubs.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lcmd.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lcurses.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-ldevice.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-ldoor.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lkstat.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lkvm.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lmtmalloc.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lnls.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lnsl
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lnsl.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lpam.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lplot.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lrac.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lresolv
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lresolv.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lsec.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lthread.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lvolmgt.ln
  inflating: 106938-09/SUNWarc/reloc/usr/lib/llib-lvt0.ln
   creating: 106938-09/SUNWarc/reloc/usr/xpg4/
   creating: 106938-09/SUNWarc/reloc/usr/xpg4/lib/
  inflating: 106938-09/SUNWarc/reloc/usr/xpg4/lib/llib-lcurses.ln
   creating: 106938-09/SUNWarcx/
  inflating: 106938-09/SUNWarcx/pkgmap
  inflating: 106938-09/SUNWarcx/pkginfo
   creating: 106938-09/SUNWarcx/install/
  inflating: 106938-09/SUNWarcx/install/checkinstall
  inflating: 106938-09/SUNWarcx/install/copyright
  inflating: 106938-09/SUNWarcx/install/i.none
  inflating: 106938-09/SUNWarcx/install/patch_checkinstall
  inflating: 106938-09/SUNWarcx/install/patch_postinstall
  inflating: 106938-09/SUNWarcx/install/postinstall
  inflating: 106938-09/SUNWarcx/install/preinstall
   creating: 106938-09/SUNWarcx/reloc/
   creating: 106938-09/SUNWarcx/reloc/usr/
   creating: 106938-09/SUNWarcx/reloc/usr/lib/
   creating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-l300.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-l300s.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-l4014.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-l450.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-ladm.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-laio.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lbsm.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lc.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lcmd.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lcurses.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-ldevice.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-ldoor.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lkstat.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lkvm.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lmtmalloc.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lnls.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lnsl.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lpam.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lplot.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lrac.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lresolv.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lsec.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lthread.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lvolmgt.ln
  inflating: 106938-09/SUNWarcx/reloc/usr/lib/sparcv9/llib-lvt0.ln
   creating: 106938-09/SUNWarcx/reloc/usr/xpg4/
   creating: 106938-09/SUNWarcx/reloc/usr/xpg4/lib/
   creating: 106938-09/SUNWarcx/reloc/usr/xpg4/lib/sparcv9/
  inflating: 106938-09/SUNWarcx/reloc/usr/xpg4/lib/sparcv9/llib-lcurses.ln
   creating: 106938-09/SUNWcsl/
  inflating: 106938-09/SUNWcsl/pkgmap
  inflating: 106938-09/SUNWcsl/pkginfo
   creating: 106938-09/SUNWcsl/install/
  inflating: 106938-09/SUNWcsl/install/checkinstall
  inflating: 106938-09/SUNWcsl/install/copyright
  inflating: 106938-09/SUNWcsl/install/i.none
  inflating: 106938-09/SUNWcsl/install/patch_checkinstall
  inflating: 106938-09/SUNWcsl/install/patch_postinstall
  inflating: 106938-09/SUNWcsl/install/postinstall
  inflating: 106938-09/SUNWcsl/install/preinstall
   creating: 106938-09/SUNWcsl/reloc/
   creating: 106938-09/SUNWcsl/reloc/usr/
   creating: 106938-09/SUNWcsl/reloc/usr/lib/
  inflating: 106938-09/SUNWcsl/reloc/usr/lib/
  inflating: 106938-09/SUNWcsl/reloc/usr/lib/
  inflating: 106938-09/SUNWcsl/reloc/usr/lib/
   creating: 106938-09/SUNWcslx/
  inflating: 106938-09/SUNWcslx/pkgmap
  inflating: 106938-09/SUNWcslx/pkginfo
   creating: 106938-09/SUNWcslx/install/
  inflating: 106938-09/SUNWcslx/install/checkinstall
  inflating: 106938-09/SUNWcslx/install/copyright
  inflating: 106938-09/SUNWcslx/install/i.none
  inflating: 106938-09/SUNWcslx/install/patch_checkinstall
  inflating: 106938-09/SUNWcslx/install/patch_postinstall
  inflating: 106938-09/SUNWcslx/install/postinstall
  inflating: 106938-09/SUNWcslx/install/preinstall
   creating: 106938-09/SUNWcslx/reloc/
   creating: 106938-09/SUNWcslx/reloc/usr/
   creating: 106938-09/SUNWcslx/reloc/usr/lib/
   creating: 106938-09/SUNWcslx/reloc/usr/lib/sparcv9/
  inflating: 106938-09/SUNWcslx/reloc/usr/lib/sparcv9/
  inflating: 106938-09/SUNWcslx/reloc/usr/lib/sparcv9/
   creating: 106938-09/SUNWcsu/
  inflating: 106938-09/SUNWcsu/pkgmap
  inflating: 106938-09/SUNWcsu/pkginfo
   creating: 106938-09/SUNWcsu/install/
  inflating: 106938-09/SUNWcsu/install/checkinstall
  inflating: 106938-09/SUNWcsu/install/copyright
  inflating: 106938-09/SUNWcsu/install/i.none
  inflating: 106938-09/SUNWcsu/install/patch_checkinstall
  inflating: 106938-09/SUNWcsu/install/patch_postinstall
  inflating: 106938-09/SUNWcsu/install/postinstall
  inflating: 106938-09/SUNWcsu/install/preinstall
   creating: 106938-09/SUNWcsu/reloc/
   creating: 106938-09/SUNWcsu/reloc/usr/
   creating: 106938-09/SUNWcsu/reloc/usr/sbin/
  inflating: 106938-09/SUNWcsu/reloc/usr/sbin/in.named
  inflating: 106938-09/SUNWcsu/reloc/usr/sbin/nslookup
   creating: 106938-09/SUNWscpux/
  inflating: 106938-09/SUNWscpux/pkgmap
  inflating: 106938-09/SUNWscpux/pkginfo
   creating: 106938-09/SUNWscpux/install/
  inflating: 106938-09/SUNWscpux/install/checkinstall
  inflating: 106938-09/SUNWscpux/install/copyright
  inflating: 106938-09/SUNWscpux/install/i.none
  inflating: 106938-09/SUNWscpux/install/patch_checkinstall
  inflating: 106938-09/SUNWscpux/install/patch_postinstall
  inflating: 106938-09/SUNWscpux/install/postinstall
  inflating: 106938-09/SUNWscpux/install/preinstall
   creating: 106938-09/SUNWscpux/reloc/
   creating: 106938-09/SUNWscpux/reloc/usr/
   creating: 106938-09/SUNWscpux/reloc/usr/ucblib/
   creating: 106938-09/SUNWscpux/reloc/usr/ucblib/sparcv9/
  inflating: 106938-09/SUNWscpux/reloc/usr/ucblib/sparcv9/llib-lucb.ln
   creating: 106938-09/SUNWsra/
  inflating: 106938-09/SUNWsra/pkgmap
  inflating: 106938-09/SUNWsra/pkginfo
   creating: 106938-09/SUNWsra/install/
  inflating: 106938-09/SUNWsra/install/checkinstall
  inflating: 106938-09/SUNWsra/install/copyright
  inflating: 106938-09/SUNWsra/install/i.none
  inflating: 106938-09/SUNWsra/install/patch_checkinstall
  inflating: 106938-09/SUNWsra/install/patch_postinstall
  inflating: 106938-09/SUNWsra/install/postinstall
  inflating: 106938-09/SUNWsra/install/preinstall
   creating: 106938-09/SUNWsra/reloc/
   creating: 106938-09/SUNWsra/reloc/usr/
   creating: 106938-09/SUNWsra/reloc/usr/ucblib/
  inflating: 106938-09/SUNWsra/reloc/usr/ucblib/llib-lucb.ln
  inflating: 106938-09/README.106938-09

I then installed both patches with patchadd.

# patchadd -M /var/spool/patch 106938-09 107443-24

Checking installed patches...
Verifying sufficient filesystem capacity (dry run method)...
Installing patch packages...

Patch number 106938-09 has been successfully installed.
See /var/sadm/patch/106938-09/log for details

Patch packages installed:

Checking installed patches...
Verifying sufficient filesystem capacity (dry run method)...
Installing patch packages...

Patch number 107443-24 has been successfully installed.
See /var/sadm/patch/107443-24/log for details

Patch packages installed:

When patchadd installs patches, it creates a directory of the form /var/sadm/patch/patch_id, where patch_id is the id for the patch, e.g 107443-24. It copies the README file there and creates a log file for the patch installation in that directory.

# ls /var/sadm/patch/107443-24
README.107443-24  log
# ls /var/sadm/patch/106938-09
README.106938-09  log

Files Included in the 107443-24 Patch:


ReadMe for Patch 107443-24

Files Included in the 106938-09 Patch: 

ReadMe for Patch 106938-09

  1. patchadd(1M) - apply a patch package to a system running the Solaris operating environment
    Sun Microsystems Documentation
  2. Solaris Patch Installation
    Developer Resources for Java Technology

[/os/unix/solaris/5_7] permanent link

Thu, Mar 26, 2009 4:42 pm

SunOS 5.7: nawk Patch

I checked SunSolve for available patches for a Solaris 5.7 system. I installed the SunOS 5.7: nawk Patch on the system. I unzipped the file I downloaded in /var/spool/patch and then used patchadd to install it.
# unzip
   creating: 111113-02/
  inflating: 111113-02/.diPatch
   creating: 111113-02/SUNWesu/
  inflating: 111113-02/SUNWesu/pkgmap
  inflating: 111113-02/SUNWesu/pkginfo
   creating: 111113-02/SUNWesu/install/
  inflating: 111113-02/SUNWesu/install/checkinstall
  inflating: 111113-02/SUNWesu/install/copyright
  inflating: 111113-02/SUNWesu/install/i.none
  inflating: 111113-02/SUNWesu/install/patch_checkinstall
  inflating: 111113-02/SUNWesu/install/patch_postinstall
  inflating: 111113-02/SUNWesu/install/postinstall
  inflating: 111113-02/SUNWesu/install/preinstall
   creating: 111113-02/SUNWesu/reloc/
   creating: 111113-02/SUNWesu/reloc/usr/
   creating: 111113-02/SUNWesu/reloc/usr/bin/
  inflating: 111113-02/SUNWesu/reloc/usr/bin/nawk
  inflating: 111113-02/README.111113-02
# cd 111113-02
# ls
README.111113-02  SUNWesu
# patchadd /var/spool/patch/111113-02

Checking installed patches...
Verifying sufficient filesystem capacity (dry run method)...
Installing patch packages...

Patch number 111113-02 has been successfully installed.
See /var/sadm/patch/111113-02/log for details

Patch packages installed:

Files Included in this Patch:
Problem Description:
4451613 *nawk* record limit corrupts patch checking when installing patch

ReadMe for Patch 111113-02

[/os/unix/solaris/5_7] permanent link

Tue, Mar 24, 2009 9:38 pm

Furl Disappearing

I've been using Furl for maintaining online bookmarks. Furl allows you to maintain your own copy of a webpage online and to categorize and tag webpages you save through Furl. Unfortunately, Furl is disappearing. I've been wondering how long Furl would last, since it didn't show me ads when I visited my Furl archive nor when I bookmarked sites, so I didn't know how Furl was funding its continued operations.

Furl is offering one the capability to transfer one's Furl bookmarks to Diigo, so I signed up for a Diigo account and requested the transfer of my bookmarks. I've also downloaded my archived webpages from Furl.

[/network/web/archiving/furl] permanent link

Tue, Mar 24, 2009 8:41 am

HTML Validation

If you want to check your HTML code to ensure that it is correct, you can use The W3C Markup Validation Service. The service is free and will point out lines in your code with errors. Even though a page may look correct when you view it in your browser, it may still contain errors; the particular browser you are using may compensate for the incorrect code or just happen to present it in the way you expect, but other browsers may not be so forgiving, so not everyone who visits your site may see the page as you see it, if it has errors in the HTML code. Of course, due to to variations in the way browsers interpret the code, the page may not look exactly the same to all visitors even if the code is valid, but you are, hopefully, reducing the chance of problems by correcting the code.

[/network/web/html] permanent link

Mon, Mar 23, 2009 11:37 am

OpenSSL 0.9.8j and OpenSSH 5.2p1 Upgrades on Solaris 2.7 System

When I checked the version of OpenSSL on a Sun SPARC system running Solaris 2.7, I found it was out-of-date.
# ssh -V
OpenSSH_4.7p1, OpenSSL 0.9.8f 11 Oct 2007
# /usr/local/ssl/bin/openssl version
OpenSSL 0.9.8f 11 Oct 2007

Version 0.9.8j is currently available, so I downloaded it from The site provides the following information for OpenSSL 0.98j for the SPARC platform:

openssl-0.9.8j-sol7-sparc-local.gz openssl is an open source toolkit implementing the Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) protocols as well as a full-strength general purpose cryptography library - installs in /usr/local/ssl. Note to users with sun4m machines. The openssl package here was built on a sun4u system and will not work on your machines. The one built for Solaris 2.5 was built on a sun4m machine and has been tested and does work. If you do uname -a and you get sun4m in the result, install the Solaris 2.5 openssl package instead. The configure option used for making openssl was solaris-sparcv9-gcc shared. You may also need to install either gcc-3.4.6 or libgcc-3.4.6 to obtain the library. openssl is often used to make machines more secure. Make sure you know what you are doing. Any security problems are your responsiblitiy. See our Disclaimer.

openssl-0.9.8j.tar.gz Source Code. [Details]

I unzipped the file I downloaded and installed the package.

# gunzip openssl-0.9.8j-sol7-sparc-local.gz
# pkgadd -d ./openssl-0.9.8j-sol7-sparc-local

The following packages are available:
  1  SMCossl     openssl
                 (sparc) 0.9.8j

Select package(s) you wish to process (or 'all' to process
all packages). (default: all) [?,??,q]: 1

Processing package instance <SMCossl> from </tmp/openssl-0.9.8j-sol7-sparc-local>

(sparc) 0.9.8j
The OpenSSL Group
Using </usr/local> as the package base directory.
## Processing package information.
## Processing system information.
   771 package pathnames are already properly installed.
## Verifying disk space requirements.
## Checking for conflicts with packages already installed.
## Checking for setuid/setgid programs.

Installing openssl as <SMCossl>

## Installing part 1 of 1.
<text snipped>
[ verifying class <none> ]

Installation of <SMCossl> was successful.

I then verified the new version was installed.

# /usr/local/ssl/bin/openssl version
OpenSSL 0.9.8j 07 Jan 2009

When I then ran the ssh command, I realized I needed to upgrade ssh as well.

# ssh -V
OpenSSL version mismatch. Built against 908070, you have 9080af listed the current OpenSSH version as 5.2p1.

openssh-5.2p1-sol7-sparc-local.gz Openssh is an open source version of the SSH secure shell system - installs in /usr/local. PAM support is included and requires its own configuration. Openssh also requires the installation of the packages openssl-0.9.8j (do not use the older openssl packages), zlib, gcc-3.4.6 or libgcc-3.4.6, prngd and optionally, but highly recommended, the perl, egd and tcp_wrappers packages. You MUST read the OpenSSH installation page for installation details and helpful web sites. For example, the /usr/local/etc/sshd_config file may need to be edited. openssh is often used to make machines more secure. Make sure you know what you are doing. Any security problems are your responsiblitiy. The main ssh web site is at the [Details] link below. It is also important that you read our Disclaimer.

openssh-5.2p1.tar.gz Source Code. [Details]

So I downloaded and installed the latest OpenSSH package from as well.

# wget -q
# gunzip openssh-5.2p1-sol7-sparc-local.gz
# pkgadd -d ./openssh-5.2p1-sol7-sparc-local

The following packages are available:
  1  SMCosh521     openssh
                   (sparc) 5.2p1

Select package(s) you wish to process (or 'all' to process
all packages). (default: all) [?,??,q]: 1

Processing package instance <SMCosh521> from </tmp/openssh-5.2p1-sol7-sparc-local>

(sparc) 5.2p1
The OpenSSH Group
Using </usr/local> as the package base directory.
## Processing package information.
## Processing system information.
   16 package pathnames are already properly installed.
## Verifying disk space requirements.
## Checking for conflicts with packages already installed.

The following files are already installed on the system and are being
used by another package:
<text snipped>

Do you want to install these conflicting files [y,n,?,q] y
## Checking for setuid/setgid programs.

Installing openssh as <SMCosh521>

## Installing part 1 of 1.
<text snipped>
[ verifying class <none> ]

Installation of <SMCosh521> was successful.

I then rechecked the version of ssh on the system. The version was now up-to-date.

# ssh -V
OpenSSH_5.2p1, OpenSSL 0.9.8j 07 Jan 2009

The OpenSSH installation page stated "It has been noted that on some Solaris systems, scp and sftp may not work unless /usr/local/bin in in your PATH before /usr/bin. The older scp that comes with Solaris may conflict with the new openssl packages." So I tested sftp and scp to ensure they worked by transferring a file to another system.

[/os/unix/solaris] permanent link

Sun, Mar 22, 2009 11:45 am

Viewing the Registy with BartPE

To view registry values for the version of Microsoft Windows on a system's hard drive using a Bart's Preinstalled Environment (BartPE) bootable live windows CD/DVD boot disc take the following steps:
  1. Boot the system from the BartPE disc.
  2. Click on Go and select Command Prompt (CMD) .
  3. At the command prompt, type regedit.
  5. From the File menu, choose Load Hive.

    A series of message boxes may appear that state that the folder cannot be found and that the location is unavailable. Ignore these messages and click OK when they appear.

    The Load Hive dialog box appears.

  6. In the Files of type box, select All Files .
  7. Navigate to the registry location on your target device.

    For example, if Windows is on drive C, navigate to C:\WINDOWS\system32\config.

  8. In the config folder, select the hive you want to edit. The choices are as follows:
    • SAM
    • SYSTEM
    Select a file with one of the above names without an extension (you may also see .sav and .log files in the directory).
  9. Click on OK.
  10. In the Load Hive dialog box type a Key Name. For example, Drive_C.

    To load more hives, repeat the previous steps.

  11. Choose HKEY_LOCAL_MACHINE, and then choose the new registry key(s) you created.
  12. Edit or view the registry keys.
  13. When you have completed your reg key changes, choose HKEY_LOCAL_MACHINE and a key you created within it, e.g. HKEY_LOCAL_MACHINE\Drive_C
  14. Choose the File menu, and then choose Unload Hive When prompted as to whether you are sure you want to unload the current key and all of its subkeys, choose Yes.

[/os/windows/utilities/diagnostic/bartpe] permanent link

Sun, Mar 22, 2009 10:52 am

Determining Device Driver Locations Used During Setup

To determine where Microsoft Windows will look for device driver files during the Windows setup process, you need to examine the registry key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion.

[ More Info ]

[/os/windows/registry/devicepath] permanent link

Sat, Mar 21, 2009 7:21 pm

Belkin F5D7230-4 DHCP Range Error

I have a Belkin wireless router, model F5D7230-4 6000 router with firmware version F5D7230-4_US_8.01.07. I found that oftentimes I couldn't ping the router from a system. I finally realized the source of the problem today. When I clicked on LAN Settings, I saw the router had an IP address of with a subnet mask of, yet the system from which I couldn't ping any other system connected to the router and which had no network access, had an IP address of assigned via DHCP from the router. With a subnet mask of, the host address range would be through, since the router is using and is the broadcast address. Yet when I attempted to change the IP address range the router used for its DHCP assignments, it kept resetting the IP pool ending address to after I set it to I would set the starting address to and the ending address at then click on Apply Changes. The router would reboot and I would find it had reset the last address to be assigned by DHCP to again. I tried setting the ending addres to 5 with the same results.

So I changed the subnet mask to, which provides an address range of 16 addresses (14 usable for hosts, since is the subnet id and is then the broadcast address). I then tried setting the ending IP address for the DHCP server built into the router to 7. When the router rebooted that address was back at 12 again. This time I just left it, since at least this time all of the addresses the built-in DHCP server would assign will be within the subnet range.

[/hardware/network/switch/belkin] permanent link

Sat, Mar 21, 2009 2:27 pm

Changing the IP address of a Dell PowerConnect 3024 Switch

You can change the IP address of a Dell PowerConnect 3024 switch by taking the steps below.
  1. Connect to the system via telnet. From the initial welcome screen you must enter a password to proceed, if password protection is enabled. If password protection is disabled, the main menu is displayed. By default, password protection is disabled. If password protection is enabled, the default password is switch.
                W     W
                W  W  W  EEEEEE  L        CCCC    OOOO   M    M  EEEEEE
                W  W  W  E       L       C    C  O    O  MM  MM  E
                W  W  W  EEEEE   L       C       O    O  M MM M  EEEEE
                W  W  W  E       L       C       O    O  M    M  E
                W  W  W  E       L       C    C  O    O  M    M  E
                 WW WW   EEEEEE  LLLLLL   CCCC    OOOO   M    M  EEEEEE
    Enter password:
  2. From the main menu, select System Manager.
                                   PowerConnect 3024
                                       Main Menu
                                 a. System Manager
                                 b. Port Manager
                                 c. Address Manager
                                 d. Spanning Tree
                                 e. VLAN and CoS Setup
                                 f. Port Trunking
                                 g. Port Mirroring
                                 h. SNMP Management
                                 i. Multimedia Support
                                 j. Statistics
                                 k. Save Configuration
    Hit <Enter> to configure General, IP, Password, NVRAM, Firmware, or Reset
                                                    <Ctrl-L> Refresh  <Ctrl-W> Save
  3. Then select IP Settings.
                                   PowerConnect 3024
                                     System Manager
                                   a. General Info
                                   b. IP Settings
                                   c. Security Admin
                                   d. Firmware Update
                                   e. Reset
    Hit <Enter> to configure the IP Address, Gateway Address, or Network Mask
    <ESC> Back                                      <Ctrl-L> Refresh  <Ctrl-W> Save
  4. Change the IP address, subnet mask, and gateway address to the appropriate values for your LAN.
                                   PowerConnect 3024
                               System Manager/IP Settings
                                 IP Address:  
                               Network Mask:
                            Default Gateway:
    Enter this switch's IP address
    <ESC> Back                                      <Ctrl-L> Refresh  <Ctrl-W> Save

    Note: if you hit enter the values are changed, but not saved, so you can revert to the previous values by powering off the switch and powering it back on. If you are changing the address, such that the new address is no longer in the same subnet as the existing address and the gateway IP address will also change, rather than just changing from an address in the same subnet to another, I would suggest changing the gateway address first, because you can't change the IP address and then use the cursor keys to move to other fields. When you type in the new IP address, you can hit Escape to undo the change or Enter to accept it. If the change would place the switch in a different subnet than the system from which you have connected to the switch by telnet, you will be immediately disconnected when you hit Enter.

    But, if you change the gateway address first and hit Enter, the cursor will automatically jump to the IP address field, where you can then change the IP address. You will still be disconnected as soon as the IP address is changed to one that isn't in the same subnet as the connecting system, but then you've got both values changed.

  5. If you are just changing the IP to one in the same subnet, hit Ctrl-W to save the new configuration. If you've been disconnected, because you changed the IP address to one in a different subnet, reconfigure the connecting system, log back into the PowerConnect 3024 and save the configuration.

[/hardware/network/switch/dell] permanent link

Sun, Mar 15, 2009 11:33 pm

Steps for Creating Your Own Drupal Smiley Pak

I wanted to create a Calvin and Hobbes smiley pack for Drupal (I'm using Drupal 6), since Calvin and Hobbes is my favorite comic. Within the /modules/smileys/packs/ directory beneath the directory where Drupal was installed, I created a Calvin directory. I put the following GIF images in that directory:

# ls
angry.gif  goofy.gif    not-again.gif  oops.gif       sour.gif   yell.gif
geez.gif   nah-nah.gif  omg.gif        pick-nose.gif  tired.gif  yuck.gif

But Drupal won't be able to use those emoticons unless you create a .pak file, e.g. Calvin.pak and place it in the same directory.

To get an idea of what should go into that file, you can take a look at the Example.pak file in the /modules/smileys/packs/Example directory. That file contains the following lines:

barf.gif=+:Barf!=+::sick: :barf:
cool.png=+:Cool=+:8) 8-) :cool:
puzzled.png=+:Puzzled=+::? :-? :puzzled:
shock.png=+:Shocked=+::O :-O :shocked:
tongue.png=+:Sticking out tongue=+::P :-P :tongue:
evil.png=+:Evil=+:}:) }:-) :evil:
lol.png=+:Laughing out loud=+::D :-D :lol:
sad.png=+:Sad=+::( :-( :sad:
wink.png=+:Eye=+:;) ;-) :wink:
smile.png=+:Smiling=+::) :-) :smile:

If I look at the files in the Example directory, I see the following files.

barf.gif          cool.png  Example.pak  puzzled.png  shock.png   wink.png
blank-blue.png    die.gif   jawdrop.gif  README.txt   smile.png
blank-yellow.png  evil.png  lol.png      sad.png      tongue.png

So I can see that there is a line in Example.pak for every graphics file, in this case .gif and .png files, in the Example directory. At the end of each line is a descriptive code in the form of :emoticon:, i.e. a colon followed by a name for the emoticon followed by another colon, e.g. :tongue:.

For the "sticking out tongue" emoticon, I see the following line:

tongue.png=+:Sticking out tongue=+::P :-P :tongue:

I could just click on the emoticon to insert it in a posting, if I had enabled the use of the "smiley select box" (see Smileys Module for Drupal for instructions on how to enable that select box). Or, by using the codes shown on the entry for tongue.png in the Example.pak file, if I edited a forum posting and typed :tongue: and then previewed or saved the posting, where I had inserted :tongue: the emoticon Tongue Sticking Out 
Emoticon with a tongue sticking out would be displayed. I could also use :-P or just :P to insert the emoticon. I.e., I could use any of the codes that appear after the +:Sticking out tongue=+: part of the entry for tongue.png.

If I look at the Jawdropping entry, I see the following:


In that case, there is only one text code to insert the jawdropping smiley, i.e. :jawdrop:.

So now I think I see how to set up the entries in a Calvin.pak file. These are the entries I placed in that file:

angry.gif=+:Calvin angry=+::calvin-angry:
geez.gif=+:Calvin Geez=+::calvin-geez:
goofy.gif=+:Calvin Goofy=+::calvin-goofy:
nah-nah.gif=+:Calvin Nah-nah=+::calvin-nah-nah:
not-again.gif=+:Calvin Not-again=+::calvin-not-again:
omg.gif=+:Calvin OMG=+::calvin-omg:
oops.gif=+:Calvin Oops=+::calvin-oops:
pick-nose.gif=+:Calvin Pick-nose::calvin-pick-nose:
sour.gif=+:Calvin Sour=+::calvin-sour:
tired.gif=+:Calvin Tired=+::calvin-tired:
yell.gif=+:Calvin Yell=+::calvin-yell:
yuck.gif=+:Calvin Yuck=+::calvin-yuck:

The format I used for each entry is as follows:


I.e. I put the name of the image as the first part of the line. Next comes a description for it beginning with an equal sign, then a plus sign and then a colon. Next comes the descriptive text for the image, then an equal sign, followed by a plus sign and then a colon. After that I put the code that can be typed in a posting that will be translated to the image when the posting is previewed or saved. E.g. :calvin-yell: will produce Calvin Yelling Emoticon, the emoticon for a yelling Calvin.

Once I have the images in place and the .pak file created, I can log into Drupal as an administrator, click on Administer, Site configuration, Smileys, and then click on Import at the top of the page. I now see Calvin listed as a smiley pack that can be installed (it won't show up until you have created the .pak file for it). I can click on Install to enable use of the smileys in that pack.

If I click on List at the top of the page, I will see the Calvin smileys.

Calvin Smileys Imported

I can see the yelling Calvin emoticon on the left. I see :calvin_yell: listed as an acronym and the description is "Calvin Yell" with the Category listed as "Calvin". If you don't see pictures with any of the emoticons, make sure you haven't misspelled the file name. If you have misspelled one of the file names, correct the misspelling; you may have to click on Import, select Uninstall for the smiley pack and then click on Install to reinstall it

Download Calvin Smiley Pack for Drupal
View Calvin Smiley Pack emoticons


  1. Adding Smiley Packs to Drupal
    Date: March 15, 2009
    MoonPoint Support
  2. Smileys Module for Drupal
    Date: March 15, 2009
    MoonPoint Support
  3. Smileys
    Drupal Modules - Search, Rate, and Review Drupal Modules

[/network/web/cms/drupal] permanent link

Sun, Mar 15, 2009 9:26 pm

Adding Smiley Packs to Drupal

If you wish to add additional smileys, aka emoticons, to Drupal, you can do so in a fairly straightforward way (note: these steps have been tested on Drupal version 6, so may not work on other versions).

First you need to have downloaded, installed, and enabled the smileys module. If you haven't already done so, you can use the instructions at Smileys Module for Drupal to do so.

Once you've enabled smiley support, download the smiley pack that you wish to use. In this example, I'm going to use the animatedFUN pack available from Smiley Packs ( phpBB pak packages) for Drupal.

I moved the zip file I downloaded in this case to the modules/smileys/packs directory beneath the directory where Drupal is installed on the website. I then unzipped it. This particular zip file created a __MACOSX subdirectory as well, which isn't needed, so I deleted it.

# unzip
# rm -f --recursive __MACOSX/animatedFUN/
# rmdir __MACOSX
# ls animatedFUN/
animatedFUN.pak       give.gif         iloveyou.gif          respect.gif
attention.gif         happy.gif        Iloveyou-marquee.gif  rose.gif
cat_angry.gif         hellowoman.gif   nihao.gif             shotgun.gif
cordialgreetings.gif  hugsnkisses.gif  no.gif                threat.gif
dog_exiting.gif       iamcrying.gif    read.gif

Once the smiley pack is extracted to a modules/smileys/packs directory, you can take the following steps:

  1. Click on Administer
  2. Click on Site configuration.
  3. Click on Smileys.
  4. Click on Import, which appears near the top of the page.

    Import Smiley Pack into Drupal

  5. Locate the Smiley Pack you wish to import and then click on Install. Under the Operations column, the status of the pack should change from "Install" to "Uninstall", indicating the pack has been successfully installed.

If you then click on Administer, Site configuration, and Smileys, you should see the new smiley pack smileys displayed.

Import Smiley Pack into Drupal

If you decide that you don't really like the smiley pack you've installed and want to remove it, take the following steps:

  1. Click on Administer
  2. Click on Site configuration.
  3. Click on Smileys.
  4. Click on Import, which appears near the top of the page.
  5. Click on Uninstall next to the smiley pack you wish to uninstall. Its status should change to "Install".


  1. Smileys Module for Drupal
    MoonPoint Support
  2. Smiley Packs (phpBB pak packages) for Drupal
    By: Gurpartap Singh | jack of everything, master of none

[/network/web/cms/drupal] permanent link

Sun, Mar 15, 2009 8:52 pm

Using Avatars in a Drupal Forum

To allow the use of avatars, which Drupal refers to as "user pictures" in a Drupal forum and elsewhere, take these steps.

[/network/web/cms/drupal] permanent link

Sun, Mar 15, 2009 5:12 pm

Smileys Module for Drupal

To add smileys, aka emoticons to Drupal, I downloaded a smileys module from the Drupal website at Smileys. The module poster provides the following information for it:

A filter that substitutes ASCII smileys with images. Also known as Emoticons, Smilies, Icons.

The package includes phpBB smileys pack import/export module. I'm maintaining a page for Smiley packs at: Create an issue if you want to host your own pack; or you may comment with the link over there.

Since I had Drupal version 6 on the webserver where I wanted to use them, I downloaded the version 6 filter. I unzipped and untarred the contents of the file I downloaded in the /tmp directory on the system.

# gunzip smileys-6.x-1.0-alpha5.tar.gz
# tar -xvf smileys-6.x-1.0-alpha5.tar
At the tar -xvf step a smileys directory is created. I then copied that directory to the modules directory beneath the directory where Drupal was installed.
# cp --recursive /tmp/smileys .

I then logged into Drupal as the administrator for the site, selected Administer, Site Building, then Modules. Under Core - required, I now saw Smileys. I clicked on Smileys, then enabled Smileys and Smileys Import. I then clicked on Save Configuration.

X Smileys 6.x-1.0-alpha5 Replaces smileys inside posts with images.
Required by: Smileys Import enabled)
X Smileys
6.x-1.0-alpha5 Import Smiley packages.
Depends on: Smileys enabled)

I then clicked on Administer, Site Configuration, and Smileys. I could then see 40 emoticons. I clicked on Settings at the top of the page. I enabled smileys for Nodes and Comments and on the following node types:

Blog entry
Book page
Forum topic

I left "expand select-box fieldset by default", "enable smileys dialog window", and "enable titles in dialog window" checked and clicked on Save Configuration.

I then went to Administer, Site configurationand Input formats. The default format ws "Filtered HTML". I clicked on Configure for it. Under the "Filters" section, I clicked on Smileys to enable the filter to replace smileys inside posts with images. I then clicked on Save configuration.

At that point someone making a posting to a forum would be able to type ;) and have the wink.png image Wink Emoticon appear in the posting in place of the ;) when the posting is previewed or saved.

But it would be nice to give users the option of viewing the available emoticons and selecting the one they want just by clicking on it. To make the list of available emoticons visible, click on Administer, select User management, then Permissions. Then in the Smileys section of the permissions webpage, check "use smiley select box" for "anonymous user" and/or "authenticated user". Click on Save Permissions to save the change.

After taking the steps above, when I then edited a forum entry that I had already posted, I was able to pick a smiley for the posting by clicking on it. I saw :) appear in the posting when I clicked on the smiley. But when I clicked on Preview, I saw the smiley image appear in the posting.

Download Smiley Module

Drupal - modules for Drupal versions 5 and 6
MoonPoint - 6.x-1.0-alpha5 (January 5, 2009)

[/network/web/cms/drupal] permanent link

Sun, Mar 15, 2009 1:58 pm

Drupal 6 on Linux

I installed Drupal 6 on a Linux server. I encountered some problems during the setup process, so I've documented my steps here, so that I can more easily accomplish the setup process for future installations and should anyone else encounter similar problems.

[/network/web/cms/drupal] permanent link

Sun, Mar 15, 2009 11:24 am

List of Number-One Hits

If you want to know what song was number one in the U.S. on a particular day, such as the day you were born, check List of number-one hits (United States) on Wikipedia.

Note: for dates from 1940 up through 1957, you can view a list of number-one songs in the United States during the year according to Billboard magazine. Prior to the creation of the Hot 100, Billboard published multiple singles charts each week. In 1957, the following four charts were produced:

NOTE: Billboard changed its issue dates from a Saturday to a Monday schedule on April 29, thus causing a one-week inconsistency.

[/music] permanent link

Sat, Mar 14, 2009 10:51 am


Sometimes you may have an old piece of equipment that has no information on it identifying the manufacturer. If it has an FCC ID on it, you can query the FCC's database to obtain information on the manufacturer.

For instance I have an old hub with a model number of EZHub9. I couldn't find any information on the manufacturer by doing a Google or Live Search on the model number. There was an FCC ID, KFYPEH9, listed on the bottom of the device. I went to the FCC Equipment Authorization Search page and put the first 3 characters, KFY, of the ID in the Grantee Code field and the remaining characters PEH9 in the product code page. Nothing was found when I performed the search on that FCC ID, but when I searched just on the grantee code, KFY, I found the company was Runtop, Inc., a Taiwanese company. I also found a product listed for the company with a similar model number, KFYPEH5.

Applicant NameAddressCityState CountryZipFCC IDApplication Purpose Grant Date
Runtop Inc1, Ln. 21, Hsin Hua Rd. Kueishan Industry Park Taoyuan CityN/ATaiwanN/AKFYPEH5 Original Equipment10/12/1995

[/hardware/identification] permanent link

Tue, Mar 10, 2009 10:52 pm

Adding PuTTY and Firefox Plugins to BartPE

I've started writing up steps to add plugins I find useful to a Bart's Preinstalled Environment (BartPE) bootable live windows CD/DVD.


[/os/windows/utilities/diagnostic/bartpe/plugins] permanent link

Tue, Mar 10, 2009 10:42 pm

Adding a MIME Type for Cab Files to Apache

I placed a .cab file on the website for downloading, but I found that, when I clicked on it, I got a screen full of garbled text, rather than being presented with the option to download it. I fixed the problem by adding another MIME type to the Apache webserver configuration file, httpd.conf file. I edited /etc/httpd/conf/httpd.conf and added an AddType line for the .acs file extension.
# AddType allows you to add to or override the MIME configuration
# file mime.types for specific file types.
#AddType application/x-tar .tgz
AddType application/octet-stream .cab

I then restarted the Apache webserver with apachectl restart. When I visited the URL again, I was prompted as to whether I wanted to download the file.


  1. Adding Another MIME Type to Apache
    MoonPoint Support
  2. Apache Module mod_mime
    The Apache Server Project
  3. Help: Unable to serve XBAP from Apache?
    Posted: August 29, 2006
    Vista Forums

[/network/web/server/apache] permanent link

Mon, Mar 09, 2009 9:19 pm

MapQuest Maps Won't Display in Netscape 7.2

A user complained that he could no longer obtain directions using MapQuest. He uses Netscape 7.2 as his default browser. When I checked the Netscape browser on his system, I found that instead of a local map displaying at the main MapQuest page, there was just a large empty box displayed. And clicking on "directions" produced a page with a large blank area and no discernible way to search for directions. I checked the configuration of Netscape, but found nothing amiss. The browser had a recent version of Flash installed, version 9. I verified it was configured for JavaScript support. Since I had Netscape 7.2 installed on one of my laptops, I tried accessing the MapQuest site from that system. I experienced the same problem.

When I checked MapQuest's Configuring Your Browser for MapQuest page, I didn't see configuration information listed for Netscape nor was Netscape listed on its Browsers and operating system MapQuest supports page.

Since I couldn't find a way to use MapQuest with Netscape, but someone else who used the system had already installed Firefox 3.0.6, I tried viewing the site with Firefox. I didn't have any problems using the site with that browser, so I put a shortcut on his desktop to take him to the site using Firefox, since that seemed the option to which he could most readily adjust, since he uses Netscape for his email as well as web browsing.

[/network/web/browser/netscape] permanent link

Sun, Mar 08, 2009 10:30 pm

Debugging a Minidump Dump File for a Stop 0xC2 Error

While trying to reinstall Windows on a Dell Dimension 2400 PC, I kept getting a "BAD_POOL_CALLER" BSOD with a "STOP: 0x000000C2" error. When I checked the minidump crash dump files created when the BSOD's occurred with Microsoft's WinDbg utility, it appeared they were linked to a modem driver file.

[ More Info ]

[/os/windows/debugging] permanent link

Sun, Mar 08, 2009 1:49 pm

Installing and Configuring MySQL on a Linux System

MySQL is free Database Management System (DBMS) software that runs on a variety of platforms, including Microsoft Windows, Linux, and Unix. To install and configure the software on a Linux system, so that it starts when the system boots follow these instructions. It is important to set a root password after you've started the MySQL daemon, so be sure to do so.

Once you have the software installed and configured, you can set up a new database using the instructions in Creating a MySQL Database.

[/software/database/mysql] permanent link

Fri, Mar 06, 2009 8:20 pm

Centering a Div

One of the many ways in which Firefox, Netscape, Internet Explorer, and other browsers interpret the same HTML code differently is when margin: auto is used to center a block on a webpage, such as a div section. Adding margin: auto to the style definition for a block will result in the block being centered when viewed in Firefox or Netscape, but it isn't sufficient to result in the display of a centered block in Internet Explorer. To have the block centered in Internet Explorer, you have to also add text-align: center to the style definition of the body tag.

[ More Info ]

[/network/web/html] permanent link

Fri, Mar 06, 2009 5:57 pm

Group Membership Under Unix/Linux

To see the groups to which an account belongs, you can use the command groups
# groups jsmith
staff code210

To place an account in an additional group, you can use the command usermod --groups newgroup account.

# usermod jsmith programmers


  1. Managing Group Access on Linux and Unix

[/os/unix/commands] permanent link

Mon, Mar 02, 2009 7:04 pm

Slipstreaming XP SP 3 with nLite

If you need to reinstall Windows XP on a system, it is very time consuming to have to install the operating system and then, when that process is completed, install the latest service pack and other updates for the operating system. The process is certainly much faster, if the XP installation CD you have on hand already incorporates the latest service pack. But chances are that installation CD is for the original version of XP before any service pack was released, or incoporates a prior service pack version, e.g. the installation CD may be for Windows XP Professional Service Pack 2, while Service Pack 3 is the current service pack version.

There is a way to create a new installation CD that incorporates the latest service pack into the version that came on your installation CD. The process is called "slipstreaming". There are various tools to help you create a slipstream disc; nLite, is one such tool. For instructions on how to use nLite for such a purpose, see Slipstreaming XP SP 3 with nLite.

[/os/windows/xp/slipstream] permanent link

Sun, Mar 01, 2009 9:37 pm

SoundManager 2

While looking for a method to associate sounds with links on a webpage for someone who wanted to have visitors to her website hear sounds of pages turning when they clicked on left and right arrows on the webpages, I came across SoundManager 2, which uses JavaScript and Flash to provide a method for playing sounds when someone clicks on an image, moves a mouse over it etc. The software was developed by Scott Schiller and is free.

[/network/web/browser/javascript] permanent link

Sat, Feb 28, 2009 3:21 pm

IE HistoryView

If you need to view information regarding the Internet Explorer history of browsed webpages, IE HistoryView allows you to access that information for not only the profile under which you are logged into a system, but for other profiles as well.

[/os/windows/software/network/web] permanent link

Thu, Feb 26, 2009 8:00 pm

Google Street View Privacy Concerns

An article by Brian Cooper titled "Google Street View Continues to Raise Privacy Concerns" raises privacy issues for Google Street View. The article mentions a lawsuit brought by a Pennsylvania couple whose home was included among Google Street View images. The Street View images included close-ups of the couple's home, swimming pool, and outbuildings. The couple sought compensatory and punitive damages, claiming that Google had invaded their privacy, acted negligently, was unjustly enriched, and trespassed upon their Pittsburgh property, which includes a private road leading to their house. However, in a February 18, 2009 article Judge Dismisses Google Street View Case, Juan Carlos Perez of IDG News Service, states that Judge Amy Reynolds Hay from the U.S. District Court for the Western District of Pennsylvania, granted Google's request for dismissing the lawsuit because "the plaintiffs have failed to state a claim under any count."

As one of the commenters on the article by Mr. Perez noted, many people who see Google Street View images as a significant privacy issue may ignore far more serious privacy issues, such as warrantless wiretapping.

You can see where Street View is available in the U.S. at

[/network/web/search] permanent link

Tue, Feb 24, 2009 8:51 pm

HP tc4400 Keeps Reverting to 640 x 480 16-Color Display

I had problems with the dsiplay of an HP tc4400 laptop, which was running Windows XP Professional Service Pack 3, after updating the video driver. When I right-clicked on the desktop and selected Properties, then Settings, I found the screen resolution was 640x480. The color quality was "Lowest (4 bit)", i.e. only 16 colors. I couldn't increase either setting. I clicked on the Advanced button and then the Adapter tab. When I clicked on List All Modes, the only options were those shown below:

List of valid modes

640 by 480, 16 Colors, Default Refresh
800 by 600, 16 Colors, Default Refresh

I changed the setting to 800x600 to make it a little better. I didn't get any error messages, but the resolution remained at 800 x 600.

Under the Display adapters setting of the Device Manager, I found two adapters listed:

Mobile Intel(R) 945 Express Chipset Family
Mobile Intel(R) 945 Express Chipset Family

The names were exactly the same, as were the drivers:

EntryDriver ProviderDriver Date Diver Version
1Intel Corporation8/24/20076.14.10.4864
2Intel Corporation8/24/20076.14.10.4864

I right-clicked on the second one and chose Uninstall. Whem prompted to restart the system, I did so.

When the system rebooted, I saw the following error message:

hkcmd.exe - Unable to Locate Component
This application has failed to start because hccutils.DLL was not found. Re-installing the application may fix this problem.



The system notified me it had found a new video adapter and suggested I reboot again, which I did.

The resolution was still at 640 x 480, but when I checked the video adapters listed in the Device Manager, I saw the following:

Mobile Intel(R) 945GM Express Chipset Family
Mobile Intel(R) 945GM Express Chipset Family

Though the names and drivers differed from what I had seen previously, the names of the two entries were exactly the same, as were the drivers for them:

EntryDriver ProviderDriver Date Diver Version
1Intel Corporation3/23/20066.14.10.4543
2Intel Corporation3/23/20066.14.10.4543

I right-clicked on the bottom entry and chose "uninstall". I again had to restart the computer. But, when I logged in again, I found both entries listed in the Device Manager again. I removed both of them by right-clicking on them and choosing "uninstall". I then rebooted again. This time I had a 640 x 480 resultion again, but the color quality was "Highest (32 bit)". I was able to change the resolution to 800 x 600 by right-clicking on the desktop and choosing Settings.

Shortly afterwards I saw the "Found New Hardware" balloon pop up with "Mobile Intel(R) 945GM Express Chipset Family" listed as the new hardware found. I saw the message "Windows has finished installing new devices. The software that supports your device requires that you restart your computer. You must restart your computer before the new settings will take effect. Do you want to restart your compute now?" I chose "yes."

When the system rebooted, it was back to the 640 x 480 resolution. When I checked the Device Manager, I saw the "Mobile Intel(R) 945GM Express Chipset Family" listed twice again with the March 23, 2006 driver listed for both again. I again uninstalled both adapters from within the Device Manager and then rebooted. I had 32-bit color and 800 x 600 resolution when I logged in. When I right-clicked on the desktop, chose Properties, Settings, Advanced, then Adapter, I didn't see an adapter listed under Adapter Type. Clicking on Properties showed VGASave under the General tab. CLicking on the Driver tab showed the following:

Service name: VGASave
Display name: VGA Display Controller

But again I was notified of a "System Settings CHange" with the message that "Windows has finished installing new devices..." I chose not to restart the system immediately. I checked what the Device Manager was showing. It showed the same duplicated "Mobile Intel(R) 945GM Express Chipset Family" entries as before with both having the Intel March 23, 2006 driver associated with them. But the top entry had an exclamation mark in a yellow circle next to it. I right-clicked on that one and chose "disable" rather than "uninstall" this time. I then rebooted.

After rebooting, I had the 800 x 600 resolution and 32-bit color. The Device Manager still showed the duplicated Display Adapters with the same March 23, 2006 Intel driver for both, but there was a red "X" next to the top entry. Right-clicking on the Desktop and choosing Properties, Settings, Advanced, Adapter showed nothing listed under Adapter Type and the following for Adapter Information

Chip Type:<unavailable>
DAC Type:<unavailable>
Memory Size:<unavailable>
Adapter String:<unavailable>
Bios Information:<unavailable>

I changed the resolution to 1024 x 768 and rebooted again, just to make sure the settings would remain and the problem wouldn't recur. The problem did not recur.


  1. The Device Manager in Windows 98/Me/2000/XP/Vista
    PC Buyer Beware! - Personal Computers: How Best to Fix PC/Computer Problems, Buy, Build, Upgrade, Recover, Restore, Repair and Protect PCs

[/hardware/pc/video] permanent link

Sun, Feb 22, 2009 7:11 pm


After scanning a Windows XP Professional Service Pack 2 system, MoonDreaming, with Spybot Search & Destroy 1.6.2, I installed Multi Virus Cleaner 2008 v8.6.1 on the system and scanned the system with it. It reported that a file, 42odhr0b.exe, which it found in a user's Local Settings\Temp folder was infected with the virus Trojan.Dropper.Small-8.

I submitted the file, which has an MD5 hash of 93d2546e58042ebe7f5ae26ec0ec50b3, to VirusTotal, a free service "that analyzes suspicious files and facilitates the quick detection of viruses, worms, trojans, and all kinds of malware detected by antivirus engines." It reported the file was first received on 10.07.2006 22:08:05 (CET). I had it reanalyze the file. VirusTotal reported that 91.18%, i.e. 31 of 34, of the antimalware programs with which it scanned the file identified the file as being malware (see VirusTotal report)

I also submitted the file to, "a FREE on-line scan service, which checks uploaded files for malware", using multiple antivirus engines. On uploading files you want to be checked, you can see the result of scanning and how dangerous and harmful/harmless for your computer those files are. VirSCAN reported that 76%, i.e. 28 of 37, of the antimalware programs it used reported the file as being malware (see VirSCAN report).

I also submitted the file to Jotti's Online Malware Scan, another free malware scanning site, for analysis. On that site, 18 of the 19 antivirus programs it used detected the file as malware (see Jotti report).

ThreatExpert, "an advanced automated threat analysis system designed to analyze and report the behavior of computer viruses, worms, trojans, adware, spyware, and other security-related risks in a fully automated mode" identified the file as being associated with Spyware.FavoriteMan (see ThreatExpert report).

ThreatExpert provided the following information on Spyware.FavoriteMan:

FavoriteMan is a Browser Helper Object, which connects to its controlling servers to download and install other programs and add entries to your Internet Explorer favorites menu or computer desktop. This program has been known to download at least 28 different adware or spyware programs. Some controlling servers are,, and

ThreatExpert indicated that the file creates the following files on the system:


I had found ATPartners.dll on the system on February 27 of 2005 when I had scanned the system with other antimalware software. I had removed ATPartners.dll at that time. Apparently 42odhr0b.exe was left in the user's local settings\temp folder from that time. Checking my notes for information on FavoriteMan, I found I had encountered it on other systems, e.g. a Windows 98 system on March 28, 2004 (see Windows 98 System Hanging After Login) and a Windows 98 Second Edition system on April 25 of 2005 (see Calsdr.Dll Remnant).

Download a zipped copy of 42odhr0b.exe for analysis or testing antimalware software (use zoo as userid and malware as password). Note: You do so at your own risk; this file can infect a system, so only run the program on a test system.

[/security/malware] permanent link

Sun, Feb 22, 2009 6:57 pm


When I scanned a Windows XP Professional Service Pack 2 system, MoonDreaming, with Spybot Search & Destroy 1.6.2, it found 4 entries for Excite, but those were only tracking cookies. It also found 1 entry for Win32.Agent.cyt. It found a file 23010852235.exe, which has an MD5 hash of 9ec78aac59b04643bfb43415c6fa2909, in a user's Local Settings\Temp directory.

Spybot detected Win32.Agent.cyt entry

I uploaded the file to VirusTotal, a free online virus and malware scan website for analysis. Twenty-four of the 39 malware scan programs with which it scanned the file reported it contained malware (see VirusTotal report).

I also uploaded the file to, another multi-engine virus scanner site. It reported "The file are 23010852235.exe uploaded by other users and scanned successfully at 2008/01/18 20:48:04". I had it rescan the file. It reported that 49%, i.e. 18 of 37, of the malware detection programs that it used, identified the file as containing malware (see VirSCAN report).

File Name: 	23010852235.exe
File Size: 	3072
File Type: 	PE32 executable for MS Windows (GUI) Intel 80386 32-bit
MD5: 	        9ec78aac59b04643bfb43415c6fa2909
SHA1: 	        546e2d9c76fad865ac56b89fa54a864d564f1c16
Compressed: 	NA

Prevx, a security company that makes software that "identifies malicious code by its 'behavior'" lists SYSNSAD.EXE as being an alias for a file with this MD5 hash (see Prevx report).

The Prevx report states the following:

A file with the name SYSNSAD.EXE have been seen to have the following Vendor, Product and Version Information in the file header:

Microsoft Corporation; File Compare Utility; 5.1.2600.0
Microsoft Corporation; File Compare Utility; 5.1.2600.0 (xpclient.010817-1148)

When I examined the file with Filealyzer , I saw the following version information:

File version5.1.2600.0 (xpclient.010817-1148)
Company nameMicrosoft Corporation
Internal nameComp
Legal copyright ©Microsoft Corporation. All rights reserved.
Legal trademarks
Original filenameComp.Exe
Product nameMicrosoft® Windows® Operating System
Product version5.1.2600.0
File descriptionFile Compare Utility

Filealyzer version information for 23010852235.exe

The version information was likely inserted by the malware author to try to disguise the file as an innocuous Microsoft-provided operating system file.

I had Spybot fix the problem, i.e. delete the file.

Download 23010852235.exe for analysis or testing antimalware software (use zoo as userid and malware as password). Note: You do so at your own risk; this file can infect a system, so only run the program on a test system.

[/security/malware] permanent link

Sun, Feb 22, 2009 6:12 pm

Remove Hotfix Backups and $NTServicePackUninstall on MoonDreaming

I installed Doug Knox's Remove Hotfix Backups on MoonDreaming, a Windows XP Professional Service Pack 2 system. Windows Explorer reported "Free space: 46,294,945 bytes 43.1 GB" and checking for $NT*KB* directories showed the following:
C:\TEMP>dir /ah \Windows\$NT*KB*
 Volume in drive C is Sys-WinXP
 Volume Serial Number is B0E3-65A7

 Directory of C:\Windows

01/21/2005  02:34 PM    <DIR>          $NtUninstallKB828741$
01/21/2005  02:38 PM    <DIR>          $NtUninstallKB833987$
01/21/2005  07:37 PM    <DIR>          $NtUninstallKB834707$
01/21/2005  02:36 PM    <DIR>          $NtUninstallKB835732$
01/21/2005  02:36 PM    <DIR>          $NtUninstallKB840987$
01/21/2005  02:36 PM    <DIR>          $NtUninstallKB841356$
01/21/2005  02:37 PM    <DIR>          $NtUninstallKB841533$
01/21/2005  01:21 PM    <DIR>          $NtUninstallKB842773$
02/12/2005  07:59 PM    <DIR>          $NtUninstallKB867282$
01/21/2005  02:38 PM    <DIR>          $NtUninstallKB871250$
02/12/2005  07:59 PM    <DIR>          $NtUninstallKB873333$
01/21/2005  05:13 PM    <DIR>          $NtUninstallKB873339$
01/21/2005  02:37 PM    <DIR>          $NtUninstallKB873339_0$
01/21/2005  02:37 PM    <DIR>          $NtUninstallKB873376$
02/12/2005  07:59 PM    <DIR>          $NtUninstallKB885250$
01/21/2005  05:13 PM    <DIR>          $NtUninstallKB885835$
01/21/2005  02:37 PM    <DIR>          $NtUninstallKB885835_0$
01/21/2005  05:13 PM    <DIR>          $NtUninstallKB885836$
01/21/2005  02:38 PM    <DIR>          $NtUninstallKB885836_0$
01/21/2005  07:37 PM    <DIR>          $NtUninstallKB886185$
02/12/2005  07:59 PM    <DIR>          $NtUninstallKB887472$
02/22/2005  07:22 PM    <DIR>          $NtUninstallKB887742$
01/21/2005  07:37 PM    <DIR>          $NtUninstallKB887797$
02/12/2005  07:59 PM    <DIR>          $NtUninstallKB888113$
02/12/2005  07:58 PM    <DIR>          $NtUninstallKB888302$
01/21/2005  02:37 PM    <DIR>          $NtUninstallKB889293-IE6SP1-20041111.2356
01/07/2006  11:46 AM    <DIR>          $NtUninstallKB890046$
09/02/2005  03:39 PM    <DIR>          $NtUninstallKB890046_0$
02/12/2005  07:58 PM    <DIR>          $NtUninstallKB890047$
01/21/2005  05:13 PM    <DIR>          $NtUninstallKB890175$
01/21/2005  02:38 PM    <DIR>          $NtUninstallKB890175_0$
05/14/2005  07:07 PM    <DIR>          $NtUninstallKB890859$
05/14/2005  07:08 PM    <DIR>          $NtUninstallKB890923$
01/21/2005  02:38 PM    <DIR>          $NtUninstallKB891711$
02/12/2005  07:59 PM    <DIR>          $NtUninstallKB891781$
05/14/2005  07:08 PM    <DIR>          $NtUninstallKB893066$
05/14/2005  07:08 PM    <DIR>          $NtUninstallKB893086$
09/02/2005  03:40 PM    <DIR>          $NtUninstallKB893756$
09/02/2005  03:39 PM    <DIR>          $NtUninstallKB894391$
01/07/2006  11:46 AM    <DIR>          $NtUninstallKB896344$
09/02/2005  03:39 PM    <DIR>          $NtUninstallKB896358$
09/02/2005  03:40 PM    <DIR>          $NtUninstallKB896422$
09/02/2005  03:40 PM    <DIR>          $NtUninstallKB896423$
01/07/2006  11:48 AM    <DIR>          $NtUninstallKB896424$
09/02/2005  03:39 PM    <DIR>          $NtUninstallKB896428$
10/23/2005  10:05 AM    <DIR>          $NtUninstallKB896688$
09/02/2005  03:39 PM    <DIR>          $NtUninstallKB896727$
09/02/2005  03:28 PM    <DIR>          $NtUninstallKB898461$
09/02/2005  03:40 PM    <DIR>          $NtUninstallKB899587$
09/02/2005  03:39 PM    <DIR>          $NtUninstallKB899588$
10/23/2005  10:05 AM    <DIR>          $NtUninstallKB899589$
09/02/2005  03:40 PM    <DIR>          $NtUninstallKB899591$
08/13/2006  09:32 PM    <DIR>          $NtUninstallKB900485$
10/23/2005  10:05 AM    <DIR>          $NtUninstallKB900725$
01/07/2006  11:46 AM    <DIR>          $NtUninstallKB900930$
10/23/2005  10:06 AM    <DIR>          $NtUninstallKB901017$
09/02/2005  03:39 PM    <DIR>          $NtUninstallKB901214$
03/22/2006  07:55 PM    <DIR>          $NtUninstallKB902344$
10/23/2005  10:05 AM    <DIR>          $NtUninstallKB902400$
10/23/2005  10:04 AM    <DIR>          $NtUninstallKB904706$
03/22/2006  07:57 PM    <DIR>          $NtUninstallKB904942$
10/23/2005  10:05 AM    <DIR>          $NtUninstallKB905414$
10/23/2005  10:04 AM    <DIR>          $NtUninstallKB905749$
01/07/2006  11:53 AM    <DIR>          $NtUninstallKB905915$
01/12/2006  10:58 PM    <DIR>          $NtUninstallKB908519$
08/13/2006  09:29 PM    <DIR>          $NtUninstallKB908531$
01/07/2006  11:49 AM    <DIR>          $NtUninstallKB910437$
08/13/2006  09:35 PM    <DIR>          $NtUninstallKB911280$
08/13/2006  09:32 PM    <DIR>          $NtUninstallKB911562$
03/22/2006  07:56 PM    <DIR>          $NtUninstallKB911564$
03/22/2006  07:55 PM    <DIR>          $NtUninstallKB911565$
08/13/2006  09:29 PM    <DIR>          $NtUninstallKB911567$
03/22/2006  07:55 PM    <DIR>          $NtUninstallKB911927$
03/22/2006  07:57 PM    <DIR>          $NtUninstallKB912475$
01/07/2006  11:53 AM    <DIR>          $NtUninstallKB912919$
03/22/2006  07:57 PM    <DIR>          $NtUninstallKB912945$
03/22/2006  07:56 PM    <DIR>          $NtUninstallKB913446$
08/13/2006  09:29 PM    <DIR>          $NtUninstallKB913580$
08/13/2006  09:30 PM    <DIR>          $NtUninstallKB914388$
08/13/2006  09:29 PM    <DIR>          $NtUninstallKB914389$
04/20/2007  10:10 AM    <DIR>          $NtUninstallKB914440$
04/20/2007  10:11 AM    <DIR>          $NtUninstallKB915865$
08/13/2006  09:29 PM    <DIR>          $NtUninstallKB916595$
08/13/2006  09:32 PM    <DIR>          $NtUninstallKB917159$
08/13/2006  09:30 PM    <DIR>          $NtUninstallKB917344$
08/13/2006  09:30 PM    <DIR>          $NtUninstallKB917422$
08/13/2006  09:36 PM    <DIR>          $NtUninstallKB917734_WMP10$
08/13/2006  09:30 PM    <DIR>          $NtUninstallKB917953$
03/21/2007  10:32 AM    <DIR>          $NtUninstallKB918118$
08/13/2006  09:30 PM    <DIR>          $NtUninstallKB918439$
08/13/2006  09:30 PM    <DIR>          $NtUninstallKB918899$
09/15/2006  07:32 PM    <DIR>          $NtUninstallKB919007$
01/12/2007  02:35 PM    <DIR>          $NtUninstallKB920213$
08/13/2006  09:35 PM    <DIR>          $NtUninstallKB920214$
04/20/2007  09:53 AM    <DIR>          $NtUninstallKB920342$
08/13/2006  09:30 PM    <DIR>          $NtUninstallKB920670$
08/13/2006  09:29 PM    <DIR>          $NtUninstallKB920683$
09/15/2006  07:32 PM    <DIR>          $NtUninstallKB920685$
09/15/2006  07:32 PM    <DIR>          $NtUninstallKB920872$
08/13/2006  09:31 PM    <DIR>          $NtUninstallKB921398$
12/29/2007  08:03 PM    <DIR>          $NtUninstallKB921503$
08/13/2006  09:35 PM    <DIR>          $NtUninstallKB921883$
09/15/2006  07:32 PM    <DIR>          $NtUninstallKB922582$
08/13/2006  09:35 PM    <DIR>          $NtUninstallKB922616$
10/16/2006  09:54 AM    <DIR>          $NtUninstallKB922819$
10/16/2006  09:51 AM    <DIR>          $NtUninstallKB923191$
10/16/2006  09:54 AM    <DIR>          $NtUninstallKB923414$
01/12/2007  02:36 PM    <DIR>          $NtUninstallKB923689$
01/12/2007  02:35 PM    <DIR>          $NtUninstallKB923694$
01/12/2007  02:37 PM    <DIR>          $NtUninstallKB923980$
10/16/2006  09:54 AM    <DIR>          $NtUninstallKB924191$
01/12/2007  02:37 PM    <DIR>          $NtUninstallKB924270$
10/16/2006  09:53 AM    <DIR>          $NtUninstallKB924496$
03/21/2007  10:34 AM    <DIR>          $NtUninstallKB924667$
01/12/2007  02:37 PM    <DIR>          $NtUninstallKB925398_WMP64$
01/12/2007  02:38 PM    <DIR>          $NtUninstallKB925454$
10/07/2006  01:29 PM    <DIR>          $NtUninstallKB925486$
04/20/2007  07:47 PM    <DIR>          $NtUninstallKB925720$
04/20/2007  09:54 AM    <DIR>          $NtUninstallKB925876$
04/20/2007  09:36 AM    <DIR>          $NtUninstallKB925902$
04/20/2007  09:59 AM    <DIR>          $NtUninstallKB926239$
01/12/2007  02:35 PM    <DIR>          $NtUninstallKB926255$
03/21/2007  10:33 AM    <DIR>          $NtUninstallKB926436$
03/21/2007  10:34 AM    <DIR>          $NtUninstallKB927779$
03/21/2007  10:34 AM    <DIR>          $NtUninstallKB927802$
05/31/2007  11:08 PM    <DIR>          $NtUninstallKB927891$
03/21/2007  10:32 AM    <DIR>          $NtUninstallKB928090$
03/21/2007  10:34 AM    <DIR>          $NtUninstallKB928255$
03/21/2007  10:31 AM    <DIR>          $NtUninstallKB928843$
12/29/2007  08:00 PM    <DIR>          $NtUninstallKB929123$
03/21/2007  10:33 AM    <DIR>          $NtUninstallKB929338$
04/20/2007  07:45 PM    <DIR>          $NtUninstallKB929399$
01/12/2007  02:37 PM    <DIR>          $NtUninstallKB929969$
04/20/2007  09:36 AM    <DIR>          $NtUninstallKB930178$
05/12/2007  03:04 PM    <DIR>          $NtUninstallKB930916$
04/20/2007  09:36 AM    <DIR>          $NtUninstallKB931261$
04/20/2007  09:37 AM    <DIR>          $NtUninstallKB931784$
03/21/2007  10:33 AM    <DIR>          $NtUninstallKB931836$
04/20/2007  09:35 AM    <DIR>          $NtUninstallKB932168$
09/17/2008  11:37 AM    <DIR>          $NtUninstallKB932823-v3$
12/29/2007  08:03 PM    <DIR>          $NtUninstallKB933729$
12/29/2007  07:54 PM    <DIR>          $NtUninstallKB935839$
12/29/2007  07:54 PM    <DIR>          $NtUninstallKB935840$
12/29/2007  08:03 PM    <DIR>          $NtUninstallKB936021$
12/29/2007  08:03 PM    <DIR>          $NtUninstallKB936357$
12/29/2007  07:53 PM    <DIR>          $NtUninstallKB936782_WMP11$
12/29/2007  08:04 PM    <DIR>          $NtUninstallKB937894$
09/17/2008  11:37 AM    <DIR>          $NtUninstallKB938464$
12/29/2007  08:03 PM    <DIR>          $NtUninstallKB938828$
12/29/2007  08:03 PM    <DIR>          $NtUninstallKB938829$
12/29/2007  07:55 PM    <DIR>          $NtUninstallKB939683$
12/29/2007  07:55 PM    <DIR>          $NtUninstallKB941202$
12/29/2007  07:55 PM    <DIR>          $NtUninstallKB941568$
12/29/2007  07:59 PM    <DIR>          $NtUninstallKB941569$
01/15/2008  07:12 PM    <DIR>          $NtUninstallKB941644$
12/29/2007  07:59 PM    <DIR>          $NtUninstallKB942763$
12/29/2007  08:04 PM    <DIR>          $NtUninstallKB943460$
01/15/2008  07:12 PM    <DIR>          $NtUninstallKB943485$
12/29/2007  07:53 PM    <DIR>          $NtUninstallKB944653$
09/17/2008  11:44 AM    <DIR>          $NtUninstallKB946648$
09/17/2008  11:37 AM    <DIR>          $NtUninstallKB950749$
09/17/2008  11:40 AM    <DIR>          $NtUninstallKB950762$
09/17/2008  11:41 AM    <DIR>          $NtUninstallKB950974$
09/17/2008  11:39 AM    <DIR>          $NtUninstallKB951066$
09/17/2008  11:40 AM    <DIR>          $NtUninstallKB951072-v2$
09/17/2008  11:45 AM    <DIR>          $NtUninstallKB951376-v2$
09/17/2008  11:41 AM    <DIR>          $NtUninstallKB951698$
09/17/2008  11:38 AM    <DIR>          $NtUninstallKB951748$
12/18/2008  10:16 PM    <DIR>          $NtUninstallKB952069_WM9$
09/17/2008  11:40 AM    <DIR>          $NtUninstallKB952287$
09/17/2008  11:44 AM    <DIR>          $NtUninstallKB952954$
09/17/2008  11:44 AM    <DIR>          $NtUninstallKB953839$
09/17/2008  11:37 AM    <DIR>          $NtUninstallKB954154_WM11$
09/17/2008  11:41 AM    <DIR>          $NtUninstallKB954156_WM9L$
11/08/2008  10:42 AM    <DIR>          $NtUninstallKB954211$
12/18/2008  10:12 PM    <DIR>          $NtUninstallKB954600$
11/21/2008  11:23 AM    <DIR>          $NtUninstallKB955069$
12/18/2008  10:15 PM    <DIR>          $NtUninstallKB955839$
11/08/2008  10:43 AM    <DIR>          $NtUninstallKB956391$
12/18/2008  10:12 PM    <DIR>          $NtUninstallKB956802$
11/08/2008  10:43 AM    <DIR>          $NtUninstallKB956803$
11/08/2008  10:41 AM    <DIR>          $NtUninstallKB956841$
11/08/2008  10:43 AM    <DIR>          $NtUninstallKB957095$
11/21/2008  11:24 AM    <DIR>          $NtUninstallKB957097$
11/08/2008  10:40 AM    <DIR>          $NtUninstallKB958644$
02/14/2009  10:34 AM    <DIR>          $NtUninstallKB958687$
02/14/2009  10:34 AM    <DIR>          $NtUninstallKB960715$
               0 File(s)              0 bytes
             187 Dir(s)  46,294,913,024 bytes free

After I ran Remove Hotfix Backups, Windows Explorer reported "Free space: 46,308,824 bytes 43.1 GB" and checking for $NT*KB* directories showed the following:

C:\TEMP>dir /ah \Windows\$NT*KB*
 Volume in drive C is Sys-WinXP
 Volume Serial Number is B0E3-65A7

 Directory of C:\Windows

01/21/2005  02:34 PM    <DIR>          $NtUninstallKB828741$
01/21/2005  02:38 PM    <DIR>          $NtUninstallKB833987$
01/21/2005  02:36 PM    <DIR>          $NtUninstallKB835732$
01/21/2005  02:36 PM    <DIR>          $NtUninstallKB840987$
01/21/2005  02:36 PM    <DIR>          $NtUninstallKB841356$
01/21/2005  02:37 PM    <DIR>          $NtUninstallKB841533$
01/21/2005  01:21 PM    <DIR>          $NtUninstallKB842773$
01/21/2005  02:38 PM    <DIR>          $NtUninstallKB871250$
01/21/2005  02:37 PM    <DIR>          $NtUninstallKB873339_0$
01/21/2005  02:37 PM    <DIR>          $NtUninstallKB873376$
01/21/2005  02:37 PM    <DIR>          $NtUninstallKB885835_0$
01/21/2005  02:38 PM    <DIR>          $NtUninstallKB885836_0$
01/21/2005  02:37 PM    <DIR>          $NtUninstallKB889293-IE6SP1-20041111.2356
09/02/2005  03:39 PM    <DIR>          $NtUninstallKB890046_0$
01/21/2005  02:38 PM    <DIR>          $NtUninstallKB890175_0$
01/21/2005  02:38 PM    <DIR>          $NtUninstallKB891711$
08/13/2006  09:36 PM    <DIR>          $NtUninstallKB917734_WMP10$
01/12/2007  02:37 PM    <DIR>          $NtUninstallKB925398_WMP64$
09/17/2008  11:37 AM    <DIR>          $NtUninstallKB932823-v3$
12/29/2007  07:53 PM    <DIR>          $NtUninstallKB936782_WMP11$
09/17/2008  11:40 AM    <DIR>          $NtUninstallKB951072-v2$
09/17/2008  11:45 AM    <DIR>          $NtUninstallKB951376-v2$
12/18/2008  10:16 PM    <DIR>          $NtUninstallKB952069_WM9$
09/17/2008  11:37 AM    <DIR>          $NtUninstallKB954154_WM11$
09/17/2008  11:41 AM    <DIR>          $NtUninstallKB954156_WM9L$
               0 File(s)              0 bytes
              25 Dir(s)  46,308,941,824 bytes free

I also removed the $NTServicePackUninstal directory under C:\Windows, which was using 338 MB (355,138,581 bytes) of disk space and holding 2,457 files, by holding down the Shift key to ensure the folder wouldn't go into the Recycle Bin, but, instead would be permanently removed, selected Delete. When asked to confirm the deletion of an exe file I chose "Yes to All" to avoid further prompts for the removal of executable files in the directory.


  1. Freeing Disk Space
    MoonPoint Support
  2. Remove Hotfix Backup Files
    By Doug Knox
    May 29, 2004
  3. Freeing Disk Space on a Windows XP Home Edition System
    MoonPoint Support

[/os/windows/xp] permanent link

Sun, Feb 22, 2009 5:53 pm

Java Update and Downloaded Program Files

When you install Java Runtime Environment (JRE) software from Sun Microsystems on a Windows XP system, you will see entries for it in C:\WINDOWS\Downloaded Program Files. You can view the information through Windows Explorer, or if you want to view information on what is in that folder from the command line, you can use show-downloaded-program-files.vbs, which you can run from the command line with cscript /nologo show-downloaded-program-files.vbs.

[ More Info ]

[/os/windows/xp] permanent link

Sat, Feb 21, 2009 4:25 pm

Freeing Disk Space on a Windows XP Home Edition System

I have a laptop running Windows XP Home Edition Service Pack 3 that is running low on free disk space. I need to compact my outlook.pst file on the system, but can't because there isn't enough space to hold a temporary file the same size as the outlook.pst file, which is now 19 GB in size. So I had to look for files and folders to delete from the system to gain additional free space.

[ More Info ]

[/os/windows/xp] permanent link

Sun, Feb 15, 2009 9:21 pm

BIOS Info Using VBScript

Microsoft has a webpage on Microsoft TechNet titled Retrieving Information About the BIOS, which provides details on how to retrieve information for the BIOS, such as a description and version number for the BIOS, using VBScript.

I created a script, bios-info.vbs from the code provided on Microsoft's webpage that will retrieve the information from the BIOS.

[/os/windows/utilities/sysmgmt] permanent link

Sun, Feb 15, 2009 8:42 pm

Toshiba M35X Laptop Powers Off Randomly

I've been having a lot of power problems with a Toshiba laptop, model number M35X-S109 and part number PSA7U-01300U, recently. The system will randomly power itself off without warning. Often, when I power it back on, the battery will show a very low charge and will be charging. At Satellite model M35X - fixing power connector, I found that this model of Toshiba laptop is known for having a power connector problem. The webpage has pictures of the power connector on the motherboard showing signs of the problem. Pictures are also shown illustrating a repaired power connector. Another webpage with information on the problem is Toshiba Satellite M35X and Satellite A75 power jack and battery charge problem. There is a Toshiba Satellite A75 failed power jack workaround page detailing how one person, who had his laptop repaired multiple times to fix the problem, finally resorted to moving the power connector outside the laptop case. Another reference to the problem is at Satellite 1900. Laptop loses power and shuts down without warning.

I have the Toshiba Power Management Utility configured on the system to sound an alarm and display a message when the battery charges drops to 10%. I have it configured to sound an alarm, display a message, and hibernate when the charge drops to 5%. But it never takes those actions. Instead, the laptop just powers off.

So that I could at least have some forwarning of when the battery charge is getting very low, I installed Laptop Battery Power Monitor, which places a battery widget on the desktop which displays the battery's charge level and which appears above other windows.

[/pc/hardware/toshiba] permanent link

Sun, Feb 15, 2009 8:37 pm

Laptop Battery Power Monitor 2006

Laptop Battery Power Monitor allows you to track the battery charge for your laptop's battery. A battery widget appears on your desktop when the program is installed, which can be dragged across your desktop and placed over any window. To make it less intrusive, you can adjust the transparency of the battery. In addition, the battery can be resized to 33%, 50%, or 75% of its original size. If you place your mouse over the battery, your battery's charge status, total hours remaining, and percentage of battery life remaining will be displayed.

When you run the downloaded file, setup.exe, by default, it will attempt to extract the files stored within itself to c:\Temp\BatteryMonitor2006. If there is no c:\Temp directory, you will receive the message below:

WinZip Self-Extractor

White X in red circleCould not create "c:\Temp\BatteryMonitor2006" - unzip operation cancelled.



In that case, choose another directory into which the files will be extracted. The software requires 6,992 KB of free space on the disk on which it will be installed.

The installation process creates a program group named Within it you will find a Laptop Battery Power Monitor group. When you run the progam it will place a battery widget on your desktop showing the battery charge level.

DuoMart battery charge widget

That widget will remain over top of windows that you open. Moving the mouse pointer over it will display information about the state of the battery. If you right-click on it, you can change the size of the battery displayed. You also have the option to adjust its transparency or close the program.

The software can be downloaded from the developer website, which is a source for purchasing computer accessories, bluetooth devices, or laptop batteries. Other sources for the software are listed below.

Download Sites

MoonPoint Support

[/os/windows/utilities/sysmgmt] permanent link

Sun, Feb 15, 2009 3:46 pm

Substring Extraction with the FOR /F Command

I want to obtain the file name listed as the value for Wallpaper in the registry key HKCU\Software\Microsoft\Windows\CurrentVersion\Themes\LastTheme. I can do so using the reg query command.
C:\>reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Themes\LastTheme /v


    Wallpaper   REG_EXPAND_SZ   %SystemRoot%\Web\Wallpaper\Ripple.jpg

From a batch file, though, I only want the filename, i.e. %SystemRoot%\Web\Wallpaper\Ripple.jpg.

I can select just that part of the output usng the FOR /F command in a batch file. The syntax of the FOR /F command is as follows:

FOR /F ["options"] %%parameter IN ('command_to_process') DO command

      delims=xxx   The delimiter character(s)
                   (default = a space)
      skip=n       A number of lines to skip at the beginning. 
                   (default = 0)
      eol=;        Character at the start of each line to indicate a comment
                   The default is a semicolon ;  Use "eol=" to process all lines 
      tokens=n     Specifies which numbered items to 
                   read from each line 
                         (default = 1)

      usebackq     Specify `back quotes`
                      the command_to_process is placed in `BACK quotes`
                      instead of 'straight' quotes

   command_to_process : The output of the 'command_to_process' is 
                        passed into the FOR parameter.

   command     : The command to carry out, including any 
                 command-line parameters.

   %%parameter : A replaceable parameter:
                 in a batch file use %%G (on the command line %G)

FOR /F processing of a command consists of reading the output from the command one line at a time and then breaking the line up into individual items of data or 'tokens'. The DO command is then executed with the parameter(s) set to the token(s) found.

By default, /F breaks up the command output at each blank space, and any blank lines are skipped. You can override this default parsing behavior by specifying the "options" parameter. The options must be contained within double quotes.

In this case, the last line of output is the following:

    Wallpaper   REG_EXPAND_SZ   %SystemRoot%\Web\Wallpaper\Ripple.jpg

The delimiter between the fields in the output is the tab character (I checked for whether the delimiter was spaces or tabs with hod by redirecting the output of the reg query command to a file with reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Themes\LastTheme /v Wallpaper > temp.txt). For the FOR /F command, the default delimiter is the space and tab characters so I don't have to specify delims=. But, if I don't, the output will be incorrect in cases where the path name or file name contain spaces, since the second space will be treated as a demarcation point, so that the space-separated parts of the path name or file name are treated as separate tokens.

"Tokens" are the parts of the line separated by the delimiter. In this case, I'm only interested in the third token, i.e. %SystemRoot%\Web\Wallpaper\Ripple.jpg, so I can use the following lines in a batch file:

FOR /F "tokens=3" %%R in ('reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Themes\LastTheme /v Wallpaper') DO SET wallpaper=%%R
echo %wallpaper%

I used the tokens=3 option to select just the third token on the output line. The %%R for the parameter name is arbitrary. I could have called it %%S, %%T, etc., instead, if I wished. The command I wished to process is enclosed between '( and )'. Note: for the reg query command, if the registry key contains spaces in the key name, then you must enclose the registry key name within double quotes as in the following batch file example:

@echo off FOR /F "tokens=3" %%R in ('reg query "HKCU\Control Panel\Desktop" /v ConvertedWallpaper') DO SET wallpaper_file=%%R
echo %wallpaper_file%

The output produced by the batch file is shown below:


But, if I checked the value for OriginalWallper in the registry key HKCU\Control Panel\Desktop with reg query as below, I would see a path name containing spaces.

C:\>reg query "HKCU\Control Panel\Desktop" /v OriginalWallpaper


HKEY_CURRENT_USER\Control Panel\Desktop
    OriginalWallpaper   REG_SZ  C:\Documents and Settings\James\Local Settings\A
pplication Data\Microsoft\Wallpaper1.bmp

If I don't specify delims= in the batch file, e.g., if I use the code below, I would get incorrect output.

@echo off FOR /F "tokens=3" %%R in ('reg query "HKCU\Control Panel\Desktop" /v OriginalWallpaper') DO SET wallpaper_file=%%R echo %wallpaper_file%

The output would be as shown below:


That is because C:\Documents will be treated as one token and then the space between Documents and and Settings is treated as the demarcation point between two tokens. But, if I instead include delims= and immediately hit the tab key, that problem won't occur, since the the horizontal tab character between the fields will be used to break up the line into tokens.

@echo off FOR /F "delims= tokens=3" %%R in ('reg query "HKCU\Control Panel\Desktop" /v OriginalWallpaper') DO SET wallpaper_file=%%R echo %wallpaper_file%

You can't see any character after the delims=, but in order for the FOR /F command to work in this case, I had to type delims= and then hit the tab key while editing the file in Windows Notepad. If you then save the file, it will produce the correct output, e.g.:

C:\Documents and Settings\James\Local Settings\Application Data\Microsoft\Wallpaper1.bmp

Note: if you are using Vim as your editor on a Windows system, as I usually do, then you need to insert the tab character after delims= by hitting the Ctrl-I keys simultaneously. You can then hit the spacebar and type tokens=. If you just hit the tab key, your output won't be as you expect.

Wallpaper-info.bat is an example batch file to query the values in the Windows registry pertaining to the file used for the Windows wallpaper using the FOR /F command.


  1. For - Loop through command output
  2. NT's FOR /F command: tokens and delims
    Rob van der Woude's Scripting Pages

[/os/windows/commands] permanent link

Sun, Feb 15, 2009 11:42 am

Hod - Octal and Hexadecimal Dump Program for Windows

Hex and Octal dumper (hod) is a small (36,864 bytes for version 1.6) program, written by Muhammad A Muquit, that can display the contents of a file in hexadecimal and octal. It is available for Linux/Unix, Microsoft Windows, and SimpleTech SimpleShare NAS systems. For the Microsoft Windows version, simply extract hod.exe from the zip file available on the author's website.

If you just type hod file the contents of file will be displayed in both hexadecimal and ASCII.

C:\>"C:\Program Files\Utilities\hod.exe" temp.txt
          0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f   0123456789abcdef
       0: 0d 0a 21 20 52 45 47 2e 45 58 45 20 56 45 52 53  ..! REG.EXE VERS
      10: 49 4f 4e 20 33 2e 30 0d 0a 0d 0a 48 4b 45 59 5f  ION 3.0....HKEY_
      20: 43 55 52 52 45 4e 54 5f 55 53 45 52 5c 53 6f 66  CURRENT_USER\Sof
      30: 74 77 61 72 65 5c 4d 69 63 72 6f 73 6f 66 74 5c  tware\Microsoft\
      40: 57 69 6e 64 6f 77 73 5c 43 75 72 72 65 6e 74 56  Windows\CurrentV
      50: 65 72 73 69 6f 6e 5c 54 68 65 6d 65 73 5c 4c 61  ersion\Themes\La
      60: 73 74 54 68 65 6d 65 0d 0a 20 20 20 20 57 61 6c  stTheme..    Wal
      70: 6c 70 61 70 65 72 09 52 45 47 5f 45 58 50 41 4e  lpaper.REG_EXPAN
      80: 44 5f 53 5a 09 25 53 79 73 74 65 6d 52 6f 6f 74  D_SZ.%SystemRoot
      90: 25 5c 57 65 62 5c 57 61 6c 6c 70 61 70 65 72 5c  %\Web\Wallpaper\
      a0: 52 69 70 70 6c 65 2e 6a 70 67 0d 0a 0d 0a        Ripple.jpg....

For help on using the program, use the -h option.

C:\>"C:\Program Files\Utilities\hod.exe" -h
usage: C:\Program Files\Utilities\File\Analysis\hod.exe [options] <filename>
Where the options are:
 -v      : show version information
 -h      : show this help
 -o      : dump in octal
 -8      : show as block of 8 bytes
 -x str  : convert a hex input to decimal
 -d      : show offsets in decimal
 -s      : show identical output lines
 -r      : reverse hod hexdump to binary
 -w      : reverse regular hex bytes to binary

If no filename specified, it will read from stdin

$ hod file
$ hod < file
$ cat file | hod
$ cat file | hod -
$ hod < file
$ hod -o file
$ echo "hello" | hod
$ echo -n "hello" | hod
$ hod -x 1c0
1c0 : 448
$ echo "0a 01 ff ef 0b" | hod -w > bin.bin
$ hod bin.bin | hod -r > bin_again.bin

Note: -r and -w works with hexadecimal only.

If you want to convert an ASCII string, such as the word hello, to its hexadecimal equivalent, you can use the echo command to pipe the word to hod, as below.

C:\>echo hello | "C:\Program Files\Utilities\hod.exe"
          0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f   0123456789abcdef
       0: 68 65 6c 6c 6f 20 0a                             hello .

From the above output, you can see that the letters in hello have the following hexadecimal equivalent representation.

LF0aline feed

A space (hex 20) is listed after hello, since there was a space between the word and the | pipe operator that feeds the output of the echo command to hod. If I had placed the | immediately after hello, i.e. echo hello|, it wouldn't have been listed. A line feed (hex 0a) is shown after the space.

Download hod

Author's website

[/software/utilities] permanent link

Sat, Feb 14, 2009 8:24 pm

Extracting a Substring from a String under Microsoft Windows

If you are using Microsoft Windows, such as Windows XP, you can extract a substring from a variable string using character positional notation, i.e. %myvar:~char_skip_num%. I.e., where you have some variable, e.g. %myvar%, you can place the :~ operator prior to the ending % and then specify a the number of characters to skip followed by the ending %.

E.g. from a command line if you checked the value of a user profile variable, i.e. %userprofile%, for a user named James, you might see the following:

C:\>echo %userprofile%
C:\Documents and Settings\James

If I wanted to extract just the user's account name, i.e. James, I could use the following:

C:\>echo %userprofile:~26%

The "J" in James is the 27th character, so I used 26 to have the first 26 characters skipped.

You can also specify that you only want to extract a certain number of characters by putting a comma after the number of characters to be skipped followed by the number of characters to extract. E.g, if I only wanted to extract the first 3 characters starting at position 27, I could use the following:

C:\>echo %userprofile:~26,3%

If you don't want to skip any characters, but specify only a certain number of characters to extract, you can use the syntax %myvar:~0,x where you specify that zero characters are to be skipped and x represents the number of characters to extract from the string.

C:\>echo %userprofile:~0,3%

You can also specify that you want to start the extraction from the end of the line rather than the beginning by using -x, where x is some number, for the starting position. E.g. you could use the following to extract the last 3 characters from the line:

C:\>echo %userprofile:~-3%

You can specify the number of characters to extract, just as noted before, with this method as well. E.g. to extract the substring that starts at 3 characters from the end of the string, but only includes 2 characters from that point, the following could be used:

C:\>echo %userprofile:~-3,2%

If you are using a batch file, e.g. substring-extract-example.bat, you could display just the desired part of the string as follows:

@echo off
echo %userprofile:~-3,2%

When the batch file is executed, it wold display just "me"


For further examples, see Variables: extract part of a variable (substring)


  1. Variables: extract part of a variable (substring)
  2. Substrings in Windows Batch Files
    Terminally Incoherent

[/os/windows/commands] permanent link

Thu, Feb 12, 2009 8:49 pm

Toyota Echo Gas Mileage

I have a 2001 Toyota Echo with automatic transmission. I check my gas mileage every time I put gas in the tank; so far this year I've been getting 35 to 38 MPG, for mostly highway driving to and from work, which matches fairly closely to the 38 MGP figure listed for the automatic 2001 Toyota Echo at Toyota Echo Gas Mileage.

[/info/auto] permanent link

Mon, Feb 09, 2009 4:34 pm

No-IP Coupon Code

I had to renew No-IP Plus Managed DNS service for a domain today, so that I could continue to use No-IP's DDNS service for the domain. I found a promo code that gave me a $5 discount for the renewal. The coupon code was EXP427.

[/network/dns] permanent link

Sun, Feb 08, 2009 9:13 pm

Political Donation Lookup Tool

At Campaign Donors : Fundrace 2008, one can use a search tool to look up campaign donors by zip code, city, last name, occupation, or employer.

I came across the site by accident while doing a search on a company name. The site revealed that the president of the company had made a campaign contribution to George W. Bush in 2004. I tried a search on my zip code and the site returned a list of people in my zip code who had made contributions to either the Democratic or Republican party and the amount donated.

The site states the following:

All calculations are based on public records filed with the FEC of contributions by all individuals totaling more than $200 (and some totaling less than $200) to a single Republican or Democratic presidential campaign or national committee for the 2004 and 2008 election cycles.

FundRace is updated according to the reporting schedule set by the FEC. Public contribution data is geocoded using public U.S. Census Bureau data. Dynamic maps are powered by Google Maps.

[/network/web/search] permanent link

Sat, Feb 07, 2009 9:37 am


I installed SimpleCheck on a laptop today. The program makes it easy to check multiple POP3 email accounts. The program provides the capability to dowload only part of a message or the entire message, delete messages from POP3 servers, and to send mail from the specified accounts.

[/os/windows/software/network/email] permanent link

Fri, Feb 06, 2009 3:59 pm

Running Control Panel Power Options from the Command Line

To access the Control Panel Power Options from the command line, type powercfg.cpl. Note: if you aren't logged into an administrator account when you run it, you can run it with administrator privileges by obtaining a command prompt and then taking the following steps:
  1. Type runas /user:administrator cmd to obtain a command prompt under the administrator account. Note: you may have to use owner or some other account in the administrator group, depending on your particular system, instead of the administrator account.
  2. Type powercfg.cpl in the new command prompt window that opens for the administrator account.
If you aren't logged in under an account in the administrator group, you can't just open the Power Management window with runas /user:administrator powercfg.cpl. If you try that, you will get the message " powercfg.cpl is not a valid Win32 application."

For a list of of Control Panel tools and how to run them from the command line, see How to run Control Panel tools by typing a command.

[/os/windows/xp] permanent link

Fri, Feb 06, 2009 1:42 pm


The Toshiba M35X-S109 laptop I've been using is periodically powering itself off. Sometimes, when I power it back on, I notice that the battery charge is listed as being very low when I check it with the Toshiba Power Management utility in the Control Panel, though the utility shows the system is on AC power and charging. Though I have that utility configured to warn me when the battery charge is low and to hibernate when the battery charge is about 5%, that doesn't happen. At other times, when I immediately power it back on, I see that the charge level is high, e.g. 85% and it is shown as being on AC power.

Because I also hear the fan making a fair amount of noise at times, I thought I would install a utility to monitor the fan speed and CPU temperature. I used SpeedFan 4.37, but found that the laptop's motherboard doesn't support such monitoring. The temperature of the hard drive in the laptop can be monitored, though. I see it varies between 34 and 37 degrees Celsius.

[/os/windows/utilities/sysmgmt] permanent link

Thu, Feb 05, 2009 2:25 pm

ELOG Logbooks Location

I moved my ELOG logbooks from one laptop to another. After installing ELOG on the new laptop, I needed to tell ELOG where to look for logbooks, since by default it expects logbooks to be in the logbooks directory beneath the installation directory, e.g. C:\Program Files\ELOG\logbooks. To do so, I took the following steps:
  1. Open elogd.cfg, which is stored in the ELOG installation directory, e.g. C:\Program Files\ELOG\elogd.cfg, with Notepad from an administrator account.
  2. In the global section add a Logbook dir = <directory> line where <directory> is the directory where you wish to have the logbooks stored. Note: don't use quotes around directory names, even if there are spaces in the names of directories in the path to the logbook directory. E.g.:
    port = 8080
    logbook dir = C:\Documents and Settings\James\My Documents\ELOG\logbooks
  3. You then need to create a section in elogd.cfg for the logbook. Put the name of the logbook between "[" and "]" and then add the relevant lines for that particular logbook. E.g.:
    Theme = default
    Comment = System Administration
    Attributes = Author, Type, Category, Subject
    Options Type = Configuration, Malware Scan, Patches, Problem, Problem Fixed, Routine, Software Installation, Upgrade, Other
    Options Category = General, Hardware, Software, Network, Security, Other
    Options Author = John Smith
    Required Attributes = Author
  4. Save the modified elogd.cfg.
  5. Restart ELOG, which you can do from an administrator account from the command line using the following commands:
    C:\>net stop elogd
    The elogd service is stopping.
    The elogd service was stopped successfully.
    C:\>net start elogd
    The elogd service is starting.
    The elogd service was started successfully.

[/network/web/blogging/elog] permanent link

Tue, Feb 03, 2009 7:39 pm

Recovering Vim File in Windows

I had been working on a file using the Vim editor on my laptop. I went to eat dinner; when I came back the laptop had powered itself off. I hadn't saved the file even once. One of the reasons I use Vim as my editor on Windows is that, unlike with the Windows Notepad program, if the system crashes I can recover the file I was editing, since Vim periodically updates a "swap" file for documents being edited. For instance, if I'm editing somedoc.txt there will be a somedoc.txt.swp in the same directory from which I can recover the document should the system crash. In this case, though, I didn't think I could recover the document, since I had never saved it with a file name. So I didn't know where a .swp file would have been stored and was doubtful there was one. But after powering the laptop back on and logging into the same account again, I opened Vim, hit the Esc key and typed :recover. Lo and behold there was my work exactly as it was when I went to eat dinner, saving me a lot of time I would otherwise have been forced to spend recreating the document. I immediately saved it to a file.

[/software/editors/vi] permanent link

Tue, Feb 03, 2009 12:42 pm

Hibernate Support on a Toshiba Laptop

To enable hibernation support on a Toshiba laptop, such as the Toshiba Satellite M35X-S109 laptop, on a Windows XP Home Edition system, take the following steps:
  1. Click on Start.
  2. Select Control Panel.
  3. If the Control Panel is set for "category view", click on Performance and Maintenance then Toshiba Power Management. If it is instead set to "classic view", you will already see Toshiba Power Management, which you should click on.
  4. Click on the Advanced tab.
  5. Check the box for "Enable hibernate support". Once you've enabled hibernate support by clicking on the checkbox, you can also set the system to go into hibernation mode when you close the top of the laptop by changing the setting to "hibernate" under "when I close the lid of my portable computer."

    Toshiba - Enable Hibernate Support

  6. Click on OK.
  7. Close the Control Panel window.

Note: in order to enable hibernate support, you will need enough free space on the hard drive to hold the contents of the system's memory. You can determine the amount of memory in the system by clicking on Start, selecting Run, typing winver and hitting Enter. In the window that then opens, you will see a value for "Physical memory available to Windows". You will need that amount of disk space free on the hard drive, because the contents of memory are written to the file hiberfil.sys, usually in c:\hiberfil.sys when the system is put into hibernation mode. If you don't have at least that amount of disk space free, you won't be able to enable hibernation support.

Once hibernation support is enabled, you can put the system into hibernation by clicking on Start, selecting Turn Off Computer, moving the mouse pointer over Stand By, and then hitting the Shift key. The Stand By option should then change to Hibernate, which you can click on to hibernate the computer.

[/os/windows/xp] permanent link

Sat, Jan 24, 2009 9:29 pm

Running MVC from an AVG Rescue CD

The Multi Virus Cleaner antivirus program can be placed on a rescue CD, such as the AVG Rescue CD as an additional anvirus tool.

First, you need to download the MVC zip file. Unzip the contents of the file and then run the setup.exe program to place the software on the system on which you downloaded it. You can then copy the contents of the directory into which you install it onto an AVG Rescue CD using the instructions at Creating an AVG Rescue CD.

Once you've got the software on the rescue CD and have booted the target system, i.e. the one you need to scan for viruses or other malware, you will need to copy the directory in which it is located from the CD onto the drive created in memory on the system, or onto a USB drive, such as a thumb drive, attached to the system in order to run it. If you attempt to run the software directly from the rescue CD, you will receive the error message "Unable to load signatures file." But you can run it if you copy it to the RAM drive creatied from the system's memory, e.g. drive Z. You can then go to that directory using the FreeCommander program on the AVG Rescue CD and start the MVC program by double-clicking on MVC.exe.

MVC start window

When the program starts you will be prompted to perform one of the following scans:

You can click on Settings to chose what to do when an infected file is detected. The default option is to ask the user what action should be performed.

If you click on Updates you can choose to download the latest version of Multi Virus Cleaner for free. The date on the signatures file is displayed at this window.

Signatures file:v8.6.0 - 04-DEC-2008
Virus signatures:6373 Show list

If you are running the software from the rescue CD, click on Custom scan on the startup window, which you can reach by clicking on the Home button. Then click on the Next button and select drive C, i.e. the partition on which Windows is loaded on the hard drive, then click on the Scan button.

MVC will report it has found an infected file ENGINE.DLL in the C:\AVG_Rescue_Temp directory with the virus "EICAR TEST STRING (SAFE)". Click on the Ignore button, since this is just a test file many antivirus programs, such as the AVG Rescue CD antivirus program, use to verify that antivirus software is working.

[/security/antivirus/avg/rescue-cd] permanent link

Sat, Jan 24, 2009 3:59 pm

Creating an AVG Rescue CD

I use the AVG Rescue CD for scanning infected systems for viruses. It is especially useful for checking systems that are so badly infected that they are essentially unusable. The rescue CD allows one to boot into a version of Windows stored on a CD, bypassing the infected version of Windows on the hard disk.

The steps for creating an AVG Rescue CD are listed here.

[/security/antivirus/avg/rescue-cd] permanent link

Tue, Jan 20, 2009 2:17 pm

Unhiding an Account From the XP Welcome Screen

I had hidden the "owner" account from being visible at the Windows XP Welcome Screen on a laptop running Windows XP Home Edition Service Pack 2 (see Hiding an Account from the Welcome Screen). "Fast User Switching" was turned on, so I could switch from one account to another. I could hit Ctrl-Alt-Del to bring up a login prompt that would allow me to input the userid of "owner" and the password for that account, but that would only work if no other account was logged on already. I could run programs from the command prompt by using the runas command, but there were times when I also wanted to be able to switch to that account and use it with a GUI interface, so I decided to "unhide" the account.

You can use regedit, which provides a GUI interface for editing the registry or you can use the reg command at a command prompt to query and modify the registry.

Since I was logged in under an unprivileged account, i.e. one not in the Administrators group, I first opened a command prompt under that account and then used the runas command to open another command prompt under an account in the Administrators group, in this case the "Owner" account on the laptop.

C:\>runas /user:owner cmd

I then used the reg query command to check the current registry entry applying to the "owner" account that kept it from being visible at the welcome screen for Windows XP.

C:\>reg query "hklm\software\microsoft\windows nt\CurrentVersion
\Winlogon\SpecialAccounts\UserList" /v Owner


HKEY_LOCAL_MACHINE\software\microsoft\windows nt\CurrentVersion\Winlogon\Special
    Owner       REG_DWORD       0x0

A value of zero in the key HKLM\software\microsoft\windows nt\CurrentVersion\Winlogon\SpecialAccounts\UserList\userid means the account represented by userid won't be visible at the Welcome Screen. If you put a value of one there, then the account will be visible.

I then changed the value with the reg add command. Note: when using the reg add command, if a value already exists in the registry for a key, you will be prompted as to whether you want to override it unless you use the /f option with the command.

C:\>reg add "hklm\software\microsoft\windows nt\CurrentVersion\W
inlogon\SpecialAccounts\UserList" /v Owner /t REG_DWORD /d 1
Value Owner exists, overwrite(Y/N)? y

The operation completed successfully

C:\>reg query "hklm\software\microsoft\windows nt\CurrentVersion
\Winlogon\SpecialAccounts\UserList" /v Owner


HKEY_LOCAL_MACHINE\software\microsoft\windows nt\CurrentVersion\Winlogon\Special
    Owner       REG_DWORD       0x1

I was then able to use the Windows logo key + L to obtain the welcome screen where I could now see the "Owner" account listed as one of those I could select.

[/os/windows/xp] permanent link

Mon, Jan 19, 2009 8:28 am

Circuit City Closing

If you visit Ciruit City's website today, you will find the homepage has been replaced by a notice that the company is closing its stores in the U.S. The homepage states that 34,000 employees will be losing their jobs as a result of this action. The webpage states "Due to challenges to our business and the continued bleak economic environment, Circuit City is going out of business and the company's assets will be liquidated to pay off creditors."

The company provides a brief history for itself on the page stating "Founded in 1949 as the Wards Company, Circuit City is headquartered in Richmond, Virginia. At the time of the liquidation announcement (January 16, 2009), the company operated 567 stores in 153 media markets in the U.S. and approximately 765 retail stores and dealer outlets in Canada."

The webpage states that a liquidator will be selling off the remaining inventory in the U.S. stores and that liquidator will be setting prices for items in the stores.

Circuit City made the announcement that they are going out of business on January 16 and stated that closing sales will start as early as January 17, 2009 with the expectation that they will conclude by the end of March. The stores will be closed when the liquidation sales are completed.

The announcement also states that associates at the company's headquarters have been asked to return today, Monday, January 19 to find out more about their status and to retrieve their personal belongings.

[/news] permanent link

Fri, Jan 16, 2009 3:09 pm

Google Chrome Versus Internet Explorer 8

InfoWorld has an article comparing the beta versions of Chrome from Google and Internet Explorer 8 from Microsoft at Lab test: Google Chrome vs. Internet Explorer 8.

One thing I really liked about Chrome is that a problem in one tab doesn't lead to the whole browser crashing. Each tab is associated with a separate process, unlike for other browsers, such as Firefox and versions of Internet Explorer prior to version 8. I haven't tried Internet Explorer 8 yet, but I've long been aggravated by Internet Explorer's tendency to crash due to a problem with one webpage. I tend to have many webpages open at once and I like to be able to retrace my steps leading to a particular webpage by using the back button. I've always liked Opera's ability to reopen the browser after a crash and have all of my tabs restored, plus be able to backup within a tab to view webpages I've visited to get to the current one.

[/network/web/browser/chrome] permanent link

Fri, Jan 09, 2009 2:28 pm

Location for GPG Keyrings on Windows Systems

The Windows version of Gnu Privacy Guard (GPG) stores keyrings for users under the directory C:\Documents and Settings\username\Application Data\gnupg on a Windows XP system, where username is the username for the account under which the user logs into the system.

You can create new empty keyrings with gpg --list-keys.

C:\Program Files\GNU\GnuPG>gpg --list-keys
gpg: keyring `C:/Documents and Settings/JDoe/Application Data/gnupg\pubring.gpg
' created
gpg: C:/Documents and Settings/JDoe/Application Data/gnupg\trustdb.gpg: trustdb

Note: gpg uses the forward slash, "/", which is used on Unix, Linux, and other operating systems to separate directories, in its output, though Windows actually uses a backward slash, "\".

If you need to transfer keyrings from a Linux or Unix system to a Windows system, the keyrings are likely to be stored in ~/.gnupg on that system, i.e. in a .gnupg beneath a user's home directory. Transfer the .gpg files, i.e. pubring.gpg, secring.gpg, trustdb.gpg

To import someone's public key into the public keyring, you can use the instructions at Importing a Public Key with GPG.

[/security/encryption/gnupg] permanent link

Sun, Jan 04, 2009 8:37 pm

Google Docs Denies Access to Spreadsheet

While trying to access a spreadsheet I maintain on Google Docs, received the message:

We're sorry...

... but your query looks similar to automated requests from a computer virus or spyware application. To protect our users, we can't process your request right now.

We'll restore your access as quickly as possible, so try again soon. In the meantime, if you suspect that your computer or network has been infected, you might want to run a virus checker or spyware remover to make sure that your systems are free of viruses and other spurious software.

If you're continually receiving this error, you may be able to resolve the problem by deleting your Google cookie and revisiting Google. For browser-specific instructions, please consult your browser's online support center.

I had been accessing the spreadsheet, but when I attempted to enter a value in one of its cells, I kept getting a message stating I was leaving a secure connection. I would click on OK and the message would keep repeating until I finally got the message above..

I first tried deleting the Google cookies I found on the PC I was using. I was using Internet Explorer (IE), so the cookies were in C:\Documents and Settings\Username\Cookies, where Username was the account I was logged into the PC under. I deleted the following cookies and logged out of Google Docs, but still got the message about a virus or spyware application:[1].txt

That didn't resolve the problem./ I finally closed the instance of Internet Explorer I had open and then looked for Google cookies again. I deleted the one I found and opened another instance of Internet Explorer. I was then able to log into Google Docs again and access the spreadsheet.

[/network/web/search] permanent link

Thu, Jan 01, 2009 1:57 pm

Running FTP Voyager Scheduler as a Service

To have FTP Voyager run scheduled transfers automatically, it should be configured to run as a system service. Otherwise, it won't start when the system is rebooted and will need to be manually started.

Rhino Software, Inc., the developer of FTP Voyager, provides information on configuring the software to run automatically as a service at Running FTP Voyager Scheduler as a System Service, which states the following:

FTP Voyager Scheduler can be configured to run as a system service by checking the box under View | Options | General | Run as a System Service. It is important to note that if you did not select this option at installation, you will need to uninstall and reinstall FTP Voyager before this will work properly. Instructions for backing up FTP Voyager settings can be found in KB article 1189

In version of FTP Voyager, you can take the following steps to run FTP Voyager Scheduler as a system service.

  1. In FTP Voyager Scheduler, click on View.
  2. Select Options.
  3. Under the General tab, click on "Run as a system service" to put a check in the checkbox next to it.
  4. Click on OK.

FTP Voyager Scheduler Options

To verify the software is configured to run as a system service, you can type services.msc at a command prompt. You should see a Startup Type of "automatic" next to FTP Voyager Scheduler.

FTP Voyager Scheduler service

[/network/ftp] permanent link

Once You Know, You Newegg AliExpress by

Shop Amazon Local - Subscribe to Deals in Your Neighborhood

Valid HTML 4.01 Transitional

Privacy Policy   Contact

Blosxom logo