From 6aebaa660cd610c0611754c82762ccd12923c8aa Mon Sep 17 00:00:00 2001 From: CoprDistGit Date: Fri, 21 Apr 2023 03:08:32 +0000 Subject: automatic import of python-cle --- .gitignore | 1 + python-cle.spec | 204 +++++++++++++++++++++++++++++++++++++++++--------------- sources | 2 +- 3 files changed, 151 insertions(+), 56 deletions(-) diff --git a/.gitignore b/.gitignore index 3fa6f46..c5a624f 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /cle-9.2.41.tar.gz +/cle-9.2.47.tar.gz diff --git a/python-cle.spec b/python-cle.spec index 24aa28a..dfa73e4 100644 --- a/python-cle.spec +++ b/python-cle.spec @@ -1,11 +1,11 @@ %global _empty_manifest_terminate_build 0 Name: python-cle -Version: 9.2.41 +Version: 9.2.47 Release: 1 Summary: | License: BSD-2-Clause URL: https://github.com/angr/cle -Source0: https://mirrors.nju.edu.cn/pypi/web/packages/62/4f/1f600989c64cf4b3920b439ff339065d589f8010785298e30d53770a9fc8/cle-9.2.41.tar.gz +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/6b/36/38e093b571b15e88d93d3232a8037a60453990c1bd338fafd72528606364/cle-9.2.47.tar.gz BuildArch: noarch Requires: python3-pefile @@ -13,19 +13,39 @@ Requires: python3-pyelftools Requires: python3-pyvex Requires: python3-sortedcontainers Requires: python3-arpy +Requires: python3-furo +Requires: python3-myst-parser +Requires: python3-sphinx +Requires: python3-sphinx-autodoc-typehints Requires: python3-minidump Requires: python3-pypcode Requires: python3-cffi Requires: python3-pyxbe %description -[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) +# CLE +[![Latest Release](https://img.shields.io/pypi/v/cle.svg)](https://pypi.python.org/pypi/cle/) +[![Python Version](https://img.shields.io/pypi/pyversions/cle)](https://pypi.python.org/pypi/cle/) +[![PyPI Statistics](https://img.shields.io/pypi/dm/cle.svg)](https://pypistats.org/packages/cle) +[![License](https://img.shields.io/github/license/angr/cle.svg)](https://github.com/angr/cle/blob/master/LICENSE) + CLE loads binaries and their associated libraries, resolves imports and provides an abstraction of process memory the same way as if it was loader by the OS's loader. -# Installation -`$ pip install cle` -# Usage example + +## Project Links +Project repository: https://github.com/angr/cle + +Documentation: https://api.angr.io/projects/cle/en/latest/ + +## Installation + +```sh +pip install cle +``` + +## Usage example + ```python >>> import cle >>> ld = cle.Loader("/bin/ls") @@ -48,6 +68,7 @@ the OS's loader. >>> irsb.pp() IRSB { t0:Ity_I32 t1:Ity_I32 t2:Ity_I32 t3:Ity_I64 t4:Ity_I64 t5:Ity_I64 t6:Ity_I32 t7:Ity_I64 t8:Ity_I32 t9:Ity_I64 t10:Ity_I64 t11:Ity_I64 t12:Ity_I64 t13:Ity_I64 t14:Ity_I64 + 15 | ------ IMark(0x4048d0, 2, 0) ------ 16 | t5 = 32Uto64(0x00000000) 17 | PUT(rbp) = t5 @@ -80,27 +101,38 @@ IRSB { NEXT: PUT(rip) = t14; Ijk_Boring } ``` -# Valid options + +## Valid options + For a full listing and description of the options that can be provided to the loader and the methods it provides, please examine the docstrings in `cle/loader.py`. If anything is unclear or poorly documented (there is much) please complain through whatever channel you feel appropriate. -# Loading Backends + +## Loading Backends + CLE's loader is implemented in the Loader class. There are several backends that can be used to load a single file: - - ELF, as its name says, loads ELF binaries. ELF files loaded this way are - statically parsed using PyElfTools. - - PE is a backend to load Microsoft's Portable Executable format, - effectively Windows binaries. It uses the (optional) `pefile` module. - - Mach-O is a backend to load, you guessed it, Mach-O binaries. It is - subject to several limitations, which you can read about in the - [readme in the macho directory](backends/macho/README.md) - - Blob is a backend to load unknown data. It requires that you specify - the architecture it would be run on, in the form of a class from - ArchInfo. + + - ELF, as its name says, loads ELF binaries. ELF files loaded this way are + statically parsed using PyElfTools. + + - PE is a backend to load Microsoft's Portable Executable format, + effectively Windows binaries. It uses the (optional) `pefile` module. + + - Mach-O is a backend to load, you guessed it, Mach-O binaries. It is + subject to several limitations, which you can read about in the + [readme in the macho directory](backends/macho/README.md) + + - Blob is a backend to load unknown data. It requires that you specify + the architecture it would be run on, in the form of a class from + ArchInfo. + Which backend you use can be specified as an argument to Loader. If left unspecified, the loader will pick a reasonable default. -# Finding shared libraries + +## Finding shared libraries + - If the `auto_load_libs` option is set to False, the Loader will not automatically load libraries requested by loaded objects. Otherwise... - The loader determines which shared objects are needed when loading @@ -114,10 +146,12 @@ unspecified, the loader will pick a reasonable default. libc6-powerpc-cross on Debian - needs emdebian repos) - in the system, but with mismatched version numbers from what is specified as a dependency, if the `ignore_import_version_numbers` option is True + - If no binary is found with the correct architecture, the loader raises an exception if `except_missing_libs` option is True. Otherwise it simply leaves the dependencies unresolved. + %package -n python3-cle Summary: | Provides: python-cle @@ -125,13 +159,29 @@ BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-cle -[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) +# CLE +[![Latest Release](https://img.shields.io/pypi/v/cle.svg)](https://pypi.python.org/pypi/cle/) +[![Python Version](https://img.shields.io/pypi/pyversions/cle)](https://pypi.python.org/pypi/cle/) +[![PyPI Statistics](https://img.shields.io/pypi/dm/cle.svg)](https://pypistats.org/packages/cle) +[![License](https://img.shields.io/github/license/angr/cle.svg)](https://github.com/angr/cle/blob/master/LICENSE) + CLE loads binaries and their associated libraries, resolves imports and provides an abstraction of process memory the same way as if it was loader by the OS's loader. -# Installation -`$ pip install cle` -# Usage example + +## Project Links +Project repository: https://github.com/angr/cle + +Documentation: https://api.angr.io/projects/cle/en/latest/ + +## Installation + +```sh +pip install cle +``` + +## Usage example + ```python >>> import cle >>> ld = cle.Loader("/bin/ls") @@ -154,6 +204,7 @@ the OS's loader. >>> irsb.pp() IRSB { t0:Ity_I32 t1:Ity_I32 t2:Ity_I32 t3:Ity_I64 t4:Ity_I64 t5:Ity_I64 t6:Ity_I32 t7:Ity_I64 t8:Ity_I32 t9:Ity_I64 t10:Ity_I64 t11:Ity_I64 t12:Ity_I64 t13:Ity_I64 t14:Ity_I64 + 15 | ------ IMark(0x4048d0, 2, 0) ------ 16 | t5 = 32Uto64(0x00000000) 17 | PUT(rbp) = t5 @@ -186,27 +237,38 @@ IRSB { NEXT: PUT(rip) = t14; Ijk_Boring } ``` -# Valid options + +## Valid options + For a full listing and description of the options that can be provided to the loader and the methods it provides, please examine the docstrings in `cle/loader.py`. If anything is unclear or poorly documented (there is much) please complain through whatever channel you feel appropriate. -# Loading Backends + +## Loading Backends + CLE's loader is implemented in the Loader class. There are several backends that can be used to load a single file: - - ELF, as its name says, loads ELF binaries. ELF files loaded this way are - statically parsed using PyElfTools. - - PE is a backend to load Microsoft's Portable Executable format, - effectively Windows binaries. It uses the (optional) `pefile` module. - - Mach-O is a backend to load, you guessed it, Mach-O binaries. It is - subject to several limitations, which you can read about in the - [readme in the macho directory](backends/macho/README.md) - - Blob is a backend to load unknown data. It requires that you specify - the architecture it would be run on, in the form of a class from - ArchInfo. + + - ELF, as its name says, loads ELF binaries. ELF files loaded this way are + statically parsed using PyElfTools. + + - PE is a backend to load Microsoft's Portable Executable format, + effectively Windows binaries. It uses the (optional) `pefile` module. + + - Mach-O is a backend to load, you guessed it, Mach-O binaries. It is + subject to several limitations, which you can read about in the + [readme in the macho directory](backends/macho/README.md) + + - Blob is a backend to load unknown data. It requires that you specify + the architecture it would be run on, in the form of a class from + ArchInfo. + Which backend you use can be specified as an argument to Loader. If left unspecified, the loader will pick a reasonable default. -# Finding shared libraries + +## Finding shared libraries + - If the `auto_load_libs` option is set to False, the Loader will not automatically load libraries requested by loaded objects. Otherwise... - The loader determines which shared objects are needed when loading @@ -220,21 +282,39 @@ unspecified, the loader will pick a reasonable default. libc6-powerpc-cross on Debian - needs emdebian repos) - in the system, but with mismatched version numbers from what is specified as a dependency, if the `ignore_import_version_numbers` option is True + - If no binary is found with the correct architecture, the loader raises an exception if `except_missing_libs` option is True. Otherwise it simply leaves the dependencies unresolved. + %package help Summary: Development documents and examples for cle Provides: python3-cle-doc %description help -[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) +# CLE +[![Latest Release](https://img.shields.io/pypi/v/cle.svg)](https://pypi.python.org/pypi/cle/) +[![Python Version](https://img.shields.io/pypi/pyversions/cle)](https://pypi.python.org/pypi/cle/) +[![PyPI Statistics](https://img.shields.io/pypi/dm/cle.svg)](https://pypistats.org/packages/cle) +[![License](https://img.shields.io/github/license/angr/cle.svg)](https://github.com/angr/cle/blob/master/LICENSE) + CLE loads binaries and their associated libraries, resolves imports and provides an abstraction of process memory the same way as if it was loader by the OS's loader. -# Installation -`$ pip install cle` -# Usage example + +## Project Links +Project repository: https://github.com/angr/cle + +Documentation: https://api.angr.io/projects/cle/en/latest/ + +## Installation + +```sh +pip install cle +``` + +## Usage example + ```python >>> import cle >>> ld = cle.Loader("/bin/ls") @@ -257,6 +337,7 @@ the OS's loader. >>> irsb.pp() IRSB { t0:Ity_I32 t1:Ity_I32 t2:Ity_I32 t3:Ity_I64 t4:Ity_I64 t5:Ity_I64 t6:Ity_I32 t7:Ity_I64 t8:Ity_I32 t9:Ity_I64 t10:Ity_I64 t11:Ity_I64 t12:Ity_I64 t13:Ity_I64 t14:Ity_I64 + 15 | ------ IMark(0x4048d0, 2, 0) ------ 16 | t5 = 32Uto64(0x00000000) 17 | PUT(rbp) = t5 @@ -289,27 +370,38 @@ IRSB { NEXT: PUT(rip) = t14; Ijk_Boring } ``` -# Valid options + +## Valid options + For a full listing and description of the options that can be provided to the loader and the methods it provides, please examine the docstrings in `cle/loader.py`. If anything is unclear or poorly documented (there is much) please complain through whatever channel you feel appropriate. -# Loading Backends + +## Loading Backends + CLE's loader is implemented in the Loader class. There are several backends that can be used to load a single file: - - ELF, as its name says, loads ELF binaries. ELF files loaded this way are - statically parsed using PyElfTools. - - PE is a backend to load Microsoft's Portable Executable format, - effectively Windows binaries. It uses the (optional) `pefile` module. - - Mach-O is a backend to load, you guessed it, Mach-O binaries. It is - subject to several limitations, which you can read about in the - [readme in the macho directory](backends/macho/README.md) - - Blob is a backend to load unknown data. It requires that you specify - the architecture it would be run on, in the form of a class from - ArchInfo. + + - ELF, as its name says, loads ELF binaries. ELF files loaded this way are + statically parsed using PyElfTools. + + - PE is a backend to load Microsoft's Portable Executable format, + effectively Windows binaries. It uses the (optional) `pefile` module. + + - Mach-O is a backend to load, you guessed it, Mach-O binaries. It is + subject to several limitations, which you can read about in the + [readme in the macho directory](backends/macho/README.md) + + - Blob is a backend to load unknown data. It requires that you specify + the architecture it would be run on, in the form of a class from + ArchInfo. + Which backend you use can be specified as an argument to Loader. If left unspecified, the loader will pick a reasonable default. -# Finding shared libraries + +## Finding shared libraries + - If the `auto_load_libs` option is set to False, the Loader will not automatically load libraries requested by loaded objects. Otherwise... - The loader determines which shared objects are needed when loading @@ -323,12 +415,14 @@ unspecified, the loader will pick a reasonable default. libc6-powerpc-cross on Debian - needs emdebian repos) - in the system, but with mismatched version numbers from what is specified as a dependency, if the `ignore_import_version_numbers` option is True + - If no binary is found with the correct architecture, the loader raises an exception if `except_missing_libs` option is True. Otherwise it simply leaves the dependencies unresolved. + %prep -%autosetup -n cle-9.2.41 +%autosetup -n cle-9.2.47 %build %py3_build @@ -368,5 +462,5 @@ mv %{buildroot}/doclist.lst . %{_docdir}/* %changelog -* Wed Mar 08 2023 Python_Bot - 9.2.41-1 +* Fri Apr 21 2023 Python_Bot - 9.2.47-1 - Package Spec generated diff --git a/sources b/sources index 85a1481..2056fae 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -8319e297d5549acf2b1c2a36fb35e791 cle-9.2.41.tar.gz +f8dfb527d6f4e0c297efeeb81d09a754 cle-9.2.47.tar.gz -- cgit v1.2.3