Friday, July 30, 2010

Cisco IOS router stuck in rommon

Moral of the story - if you are getting checksum errors on the rommon prompt of a Cisco IOS router, and you know that you have downloaded the correct image from the correct website, then either your router's flash memory or the USB drive you are using to transfer it is corrupt. I know the latter seems like a distant possibility, but yes, it has happened to me and I lost a good 3 weeks of productive time trying to troubleshoot this.

Peace!!

Saturday, July 10, 2010

How to see a Cisco IOS CA's root certificate

If you have created an IOS CA server and want to see its root certificate for distribution to other machines, then you must look at its storage location. Suppose you used the following to create your CA:

# enable
(config)# cry pki server thehacklist
(cs-server)# database url flash:
(cs-server)# issuer-name C=IN, ST=WB, O=thehacklist
(cs-server)# cdp none
(cs-server)# grant auto
(cs-server)# no shut
%Some server settings cannot be changed after CA certificate generation.
% Please enter a passphrase to protect the private key
% or type Return to exit
Password:

Re-enter password:
% Generating 1024 bit RSA keys, keys will be non-exportable...[OK]
% Exporting Certificate Server signing certificate and keys...

% Certificate Server enabled.
(cs-server)# end

Now if you look at the storage location (flash in this case, as specified above), you will see a three files named after your CA server (with extensions ending in ser, crl and p12).

# dir flash:
Directory of flash:/

11 -rw- 32 Jul 10 2010 17:54:20 +00:00 thehacklist.ser
1 -rw- 1826 Jan 15 2008 17:52:38 +00:00 sdmconfig-38xx.cfg
2 -rw- 6036480 Jan 15 2008 17:53:10 +00:00 sdm.tar
3 -rw- 861696 Jan 15 2008 17:53:26 +00:00 es.tar
4 -rw- 1164288 Jan 15 2008 17:53:46 +00:00 common.tar
5 -rw- 1038 Jan 15 2008 17:54:02 +00:00 home.shtml
6 -rw- 113152 Jan 15 2008 17:54:16 +00:00 home.tar
7 -rw- 1697952 Jan 15 2008 17:54:42 +00:00 securedesktop-ios-3.1.1.45-k9.pkg
8 -rw- 416354 Jan 15 2008 17:55:06 +00:00 sslclient-win-1.1.3.173.pkg
9 -rw- 59526004 Jun 29 2010 19:23:10 +00:00 c3845-advipservicesk9-mz.124-22.T2
10 -rw- 60288320 Dec 15 2008 23:27:58 +00:00 c3845-adventerprisek9-mz.124-20.T
12 -rw- 247 Jul 10 2010 17:54:20 +00:00 thehacklist.crl
13 -rw- 1627 Jul 10 2010 17:54:22 +00:00 thehacklist_00001.pem

From here, to see the root certificate of the CA, you can use:

# more flash:/thehacklist_00001.pem
-----BEGIN CERTIFICATE-----
MIIB/TCCAWagAwIBAgIBATANBgkqhkiG9w0BAQQFADASMRAwDgYDVQQDEwdjbG91
ZGNhMB4XDTEwMDUwNTIxNDI1MloXDTEzMDUwNDIxNDI1MlowEjEQMA4GA1UEAxMH
Y2xvdWRjYTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAlKg0l1DdBpgc/5j3
mA8XodkRq3d5c6K4ZYgUKftEUBAJV3tQz8/ms+CObfmvOn8BdZl0vsLDhJIPRCoq
pypec//gtJpQAAo2I8PCl874yB8k/ebhxBMMhzxQ7y70B0d6gbl8Ub+pmXJnl7Gi
61G41bmNCzXHdfUUiVczpVnaaaaaaaaaaaaaaaaaaaYDVR0TAQH/BAUwAwEB/zAO
BgNVHQ8BAf8EBAMCAYYwHwYDVR0jBBgwFoAUbjpam0qXL8U93MSmngJ1vE1USrMw
HQYDVR0OBBYEFG46WptKly/FPdzEpp4CdbxNVEqzMA0GCSqGSIb3DQEBBAUAA4GB
ACDHm7NNssxSzdD1aQUyUtAni9zo2TCrdcVYtUa5z497JWAPK5YE1tGsMdkYawky
/sUuQMQY4nQFaHtlwKoDHKUSRuygq24GjCUXwoSLLR8jqzfuSgah1ZPohZUPRFEo
EAN2hDdw3Y0o75rsHzie355AH2a22nDnyAm+89EJqEsv
-----END CERTIFICATE-----

Thursday, June 24, 2010

MPlayer: Failed to open LIRC support

Whenever I run MPlayer from my terminal, which is always when I am playing any kind of media, including Youtube videos, I get the following error.

