Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Fri, 29 Jun 2012 16:06:33 +0200
From: Frank Dittrich <>
Subject: ./john --list= (was: What's wrong with dynamic_7)

On 06/29/2012 03:31 PM, jfoug wrote:
> I would like to trash dyna7, but have not yet.  I would consider it strongly
> deprecated.  Dyna6 should be used instead.
> If you want to do anything with it, you MUST use the separator switch.
> ./john --format=dynamic_7 --test
> $ ../run/john -test=0 -form=dynamic_7 --field-sep=_
> using field sep char '_' (0x5f)
> Warning: doing quick benchmarking - the performance numbers will be
> inaccurate
> Benchmarking: dynamic_7: md5(md5($p).$s) (vBulletin) [128/128 SSE2
> intrinsics 10x4x3]... DONE
> Many salts:     240000 c/s real, 240000 c/s virtual
> Only one salt:  120000 c/s real, 120000 c/s virtual
> Also, adding a -list=list or -list=help would help a lot for people that do
> NOT know the -list= options, vs simply stating to 'read OPTIONS' 

$ ./john |grep list=
                          For a full list of NAME use --list=encodings
--list=WHAT               list capabilities, see doc/OPTIONS or --list=?

$ grep -- --list ../doc/OPTIONS
doc/ENCODINGS.   --list=encodings gives a list of all handled encodings.
--list=subformats         displays all the built-in dynamic formats,
--list=WHAT               list capabilities
available. Use --list=? for a list of valid arguments. For example, the now
deprecated --subformat=LIST is now --list=subformats.
--list=externals          list all external modes/filters
--list=ext-modes          list external modes [has a generate()]
--list=ext-filters        list external filters, including modes with a
--list=ext-filters-only   list external filters [lacks a generate()]
--list=formats            list all the supported formats in the sequence
--list=format-details     list all the suported formats in the same
sequence as
                          with --list=formats, but with additional details
--list=format-all-details list all the suported formats and their attributes
                          in the same sequence as with

$ ./john --list=?
subformats, inc-modes, rules, externals, ext-filters, ext-filters-only,
ext-modes, build-info, hidden-options, encodings, formats, format-details,
format-all-details, <conf section name>

Depending on your build, you also get

Not all options are listed in doc/OPTIONS, but the only one really worth
adding to doc/OPTIONS might be --list=build-info, since this could help
for bug reports.

On systems with bash >= 4, you should also be able to use bash
completion, see run/john.bash_completion), which will list these
possible completions for

$ ./john --list=[tab][tab]
?                   ext-modes           hidden-options
build-info          externals           inc-modes
encodings           format-all-details  rules
ext-filters         format-details      subformats
ext-filters-only    formats
(Only the john.conf section names are missing here.)

$./john -li[tab]
will complete to
$ ./john --list=

$ ./john --list=b[tab]
will complete to
$ ./john --list=build-info

$ ./john -li:en
will complete to
$ ./john -li:enncodings

But ./john --list=ma will not complete to markov (yet).
Even if

$ ./john --list=markov
will list all Markov subsection names.

$ ./john --list=options
Subsections of [options]:

$ ./john --list=list.external|head
Subsections of [list.external]:

$ ./john --list=list.external --config=dumb16.conf
Subsections of [list.external]:

May be we could list the same output as for --list=? if someone uses an
invalid value like help or list.
It has been this way for a while, until magnum added support to list the
names of subsections. Currently, we just exit(1) in that case, but as
far as I know, currently nobody tests the exit code of ./john


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.