Hello Aharon, Tony, There are now three variants of dfa.h and dfa.c in use in various GNU projects: - in GNU grep, - in GNU gawk, - in GNU gettext. All of them have different bugs and different fixes applied.
Last week, while testing the GNU grep prerelease, I had to report fixes for things that were already fixed in GNU gettext. Now I get a report about a crash caused by a buffer overrun [1] that appears to be present in GNU grep and GNU gettext, but fixed in GNU gawk. This is messy. What can we do to remedy this? I propose to merge the three forks - they are similar enough that a merge can be done in a couple of hours -, and then host the "upstream" dfa.c in gnulib. gnulib was created for the purpose of sharing common GNU source code. There are now files shared between coreutils, tar, gettext, m4, diffutils, and many other packages. gettext would then get the latest copy of dfa.c through gnulib-tool. gawk and grep, AFAICS, don't use gnulib-tool; for these packages the copy will have to be manual. So, what I offer and expect is: - I offer to do the merge this time now, - I (or the other gnulib maintainers) put in changes and fixes that you report (until you get gnulib git write access by yourself), - When you make changes to dfa.c in your projects, you notify gnulib about it. How does that sound? Would you like to collaborate on this? Bruno [1] https://bugzilla.redhat.com/show_bug.cgi?id=483181