Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Sat, 13 Oct 2007 19:31:55 +0400
From: Solar Designer <>
Subject: Re: DOS build of JtR (was: helpppppppppp!!!!!)

I was unsure whether to approve this message with the meaningless
Subject and all the exclamation marks, and obviously I don't care to
help that person much. ;-)

However, there are official builds of JtR 1.7 and even of for
DOS, so it may be worth discussing this on the list briefly.

Some might find it curious that the official builds of JtR 1.7 and for Win32 appear to no longer work on Win9x, but the DOS build
does work on Win9x.  As I believe I did not break anything relevant in
JtR code since 1.6, Win32 builds of which worked on Win9x just fine, I
attribute this to changes in newer Cygwin.  The reason I am mentioning
this is that it adds some value to the DOS builds, which would otherwise
be of even less use.

Since I hardly do any testing on this kind of systems myself, the
above is based on user reports only.

On Sat, Oct 13, 2007 at 02:50:10PM +0100, prashast tripathi wrote:
> i downloaded john but when i executed it from ms-dos

What version of John?  What version of MS-DOS?  Is it a clean DOS boot
or are you running from Windows (what version?) or from another OS (name
it if so)?

> i got an error msg "UNABLE TO LOAD MAIN FILE"

The DOS build includes a tiny wrapper around the main program.  The
wrapper is what you invoke under the name of "" (or just
"john").  Its purpose is to emulate Unix symlinks without consuming too
much disk space on copies of the actual program, as well as to ensure
consistent alignment of free DOS memory blocks for optimal performance
(this used to make some difference on the original Pentium, not sure
about newer CPUs).

This wrapper tries to load and pass control to "john.bin", which it
assumes is a DOS build of John made with DJGPP (yes, there are DJGPP
specifics).  If it fails to load that file for any reason (e.g., file
not found or not enough DOS memory), or even if it fails to patch the
program in memory a bit (yes, that's a hack), it reports the error
mentioned above ("Unable to load main program").

So with normal usage of John, this error message should not be seen -
however, it may occur under low memory conditions (running in a "DOS
window" under another OS? or have large resident programs in DOS?) or
when the "john.bin" file is missing or corrupt.

As to memory usage by the DOS build of John, it's only the program
itself that has to fit in low DOS memory.  This limitation does not
apply to the password files, etc. that John loads once it's started.
So this build should be perfectly usable on multi-megabyte files.

Alexander Peslyak <solar at>
GPG key ID: 5B341F15  fp: B3FB 63F4 D7A3 BCCC 6F6E  FC55 A2FC 027C 5B34 1F15 - bringing security into open computing environments

To unsubscribe, e-mail and reply
to the automated confirmation request that will be sent to you.

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.