|
Message-ID: <CAHNEV5Q7JXhHkxqyWWrrPZmx--GECAgpCnsnfJY4foiCh4JpiQ@mail.gmail.com>
Date: Mon, 4 May 2015 09:24:25 -0400
From: Mathieu Laprise <mathlaprise@...il.com>
To: john-dev@...ts.openwall.com
Subject: Re: [Johnny] Task 1.4.2 fork and OpenMP
Shinnok,
> Is it my understanding that the fix Solar committed allows for both
> pre-patch and post-patch JtR's to be handled in the same manner without us
> discriminating JtR versions in Johnny yet?
>
I think yes. For pre-patch, Johnny will send signal sigterm to all the
children. For post-patch,Johnny will also send sigterm to anyone in the
process group and JtR will forward signal to children if they are still
alive. In the worse case, I don't think that children receiving two sigterm
in a row is gonna make any problems ?
If yes, Mathieu, I think you need to change your override of
> JohnProcess::terminate() to not send SIGTERM twice in the OS_FORK
> case(looking over your Github branch). Also you should use Q_OS_ defines to
> probe for OS'es instead of GCC builtins(or otherwise)?
1) Okay, for define, I'll use Q_OS_UNIX instead of gcc. 2) Does JtR --fork
works on OS X too since it's based on unix? 3) Do you mean
void JohnProcess::terminate()
{
#if OS_FORK
if(processId() != 0)
{
::kill(-processId(),SIGTERM);
}
*+ #else*
* QProcess::terminate();*
*#endif*
}
or find a way to detect version number of john
void JohnProcess::terminate()
{
#if OS_FORK
if(processId() != 0 && version <= pre_patch_version)
{
::kill(-processId(),SIGTERM);
}
*#else*
* QProcess::terminate();*
*#endif*
}
Content of type "text/html" skipped
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.