-
-
Notifications
You must be signed in to change notification settings - Fork 376
MapObserver should require Hash, not define a hash function #1977
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
Comments
If no one takes this in 48 hours, I will implement it myself. |
Sounds useful |
Hi I'd like to take up this issue. Also I'm not sure where the best place to ask this is. I'm interested in the GSOC project |
can you send a email to [email protected] |
@edwin1729 Can you indicate when you plan to attempt this? |
I've been trying to aflplusplus installed since yesterday.
I get
It's a resolved issue in rustc |
You may safely ignore that. |
Okay thanks. Is it alright if a send a pull request tomorrow? Is this time sensitive? |
Preferably before Wednesday, but I recognise that this is a holiday weekend so Friday works as well. |
Also, I still do have issues with running any of the example fuzzers (without changing the source code). I believed that the warning might be the cause of the errors (since there's many of them right before the backtrace) |
Hm, are you building with |
no |
That should work as well. I'm not sure what the issue is, but double check that you've installed all the required deps as listed in the README. |
|
AFL++ is not used in the example you are building. What exactly is the backtrace that you are seeing? |
|
Do you have the |
Yes they are. They're both on |
What is the actual error? You listed the warnings and the backtrace, but not the error. |
Sorry, I've updated the stacktrace with the output from the entire command. |
I'm guessing it's not finding clang. This is a pretty bad error message, though. @tokatoka @andreafioraldi, any ideas? I always just install with LLVM APT or Fedora 😅 |
I'll just try reinstalling, or building llvm from source tomorrow, if there's no obvious solution here. Thank you! |
The fuzzbench fuzzer uses the cmplog rtn llvm pass, make sure that is was
built. If libafl_cc cannot find your llvm installation is skips building
the passes.
You can force it to find your llvm config with an env:
LLVM_CONFIG=/path/to/llvm-config cargo make run
Il sab 30 mar 2024, 18:05 edwin1729 ***@***.***> ha scritto:
… I'll just try reinstalling, or building llvm from source tomorrow, if
there's no obvious solution here. Thank you!
—
Reply to this email directly, view it on GitHub
<#1977 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AD3LJ6WZ6ACOLBKWZ2NSN2DY23PFBAVCNFSM6AAAAABFNDJVUWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDAMRYGI4TOMRSGE>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
you should install the script from their website https://apt.llvm.org/ |
There is no Either I'm over complicating or missing something. What was your original idea @addisoncrump ? |
I've created a pull request to illustrate, the approach above (which I don't think is quite alright) #1989. Also, I don't think I will be able to complete this by Friday since I'll be traveling this week (tomorrow). Sorry for the late notice. I'm more than happy to complete it if its still unfinished on Saturday . The reason I say this is that the CI shows errors with python bindings. I'm guessing this might take while to debug. |
* Use hash_one function to make hash_simple a one-liner
* MapObserver implements Hash * Rename the hash utility function (in MapObserver) to hash_easy * Use hash_slice as a helper function to impl Hash trait * define_python_map_observer macro implements Hash trait * Also rename hash_easy to hash_simple * Rename hash_slice to hash_helper * hash_helper is used to define the implementation of hash function/trait * Factor out the Hash trait and function for runtime library structs (#1977) * Simplify hash_simple (of trait MapObserver) (#1977) * Use hash_one function to make hash_simple a one-liner * remove hash_helper --------- Co-authored-by: Edwin Fernando <[email protected]> Co-authored-by: Addison Crump <[email protected]>
MapObserver currently defines a function
hash
which is used to get the current hash of the map. Instead, MapObserver should have a trait requirement ofHash
so that it may be used with functions that acceptimpl Hash
types.Similarly,
hash_slice
should be deleted and usages replaced with the pre-defined Hasher::hash(&[T]).The text was updated successfully, but these errors were encountered: