Skip to content
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

Migrate to "afl++" from "afl" #770

Conversation

ilammy
Copy link
Collaborator

@ilammy ilammy commented Feb 2, 2021

Following #769, backport #766 onto stable too to fix the build.

Ignore changes in CHANGELOG.md, there is no "Unreleased" section on the stable branch. It will get here in due time.

Checklist

  • Change is covered by automated tests
    Oh why yes, it is covered.

* Migrate to "afl++" from "afl"

The original "afl" [1] has been abandoned and is not maintained since
2017. "afl++" [2] is its replacement. Since it's a fork, it has mostly
compatible command line, and more features.

[1]: http://lcamtuf.coredump.cx/afl/
[2]: https://github.com/AFLplusplus/AFLplusplus

The original afl is currently being phased out from distributions.
In particular, it's gone from whatever repo list GitHub Actions use,
breaking our build. Migrate to "afl++" instead.

Not all operating systems ship with "afl++" though. For example, it's
still not available in binary form on macOS via Homebrew. Therefore,
don't jump the gun and don't update the Makefile to use "afl++"-only
features. (However, it would be nice to use them if available.)

* Pin "fuzzing" job to Ubuntu 18.04

As noted in the comment, GitHub Actions runners are schizophrenic and
sometimes believe that they come from the future where the latest Ubuntu
image works correctly. Don't let them be fooled, use 18.04 for now.

(cherry picked from commit 0c6a44d)

Ignore changes in CHANGELOG.md, there is no "Unreleased" section on the
"stable" branch. It will get here in due time.
@ilammy ilammy added the backport Patches to backport to currently supported releases label Feb 2, 2021
@ilammy ilammy requested review from vixentael and a team February 2, 2021 16:58
@ilammy ilammy added the infrastructure Automated building and packaging label Feb 2, 2021
@ilammy
Copy link
Collaborator Author

ilammy commented Feb 2, 2021

Oh well, it seems even more stuff needs to be backported as the jobs are failing. Since this PR touches some Themis Core files, it should trigger all the jobs and expose whatever is currently broken for stable CI.

@ilammy
Copy link
Collaborator Author

ilammy commented Feb 3, 2021

I've submitted fixes to the issues above. These are separate pull requests so that history clearly shows what has been cherry-picked from where (instead of one squashed commit "fix stuff by integrating all these changes").

Once those three are all merged and this one is added on top, I'd expect stable build to go green at last.

@ilammy ilammy merged commit 40b25e2 into cossacklabs:stable Feb 3, 2021
@ilammy ilammy deleted the unbreak-circle-ci-on-stable-for-real-this-time branch February 3, 2021 13:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport Patches to backport to currently supported releases infrastructure Automated building and packaging
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants