%global _empty_manifest_terminate_build 0 Name: python-pyinjector Version: 1.1.1 Release: 1 Summary: A tool/library allowing dynamic library injection into running processes License: MIT License URL: https://github.com/kmaork/pyinjector Source0: https://mirrors.nju.edu.cn/pypi/web/packages/b5/3b/2fc45efd304246661f5b552fcc2c5041b7ddafe511400774d60387b595b3/pyinjector-1.1.1.zip %description # Pyinjector [![Tests (GitHub Actions)](https://github.com/kmaork/pyinjector/workflows/Tests/badge.svg)](https://github.com/kmaork/pyinjector) [![PyPI Supported Python Versions](https://img.shields.io/pypi/pyversions/pyinjector.svg)](https://pypi.python.org/pypi/pyinjector/) [![PyPI version](https://badge.fury.io/py/pyinjector.svg)](https://badge.fury.io/py/pyinjector) [![Downloads](https://pepy.tech/badge/pyinjector)](https://pepy.tech/project/pyinjector) [![GitHub license](https://img.shields.io/github/license/kmaork/pyinjector)](https://github.com/kmaork/pyinjector/blob/master/LICENSE.txt) A cross-platform tool/library allowing dynamic library injection into running processes. If you are looking for a way to inject *python* code into a running process, try the [hypno](https://github.com/kmaork/hypno) library. Pyinjector has no external python dependencies. It is implemented as a python wrapper for [kubo/injector](https://github.com/kubo/injector). ### Installation ```shell script pip install pyinjector ``` Both source distributions, `manylinux2010` wheels and windows wheels are uploaded to Pypi for every release. ### Usage #### CLI ```shell script inject ``` #### API ```python from pyinjector import inject inject(pid, path_to_so_file) ``` ### How it works We build [kubo/injector](https://github.com/kubo/injector) as a C-extension and use its interface using `ctypes`. [kubo/injector](https://github.com/kubo/injector) is an awesome repo allowing to inject shared libraries into running processes both on windows (`CreateRemoteThread`+`LoadLibrary`) and on linux (`ptrace`). %package -n python3-pyinjector Summary: A tool/library allowing dynamic library injection into running processes Provides: python-pyinjector BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip BuildRequires: python3-cffi BuildRequires: gcc BuildRequires: gdb %description -n python3-pyinjector # Pyinjector [![Tests (GitHub Actions)](https://github.com/kmaork/pyinjector/workflows/Tests/badge.svg)](https://github.com/kmaork/pyinjector) [![PyPI Supported Python Versions](https://img.shields.io/pypi/pyversions/pyinjector.svg)](https://pypi.python.org/pypi/pyinjector/) [![PyPI version](https://badge.fury.io/py/pyinjector.svg)](https://badge.fury.io/py/pyinjector) [![Downloads](https://pepy.tech/badge/pyinjector)](https://pepy.tech/project/pyinjector) [![GitHub license](https://img.shields.io/github/license/kmaork/pyinjector)](https://github.com/kmaork/pyinjector/blob/master/LICENSE.txt) A cross-platform tool/library allowing dynamic library injection into running processes. If you are looking for a way to inject *python* code into a running process, try the [hypno](https://github.com/kmaork/hypno) library. Pyinjector has no external python dependencies. It is implemented as a python wrapper for [kubo/injector](https://github.com/kubo/injector). ### Installation ```shell script pip install pyinjector ``` Both source distributions, `manylinux2010` wheels and windows wheels are uploaded to Pypi for every release. ### Usage #### CLI ```shell script inject ``` #### API ```python from pyinjector import inject inject(pid, path_to_so_file) ``` ### How it works We build [kubo/injector](https://github.com/kubo/injector) as a C-extension and use its interface using `ctypes`. [kubo/injector](https://github.com/kubo/injector) is an awesome repo allowing to inject shared libraries into running processes both on windows (`CreateRemoteThread`+`LoadLibrary`) and on linux (`ptrace`). %package help Summary: Development documents and examples for pyinjector Provides: python3-pyinjector-doc %description help # Pyinjector [![Tests (GitHub Actions)](https://github.com/kmaork/pyinjector/workflows/Tests/badge.svg)](https://github.com/kmaork/pyinjector) [![PyPI Supported Python Versions](https://img.shields.io/pypi/pyversions/pyinjector.svg)](https://pypi.python.org/pypi/pyinjector/) [![PyPI version](https://badge.fury.io/py/pyinjector.svg)](https://badge.fury.io/py/pyinjector) [![Downloads](https://pepy.tech/badge/pyinjector)](https://pepy.tech/project/pyinjector) [![GitHub license](https://img.shields.io/github/license/kmaork/pyinjector)](https://github.com/kmaork/pyinjector/blob/master/LICENSE.txt) A cross-platform tool/library allowing dynamic library injection into running processes. If you are looking for a way to inject *python* code into a running process, try the [hypno](https://github.com/kmaork/hypno) library. Pyinjector has no external python dependencies. It is implemented as a python wrapper for [kubo/injector](https://github.com/kubo/injector). ### Installation ```shell script pip install pyinjector ``` Both source distributions, `manylinux2010` wheels and windows wheels are uploaded to Pypi for every release. ### Usage #### CLI ```shell script inject ``` #### API ```python from pyinjector import inject inject(pid, path_to_so_file) ``` ### How it works We build [kubo/injector](https://github.com/kubo/injector) as a C-extension and use its interface using `ctypes`. [kubo/injector](https://github.com/kubo/injector) is an awesome repo allowing to inject shared libraries into running processes both on windows (`CreateRemoteThread`+`LoadLibrary`) and on linux (`ptrace`). %prep %autosetup -n pyinjector-1.1.1 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-pyinjector -f filelist.lst %dir %{python3_sitearch}/* %files help -f doclist.lst %{_docdir}/* %changelog * Fri May 05 2023 Python_Bot - 1.1.1-1 - Package Spec generated