forked from pool/python-pysnmp
- Update to version 7.1.1
* Reimplemented walkCmd and bulkWalkCmd. - Update to version 7.1.0 * Removed pyasn1.compat dependency. * Switched to async DNS resolver. - Update to version 7.0.3 * The high-level API (hlapi) extended to cover lightweight SNMP v1arch in hope to ease the use of packet-level SNMP API. * The signature of the hlapi .sendNotification() call has changed to accept *varBinds instead of a sequence of varBinds. - Update to version 7.0.2 * Fixed a duplicate item issue in bulkWalkCmd. - Update to version 7.0.1 * Many really old backward-compatibility code snippets removed. Most importantly, everything related to (non-standard) UNIX domain socket transport are gone. * The MIB instrumentation API overhauled in backward incompatible way: + MIB instrumentation methods signatures simplified to accept just var-binds (as var-arg), the rest of the parameters packed into opaque kwargs + CommandResponder application passes snmpEngine and optionally user-supplied cbCtx object throughout the MIB instrumentation methods. The goal is to let MIB objects access/modify whatever custom Python objects they need while being called back. * Cherry-picked many minor fixes from etingof/master branch. - Update to version 7.0.0 * Applied PEP8 recommended names. This breaks backward compatibility. - Update to version 6.2.6 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pysnmp?expand=0&rev=57
This commit is contained in:
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
.osc
|
3
pysnmp-5.0.28.tar.gz
Normal file
3
pysnmp-5.0.28.tar.gz
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:404f84ff5d8b737d4b86cf078e5908b899ed22ca0d9d26a28d9b105f289d3476
|
||||||
|
size 458256
|
3
pysnmp-6.2.4.tar.gz
Normal file
3
pysnmp-6.2.4.tar.gz
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:8b1346f561fdc53f13019c5ec2c108224b4935d5bb6d2c0133ca236bbae77665
|
||||||
|
size 413802
|
3
pysnmp-7.1.1.tar.gz
Normal file
3
pysnmp-7.1.1.tar.gz
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:151ecbbea3d54cdecebd4ddb74f565e18cb48b2c9471350bb1dd067ddd8b67b6
|
||||||
|
size 429644
|
1373
python-pysnmp.changes
Normal file
1373
python-pysnmp.changes
Normal file
File diff suppressed because it is too large
Load Diff
93
python-pysnmp.spec
Normal file
93
python-pysnmp.spec
Normal file
@@ -0,0 +1,93 @@
|
|||||||
|
#
|
||||||
|
# spec file for package python-pysnmp
|
||||||
|
#
|
||||||
|
# Copyright (c) 2024 SUSE LLC
|
||||||
|
#
|
||||||
|
# All modifications and additions to the file contributed by third parties
|
||||||
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
|
# upon. The license for this file, and modifications and additions to the
|
||||||
|
# file, is the same license as for the pristine package itself (unless the
|
||||||
|
# license for the pristine package is not an Open Source License, in which
|
||||||
|
# case the license is the MIT License). An "Open Source License" is a
|
||||||
|
# license that conforms to the Open Source Definition (Version 1.9)
|
||||||
|
# published by the Open Source Initiative.
|
||||||
|
|
||||||
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
Name: python-pysnmp
|
||||||
|
Version: 7.1.1
|
||||||
|
Release: 0
|
||||||
|
Summary: A pure-Python SNMPv1/v2c/v3 library
|
||||||
|
License: BSD-2-Clause
|
||||||
|
URL: https://github.com/lextudio/pysnmp
|
||||||
|
Source: https://files.pythonhosted.org/packages/source/p/pysnmp/pysnmp-%{version}.tar.gz
|
||||||
|
BuildRequires: %{python_module pip}
|
||||||
|
BuildRequires: %{python_module poetry-core}
|
||||||
|
BuildRequires: %{python_module pyasn1}
|
||||||
|
BuildRequires: %{python_module pysmi}
|
||||||
|
BuildRequires: %{python_module pytest-asyncio}
|
||||||
|
BuildRequires: %{python_module pytest}
|
||||||
|
BuildRequires: %{python_module wheel}
|
||||||
|
BuildRequires: fdupes
|
||||||
|
BuildRequires: net-snmp
|
||||||
|
BuildRequires: python-rpm-macros
|
||||||
|
Requires: python-pyasn1 >= 0.4.8
|
||||||
|
Requires: python-pysmi
|
||||||
|
Requires: python-pysnmpcrypto
|
||||||
|
BuildArch: noarch
|
||||||
|
%python_subpackages
|
||||||
|
|
||||||
|
%description
|
||||||
|
This project is a SNMP v1/v2c/v3 engine written in the Python
|
||||||
|
programming language.
|
||||||
|
|
||||||
|
* Complete SNMPv1/v2c and SNMPv3 engine support
|
||||||
|
* Can act as Manager and/or Agent
|
||||||
|
* Manager and Agent side MIB support
|
||||||
|
* Asynchronous operations support
|
||||||
|
* Pure-Python implementation
|
||||||
|
* py2exe and .egg friendly
|
||||||
|
* Twisted binding
|
||||||
|
|
||||||
|
%package -n python-pysnmp-doc
|
||||||
|
Summary: PySNMP documentation
|
||||||
|
Provides: %{python_module pysnmp-doc = %{version}}
|
||||||
|
|
||||||
|
%description -n python-pysnmp-doc
|
||||||
|
PySNMP documentation and examples.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -p1 -n pysnmp-%{version}
|
||||||
|
# Remove uneeded files
|
||||||
|
find docs -name "\.*" -exec rm -Rf {} +
|
||||||
|
|
||||||
|
%build
|
||||||
|
%pyproject_wheel
|
||||||
|
|
||||||
|
%install
|
||||||
|
%pyproject_install
|
||||||
|
chmod -x docs/net-snmptrapd.conf docs/net-snmpd.conf
|
||||||
|
%python_expand %fdupes %{buildroot}%{$python_sitelib}
|
||||||
|
|
||||||
|
%check
|
||||||
|
donttest="test_addAsn1MibSource"
|
||||||
|
|
||||||
|
# Running tests with python -m to make it work with the import path
|
||||||
|
%{python_expand #
|
||||||
|
# Not running asyncio tests that requires network
|
||||||
|
$python -m pytest -v -m 'not asyncio' -k "not $donttest"
|
||||||
|
}
|
||||||
|
|
||||||
|
%files %{python_files}
|
||||||
|
%license LICENSE.rst
|
||||||
|
%doc README.md docs examples
|
||||||
|
%{python_sitelib}/pysnmp
|
||||||
|
%{python_sitelib}/pysnmp-%{version}.dist-info
|
||||||
|
|
||||||
|
%files -n python-pysnmp-doc
|
||||||
|
%license LICENSE.rst
|
||||||
|
%doc docs examples
|
||||||
|
|
||||||
|
%changelog
|
41
support-new-pyasn1.patch
Normal file
41
support-new-pyasn1.patch
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
Index: pysnmp-5.0.28/pysnmp/proto/api/verdec.py
|
||||||
|
===================================================================
|
||||||
|
--- pysnmp-5.0.28.orig/pysnmp/proto/api/verdec.py
|
||||||
|
+++ pysnmp-5.0.28/pysnmp/proto/api/verdec.py
|
||||||
|
@@ -6,19 +6,20 @@
|
||||||
|
#
|
||||||
|
from pyasn1.type import univ
|
||||||
|
from pyasn1.codec.ber import decoder, eoo
|
||||||
|
+from pyasn1.codec.streaming import readFromStream
|
||||||
|
from pyasn1.error import PyAsn1Error
|
||||||
|
from pysnmp.proto.error import ProtocolError
|
||||||
|
|
||||||
|
|
||||||
|
def decodeMessageVersion(wholeMsg):
|
||||||
|
try:
|
||||||
|
- seq, wholeMsg = decoder.decode(
|
||||||
|
+ wholeMsg, seq = decoder.decode(
|
||||||
|
wholeMsg, asn1Spec=univ.Sequence(),
|
||||||
|
- recursiveFlag=False, substrateFun=lambda a, b, c: (a, b[:c])
|
||||||
|
+ recursiveFlag=False, substrateFun=lambda a, b, c, d: readFromStream(b, c)
|
||||||
|
)
|
||||||
|
ver, wholeMsg = decoder.decode(
|
||||||
|
wholeMsg, asn1Spec=univ.Integer(),
|
||||||
|
- recursiveFlag=False, substrateFun=lambda a, b, c: (a, b[:c])
|
||||||
|
+ recursiveFlag=False, substrateFun=lambda a, b, c, d: readFromStream(b, c)
|
||||||
|
)
|
||||||
|
if eoo.endOfOctets.isSameTypeWith(ver):
|
||||||
|
raise ProtocolError('EOO at SNMP version component')
|
||||||
|
Index: pysnmp-5.0.28/pyproject.toml
|
||||||
|
===================================================================
|
||||||
|
--- pysnmp-5.0.28.orig/pyproject.toml
|
||||||
|
+++ pysnmp-5.0.28/pyproject.toml
|
||||||
|
@@ -27,7 +27,7 @@ include = ["docs", "tests", "examples"]
|
||||||
|
|
||||||
|
[tool.poetry.dependencies]
|
||||||
|
python = "^3.7"
|
||||||
|
-pyasn1 = ">=0.4.8, <0.5.0"
|
||||||
|
+pyasn1 = "^0.5.0"
|
||||||
|
pysnmpcrypto = "^0.0.4"
|
||||||
|
pysmi-lextudio = "^1.0.4"
|
||||||
|
|
Reference in New Issue
Block a user