-
Notifications
You must be signed in to change notification settings - Fork 2.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Trying to build with rexgen enabled #4640
Comments
This helped,
|
@frank-dittrich What do you suggest we do about the regex mode for our next release? I think the options include: drop it, add documentation on known issues and how to overcome them, include a patch against rexgen and documentation on applying it, bundle a version of rexgen in jumbo (in which case we'd end up maintaining it ourselves, but could as well enable it by default), or leave everything as-is. |
I suggest to still support it for now, but warn in doc/README.librexgen and configure, that rexgen still contains some serious bugs and that support might have to be dropped in future releases, because rexgen appears to be not longer maintained. I'll try to come up with appropriate wording, and detailed build instructions. While in some areas there are improvements
There are still some serious bugs.
|
for
I found a solution which at least avoids the segfault, but rejecting
My clumsy "fix" breaks output for Another known segfault:
|
Now that I managed to build john with rexgen support, I noticed that combining --regex with other modes doesn't work.
I need to dig into it to find out whether this has been caused by changes in librexgen or john (or both). |
Due to the problems I discovered with trying to make john --regex work with latest librexgen, I closed #4642 Based on janstarke/rexgen@5b2f4b1 (which is the latest commit which allows building librexgen without problems) I prepared a new patch. Now, all the segfault I got with rexgen 2.1.3 are gone, several things that didn't work with 2.1.3 now work without problems. No more problems with non-ascii characters (produced a segfault with 2.1.3):
No segfaults:
In some cases, there isn't any error message providing details about illegal regular expressions, but IMHO that's preferable to a librexgen version causing segfaults:
Usage of '\0' in combination with --wordlist, --prince, --incemental also works:
However, I couldn't make
All other ttings I tried failed similarily. I think making If we don't get
and adjusting doc/README.libconfig. But I would prefer if someone else could look into this and figure out how to fix it. |
Please assume that this will stay broken and send a PR with the above (or amend your existing one, but have this as a separate commit that we can easily revert in case someone does figure out how to fix this functionality later). Thank you! |
using
So, in April 2015, this must have worked.
rexgen version at that time was 1.2.3 With my Fedora 32 toolchain I wasn't even able to build that rexgen version. On super, with the oldest toolchain, I managed to checkout commit 45bbb16 and build john after moving all plugin formats out of the way and disabling cuda. But trying to build the old librexgen version from march, 2015 on super (with the oldest toolchain) failed
I really don't know what else to try. |
Latest rexgen doesn't even compile anymore (on Fedora 32), and it looks like https://github.com/janstarke/rexgen hasn't been maintained for almost 2 years.
To be able to compile latest rexgen, I applied this change:
Apparently, applying janstarke/rexgen#64 on top of janstarke/rexgen@585e86d also helps.
The
c_regex_cb_mb
interface has been changed, and I had to make 2 warnings disappear.The
c_regex_cb_mb
interface has been changed somewhere in the middle of either the 2.0.8 or 2.0.9 release. So we also might need to adjust these 2 lines, changing0x020006
to0x020103
(or may be0x020009
):and doc/README.librexgen also still mentions
Unfortunately, due to these /usr/local/include/librexgen/c/ApiContext.h lines
build fails like this:
I have to give up now, did already spend more time on this than I intended to, and I don't know when I'll have time to continue.
Too bad that rexgen isn't maintained any longer. For certain tasks I loved to use john's --regex mode.
The text was updated successfully, but these errors were encountered: