Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160729013931.GA719@openwall.com>
Date: Fri, 29 Jul 2016 04:39:31 +0300
From: Solar Designer <solar@...nwall.com>
To: john-users@...ts.openwall.com
Subject: Re: specify home ($JOHN) at compiletime

On Thu, Jul 28, 2016 at 05:35:20PM +0200, Matus UHLAR - fantomas wrote:
> On 28.07.16 16:06, Matus UHLAR - fantomas wrote:
> >(how) can I specify john's home directory (aka $JOHN) at compile time?
> >seems that the compile directory is the default and I haven't found how to
> >change it...
> 
> seems I have to redefine my question.
> 
> when having john compiled in a directory
> /home/uhlar/src/debian/john/bleeding-jumbo/run/
> 
> then john.pot is stored as
> /home/uhlar/src/debian/john/bleeding-jumbo/run/john.pot

That's as it always was, and should be, for user-local builds.  However,
I think you misinterpret it: this isn't necessarily the directory you
compiled John in, but rather it's the directory the "john" binary that
you invoked is currently in.  So if you move or copy the "run" directory
of this build e.g. to /home/uhlar/john, then /home/uhlar/john/john will
search for its john.pot in /home/uhlar/john/john.pot.

> instead of expected ~/.john/john.pot

This pathname is only used by system-wide builds, such as if you
installed a package of John provided by your distro.

You can make a system-wide build by setting -DJOHN_SYSTEMWIDE=1 in
CFLAGS at build time, but this is normally only done by package(r)s of
John, not by end-users, and such packages are expected to provide at
least the JOHN_SYSTEMWIDE_HOME directory (normally /usr/share/john) as
well.  If you're merely building John for your own use, don't bother
with this.

If you're in fact trying to create a package of John, then you may use
this as an example:

http://cvsweb.openwall.com/cgi/cvsweb.cgi/Owl/packages/john/john.spec?rev=HEAD

I agree this is tricky.  To better support packagers, we should probably
have a configure option in jumbo, now that it's autoconf'ed anyway, to
enable system-wide build and a "make install".  magnum?  It might remain
tricky to also support the runtime fallbacks in such builds, though.

Alexander

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.