Average Ratings 0 Ratings
Average Ratings 0 Ratings
Description
Atheris is a Python fuzzing engine guided by coverage, designed to test both Python code and native extensions developed for CPython. It is built on the foundation of libFuzzer, providing an effective method for identifying additional bugs when fuzzing native code. Atheris is compatible with Linux (both 32- and 64-bit) and Mac OS X, supporting Python versions ranging from 3.6 to 3.10. Featuring an integrated libFuzzer, it is well-suited for fuzzing Python applications, but when targeting native extensions, users may need to compile from source to ensure compatibility between the libFuzzer version in Atheris and their Clang installation. Since Atheris depends on libFuzzer, which is a component of Clang, users of Apple Clang will need to install a different version of LLVM, as the default does not include libFuzzer. The implementation of Atheris as a coverage-guided, mutation-based fuzzer (LibFuzzer) simplifies the setup process by eliminating the need for input grammar definition. However, this approach can complicate the generation of inputs for code that processes intricate data structures. Consequently, while Atheris offers ease of use in many scenarios, it may face challenges when dealing with more complex parsing requirements.
Description
Cython serves as an optimizing static compiler designed for both the Python language and the enhanced Cython language, which is rooted in Pyrex. It simplifies the process of creating C extensions for Python, making it as straightforward as writing Python itself. With Cython, developers can harness the strengths of both Python and C, enabling seamless interactions between Python code and C or C++ code at any point. By incorporating static type declarations in a Python-like syntax, users can easily enhance the performance of their readable Python code to that of plain C. The tool also provides combined source code level debugging, allowing developers to efficiently identify issues within their Python, Cython, and C code. Cython is particularly adept at managing large datasets, such as multi-dimensional NumPy arrays, facilitating the development of applications within the expansive and robust CPython ecosystem. Notably, the Cython language extends the capabilities of Python by allowing direct calls to C functions and the declaration of C types for variables and class attributes, ultimately enhancing the development experience. This fusion of languages not only broadens the possibilities for developers but also streamlines the process of optimizing Python applications.
API Access
Has API
Yes
API Access
Has API
Yes
Integrations
Python
Yes
C
No
C++
No
Fortran
No
Gensim
No
Google OSS-Fuzz
Yes
LibFuzzer
Yes
NumPy
No
PyCharm
No
scikit-image
No
Integrations
Python
Yes
C
Yes
C++
Yes
Fortran
Yes
Gensim
Yes
Google OSS-Fuzz
No
LibFuzzer
No
NumPy
Yes
PyCharm
Yes
scikit-image
Yes
Pricing Details
Free
Free Trial
No
Free Version
Yes
Pricing Details
Free
Free Trial
No
Free Version
Yes
Deployment
Web-Based
No
On-Premises
No
iPhone App
No
iPad App
No
Android App
No
Windows
No
Mac
Yes
Linux
Yes
Chromebook
No
Deployment
Web-Based
No
On-Premises
No
iPhone App
No
iPad App
No
Android App
No
Windows
Yes
Mac
Yes
Linux
Yes
Chromebook
No
Customer Support
Business Hours
No
Live Rep (24/7)
No
Online Support
Yes
Customer Support
Business Hours
No
Live Rep (24/7)
No
Online Support
Yes
Types of Training
Training Docs
Yes
Webinars
No
Live Training (Online)
No
In Person
No
Types of Training
Training Docs
Yes
Webinars
No
Live Training (Online)
No
In Person
No
Vendor Details
Company Name
Website
github.com/google/atheris
Vendor Details
Company Name
Cython
Country
United States
Website
cython.org