mplayer: could not connect to socket
mplayer: No such file or directory
Failed to open LIRC support. You will not be able to use your remote control.

I do not own a LIRC remote control, although I have read it is not too difficult to build one yourself. I this message had become an eyesore. The fix is rather simple. Add a line "nolirc = yes" without the quotes to the file ~/.mplayer/config in your home directory. Given how customizable MPlayer is, it is possible to fine tune almost everything from the config file. The default configurations are listed in /etc/mplayer/mplayer.conf and are overridden by the config file in the home directory.

Tuesday, June 15, 2010

Resolving "murrine_style_draw_box: assertion `height >= -1'"

When using Emacs 23 and a few other applications on Ubuntu running GNOME, I often get a irritatingly cryptic error message ** (emacs:25074): CRITICAL **: murrine_style_draw_box: assertion `height >= -1' failed. Turns out it has got something to do with the theme I'm running.

Thanks to Alf, it is very easy to get rid of that by tweaking Gtk configuration. Modify the entry in /usr/share/themes/Ambiance/gtk-2.0/gtkrc from GtkRange::trough-under-steppers = 0 to GtkRange::trough-under-steppers = 1.

Wednesday, May 26, 2010

Upgrading Fedora from the command line

I have a Fedora box running and I sort of screwed up the GDM so I was left without a display. Since the Fedora 13 (Goddard) was released recently, I decided to upgrade, from the command line. It kept giving me the error that complained, "Can't open display".

I finally figured out that I needed preupgrade-cli, as specified here: http://fedoraproject.org/wiki/PreUpgrade

The syntax, from the command line is this (as root):
preupgrade-cli "Fedora 13 (Goddard)"

Note the quotes surrounding the argument - you need those to specify the string for the version you want to upgrade to.

Monday, May 24, 2010

Eclipse: GLib-WARNING **: g_set_prgname() called multiple times

While coding a few things using SWT on Eclipse, the console was continuously showing me this error:
g_set_prgname() called multiple times
that too in red - meaning a sort of an error.

This is a nagging problem: especially if you are a code purist like me who loves to see no errors/warnings at all in the code I write. I googled a bit, and the Ubuntu Forums provided the solution: downgrade libglib2.0. I'm quoting from there:

Mark the package you want to downgrade, and choose "Force version ..." from "Package" on the main menu. Select the previous version and it is done.

I am using Karmic Koala (yeah I haven't upgraded to the Maverick LTS yet). So all I needed to do was to select the value from the drop down menu to one that did not say "(updates)". Don't worry, there are only two options and you just have to select the other one. After applying, I got that line marked in yellow in Synaptic. But hey... got rid of a nagging warning! :)

Sunday, May 9, 2010

Road rash on Linux using wine

For a lot of us, Roadrash is a game that is going to remain close to our hearts forever! Countless hours spent in front of the PC while kicking and punching others, or even on the LAN fending off your room-mate. For a lot of us, this has been THE introduction to computer video games.

Downloading the game is pretty easy, actually. I got mine at http://www.download-full-games.com/pc/sports/road_rash.html

The tricky part is to get to run it on Linux. In my case, Ubuntu Linux is the only operating system I have: I honestly don't need Windows for much. This game, however, runs only on Windows and so the quintessential wine came to the rescue. So then I unzipped the file and from the command prompt typed:

sudipta@Hogwarts:~/roadrash$ wine ROADRASH.EXE

This unfortunately leads to the "CD-Rom not found" error. The fix to this, as we all know, is to have the registry edited. There is a SETREG.EXE which you can run, but then the state is not persistent. As in, if you run

sudipta@Hogwarts:~/roadrash$ wine SETREG.EXE
sudipta@Hogwarts:~/roadrash$ wine ROADRASH.EXE

Then the registry was just altered when the last wine command was run, not this time. So I opened up the RASH.REG file and found that it contained:

REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Electronic Arts\RoadRash 95]
@=""
"Path"="D:\\"
"CheckDialup"=hex:00
"ChatState"=hex:02
"MiniDash"=hex:00
"OpponentList"=hex:01 

Which basically means that the above Windows registry value needed editing. This in turn led me back to the .wine folder in my home directory. Lo and behold, there was a system.reg file with lots of Registry-like entries.

sudipta@Hogwarts:~/.wine$ gedit  system.reg

So I simply added a section right on top that said:

[SOFTWARE\\Electronic Arts\\RoadRash 95]
@=""
"Path"="D:\\"
"CheckDialup"=hex:00
"ChatState"=hex:02
"MiniDash"=hex:00
"OpponentList"=hex:01 

This was because there was an entry right on top that said, ";; All keys are relative to \\Machine". And now when I run


sudipta@Hogwarts:~/roadrash$ wine ROADRASH.EXE

I get







Viola! Ah the joys of kicking the next guy off the road... :D