summaryrefslogtreecommitdiff
path: root/pysnmp/proto
diff options
context:
space:
mode:
authorIlya Etingof <etingof@gmail.com>2019-02-12 23:58:57 +0100
committerGitHub <noreply@github.com>2019-02-12 23:58:57 +0100
commit7a8838eeaf2a94a4ee8d309f2091a4fde13e5afc (patch)
treef6ac400c4897b2076d4e2759e5230e67100357db /pysnmp/proto
parent2a3fe3b5e08c91ab8d77569b02b36da63909f619 (diff)
downloadpysnmp-git-7a8838eeaf2a94a4ee8d309f2091a4fde13e5afc.tar.gz
PEP8 optimize imports (#242)
To make them PEP8-compliant
Diffstat (limited to 'pysnmp/proto')
-rw-r--r--pysnmp/proto/acmod/rfc3415.py5
-rw-r--r--pysnmp/proto/acmod/void.py3
-rw-r--r--pysnmp/proto/api/__init__.py4
-rw-r--r--pysnmp/proto/api/v1.py5
-rw-r--r--pysnmp/proto/api/v2c.py8
-rw-r--r--pysnmp/proto/api/verdec.py6
-rw-r--r--pysnmp/proto/error.py3
-rw-r--r--pysnmp/proto/mpmod/base.py2
-rw-r--r--pysnmp/proto/mpmod/cache.py2
-rw-r--r--pysnmp/proto/mpmod/rfc2576.py17
-rw-r--r--pysnmp/proto/mpmod/rfc3412.py18
-rw-r--r--pysnmp/proto/proxy/rfc2576.py7
-rw-r--r--pysnmp/proto/rfc1155.py8
-rw-r--r--pysnmp/proto/rfc1157.py6
-rw-r--r--pysnmp/proto/rfc1901.py5
-rw-r--r--pysnmp/proto/rfc1902.py8
-rw-r--r--pysnmp/proto/rfc1905.py7
-rw-r--r--pysnmp/proto/rfc3411.py4
-rw-r--r--pysnmp/proto/rfc3412.py14
-rw-r--r--pysnmp/proto/secmod/base.py2
-rw-r--r--pysnmp/proto/secmod/eso/priv/aesbase.py22
-rw-r--r--pysnmp/proto/secmod/eso/priv/des3.py19
-rw-r--r--pysnmp/proto/secmod/rfc2576.py10
-rw-r--r--pysnmp/proto/secmod/rfc3414/auth/base.py3
-rw-r--r--pysnmp/proto/secmod/rfc3414/auth/hmacmd5.py14
-rw-r--r--pysnmp/proto/secmod/rfc3414/auth/hmacsha.py13
-rw-r--r--pysnmp/proto/secmod/rfc3414/auth/noauth.py3
-rw-r--r--pysnmp/proto/secmod/rfc3414/localkey.py17
-rw-r--r--pysnmp/proto/secmod/rfc3414/priv/des.py18
-rw-r--r--pysnmp/proto/secmod/rfc3414/priv/nopriv.py3
-rw-r--r--pysnmp/proto/secmod/rfc3414/service.py33
-rw-r--r--pysnmp/proto/secmod/rfc3826/priv/aes.py18
-rw-r--r--pysnmp/proto/secmod/rfc7860/auth/hmacsha2.py6
33 files changed, 176 insertions, 137 deletions
diff --git a/pysnmp/proto/acmod/rfc3415.py b/pysnmp/proto/acmod/rfc3415.py
index 0d093c4b..fb4c4adf 100644
--- a/pysnmp/proto/acmod/rfc3415.py
+++ b/pysnmp/proto/acmod/rfc3415.py
@@ -4,9 +4,10 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pysnmp.smi.error import NoSuchInstanceError
-from pysnmp.proto import errind, error
from pysnmp import debug
+from pysnmp.proto import errind
+from pysnmp.proto import error
+from pysnmp.smi.error import NoSuchInstanceError
# 3.2
diff --git a/pysnmp/proto/acmod/void.py b/pysnmp/proto/acmod/void.py
index 677103b9..2f8c4e97 100644
--- a/pysnmp/proto/acmod/void.py
+++ b/pysnmp/proto/acmod/void.py
@@ -4,8 +4,9 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pysnmp.proto import errind, error
from pysnmp import debug
+from pysnmp.proto import errind
+from pysnmp.proto import error
# rfc3415 3.2
diff --git a/pysnmp/proto/api/__init__.py b/pysnmp/proto/api/__init__.py
index fd404e5c..fd67c8a7 100644
--- a/pysnmp/proto/api/__init__.py
+++ b/pysnmp/proto/api/__init__.py
@@ -4,7 +4,9 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pysnmp.proto.api import v1, v2c, verdec
+from pysnmp.proto.api import v1
+from pysnmp.proto.api import v2c
+from pysnmp.proto.api import verdec
# Protocol versions
SNMP_VERSION_1 = 0
diff --git a/pysnmp/proto/api/v1.py b/pysnmp/proto/api/v1.py
index e0233ff5..827a6a0d 100644
--- a/pysnmp/proto/api/v1.py
+++ b/pysnmp/proto/api/v1.py
@@ -5,8 +5,11 @@
# License: http://snmplabs.com/pysnmp/license.html
#
from pyasn1.type import univ
-from pysnmp.proto import rfc1155, rfc1157, error
+
from pysnmp import nextid
+from pysnmp.proto import error
+from pysnmp.proto import rfc1155
+from pysnmp.proto import rfc1157
# Shortcuts to SNMP types
Integer = univ.Integer
diff --git a/pysnmp/proto/api/v2c.py b/pysnmp/proto/api/v2c.py
index f877ea08..05de2da1 100644
--- a/pysnmp/proto/api/v2c.py
+++ b/pysnmp/proto/api/v2c.py
@@ -4,9 +4,13 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pysnmp.proto import rfc1901, rfc1902, rfc1905
+from pyasn1.type import constraint
+from pyasn1.type import univ
+
+from pysnmp.proto import rfc1901
+from pysnmp.proto import rfc1902
+from pysnmp.proto import rfc1905
from pysnmp.proto.api import v1
-from pyasn1.type import univ, constraint
# Shortcuts to SNMP types
Null = univ.Null
diff --git a/pysnmp/proto/api/verdec.py b/pysnmp/proto/api/verdec.py
index 9bbb73bd..e6ec7fd9 100644
--- a/pysnmp/proto/api/verdec.py
+++ b/pysnmp/proto/api/verdec.py
@@ -4,9 +4,11 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pyasn1.type import univ
-from pyasn1.codec.ber import decoder, eoo
+from pyasn1.codec.ber import decoder
+from pyasn1.codec.ber import eoo
from pyasn1.error import PyAsn1Error
+from pyasn1.type import univ
+
from pysnmp.proto.error import ProtocolError
diff --git a/pysnmp/proto/error.py b/pysnmp/proto/error.py
index 6d10b0c1..52e84642 100644
--- a/pysnmp/proto/error.py
+++ b/pysnmp/proto/error.py
@@ -5,8 +5,9 @@
# License: http://snmplabs.com/pysnmp/license.html
#
from pyasn1.error import PyAsn1Error
-from pysnmp.error import PySnmpError
+
from pysnmp import debug
+from pysnmp.error import PySnmpError
class ProtocolError(PySnmpError, PyAsn1Error):
diff --git a/pysnmp/proto/mpmod/base.py b/pysnmp/proto/mpmod/base.py
index 0a9f9f6a..61b26662 100644
--- a/pysnmp/proto/mpmod/base.py
+++ b/pysnmp/proto/mpmod/base.py
@@ -4,8 +4,8 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pysnmp.proto.mpmod import cache
from pysnmp.proto import error
+from pysnmp.proto.mpmod import cache
class AbstractMessageProcessingModel(object):
diff --git a/pysnmp/proto/mpmod/cache.py b/pysnmp/proto/mpmod/cache.py
index 4bc67169..0cb343bd 100644
--- a/pysnmp/proto/mpmod/cache.py
+++ b/pysnmp/proto/mpmod/cache.py
@@ -4,8 +4,8 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pysnmp.proto import error
from pysnmp import nextid
+from pysnmp.proto import error
class Cache(object):
diff --git a/pysnmp/proto/mpmod/rfc2576.py b/pysnmp/proto/mpmod/rfc2576.py
index 3872ce9a..8bad83c2 100644
--- a/pysnmp/proto/mpmod/rfc2576.py
+++ b/pysnmp/proto/mpmod/rfc2576.py
@@ -4,15 +4,18 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-import sys
-from pyasn1.codec.ber import decoder, eoo
-from pyasn1.type import univ
+from pyasn1.codec.ber import decoder
+from pyasn1.codec.ber import eoo
from pyasn1.compat.octets import null
-from pyasn1.error import PyAsn1Error
-from pysnmp.proto.mpmod.base import AbstractMessageProcessingModel
-from pysnmp.proto import rfc3411, errind, error
-from pysnmp.proto.api import v1, v2c
+from pyasn1.type import univ
+
from pysnmp import debug
+from pysnmp.proto import errind
+from pysnmp.proto import error
+from pysnmp.proto import rfc3411
+from pysnmp.proto.api import v1
+from pysnmp.proto.api import v2c
+from pysnmp.proto.mpmod.base import AbstractMessageProcessingModel
# Since I have not found a detailed reference to v1MP/v2cMP
diff --git a/pysnmp/proto/mpmod/rfc3412.py b/pysnmp/proto/mpmod/rfc3412.py
index fe736cac..6ff9fa8d 100644
--- a/pysnmp/proto/mpmod/rfc3412.py
+++ b/pysnmp/proto/mpmod/rfc3412.py
@@ -5,12 +5,20 @@
# License: http://snmplabs.com/pysnmp/license.html
#
import sys
-from pysnmp.proto.mpmod.base import AbstractMessageProcessingModel
-from pysnmp.proto import rfc1905, rfc3411, api, errind, error
-from pyasn1.type import univ, namedtype, constraint
-from pyasn1.codec.ber import decoder, eoo
-from pyasn1.error import PyAsn1Error
+
+from pyasn1.codec.ber import decoder
+from pyasn1.codec.ber import eoo
+from pyasn1.type import constraint
+from pyasn1.type import namedtype
+from pyasn1.type import univ
+
from pysnmp import debug
+from pysnmp.proto import api
+from pysnmp.proto import errind
+from pysnmp.proto import error
+from pysnmp.proto import rfc1905
+from pysnmp.proto import rfc3411
+from pysnmp.proto.mpmod.base import AbstractMessageProcessingModel
# API to rfc1905 protocol objects
pMod = api.PROTOCOL_MODULES[api.SNMP_VERSION_2C]
diff --git a/pysnmp/proto/proxy/rfc2576.py b/pysnmp/proto/proxy/rfc2576.py
index 4391a54f..fc569329 100644
--- a/pysnmp/proto/proxy/rfc2576.py
+++ b/pysnmp/proto/proxy/rfc2576.py
@@ -4,9 +4,12 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pysnmp.proto import rfc1905, rfc3411, error
-from pysnmp.proto.api import v1, v2c
from pysnmp import debug
+from pysnmp.proto import error
+from pysnmp.proto import rfc1905
+from pysnmp.proto import rfc3411
+from pysnmp.proto.api import v1
+from pysnmp.proto.api import v2c
# 2.1.1
diff --git a/pysnmp/proto/rfc1155.py b/pysnmp/proto/rfc1155.py
index b9a2eb25..e194f1c0 100644
--- a/pysnmp/proto/rfc1155.py
+++ b/pysnmp/proto/rfc1155.py
@@ -4,10 +4,14 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pyasn1.type import univ, tag, constraint, namedtype
from pyasn1.error import PyAsn1Error
-from pysnmp.smi.error import SmiError
+from pyasn1.type import constraint
+from pyasn1.type import namedtype
+from pyasn1.type import tag
+from pyasn1.type import univ
+
from pysnmp.proto import error
+from pysnmp.smi.error import SmiError
__all__ = ['Opaque', 'NetworkAddress', 'ObjectName', 'TimeTicks',
'Counter', 'Gauge', 'IpAddress']
diff --git a/pysnmp/proto/rfc1157.py b/pysnmp/proto/rfc1157.py
index 8cd354b8..b0ddbb08 100644
--- a/pysnmp/proto/rfc1157.py
+++ b/pysnmp/proto/rfc1157.py
@@ -4,7 +4,11 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pyasn1.type import univ, tag, namedtype, namedval
+from pyasn1.type import namedtype
+from pyasn1.type import namedval
+from pyasn1.type import tag
+from pyasn1.type import univ
+
from pysnmp.proto import rfc1155
__all__ = ['GetNextRequestPDU', 'GetResponsePDU', 'SetRequestPDU',
diff --git a/pysnmp/proto/rfc1901.py b/pysnmp/proto/rfc1901.py
index de912395..b76a214a 100644
--- a/pysnmp/proto/rfc1901.py
+++ b/pysnmp/proto/rfc1901.py
@@ -4,7 +4,10 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pyasn1.type import univ, namedtype, namedval
+from pyasn1.type import namedtype
+from pyasn1.type import namedval
+from pyasn1.type import univ
+
from pysnmp.proto import rfc1905
version = univ.Integer(namedValues=namedval.NamedValues(('version-2c', 1)))
diff --git a/pysnmp/proto/rfc1902.py b/pysnmp/proto/rfc1902.py
index 14900ce7..e1c037ee 100644
--- a/pysnmp/proto/rfc1902.py
+++ b/pysnmp/proto/rfc1902.py
@@ -4,7 +4,13 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pyasn1.type import univ, tag, constraint, namedtype, namedval
+
+from pyasn1.type import constraint
+from pyasn1.type import namedtype
+from pyasn1.type import namedval
+from pyasn1.type import tag
+from pyasn1.type import univ
+
from pysnmp.proto import rfc1155, error
__all__ = ['Opaque', 'TimeTicks', 'Bits', 'Integer', 'OctetString',
diff --git a/pysnmp/proto/rfc1905.py b/pysnmp/proto/rfc1905.py
index d5da3982..6a2637e2 100644
--- a/pysnmp/proto/rfc1905.py
+++ b/pysnmp/proto/rfc1905.py
@@ -4,7 +4,12 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pyasn1.type import univ, tag, constraint, namedtype, namedval
+from pyasn1.type import constraint
+from pyasn1.type import namedtype
+from pyasn1.type import namedval
+from pyasn1.type import tag
+from pyasn1.type import univ
+
from pysnmp.proto import rfc1902
__all__ = ['unSpecified', 'EndOfMibView', 'ReportPDU', 'UnSpecified',
diff --git a/pysnmp/proto/rfc3411.py b/pysnmp/proto/rfc3411.py
index c804eb4f..9d4e080e 100644
--- a/pysnmp/proto/rfc3411.py
+++ b/pysnmp/proto/rfc3411.py
@@ -4,7 +4,9 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pysnmp.proto import rfc1157, rfc1905
+from pysnmp.proto import rfc1157
+from pysnmp.proto import rfc1905
+
READ_CLASS_PDUS = set(
(rfc1157.GetRequestPDU.tagSet,
diff --git a/pysnmp/proto/rfc3412.py b/pysnmp/proto/rfc3412.py
index aaef10d9..7a3baa86 100644
--- a/pysnmp/proto/rfc3412.py
+++ b/pysnmp/proto/rfc3412.py
@@ -4,14 +4,18 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-import sys
from pyasn1.compat.octets import null
from pyasn1.error import PyAsn1Error
-from pysnmp.smi import builder, instrum
-from pysnmp.proto import errind, error, cache
-from pysnmp.proto.api import verdec # XXX
+
+from pysnmp import debug
+from pysnmp import nextid
from pysnmp.error import PySnmpError
-from pysnmp import nextid, debug
+from pysnmp.proto import cache
+from pysnmp.proto import errind
+from pysnmp.proto import error
+from pysnmp.proto.api import verdec # XXX
+from pysnmp.smi import builder
+from pysnmp.smi import instrum
class MsgAndPduDispatcher(object):
diff --git a/pysnmp/proto/secmod/base.py b/pysnmp/proto/secmod/base.py
index 70850bcf..0f80f255 100644
--- a/pysnmp/proto/secmod/base.py
+++ b/pysnmp/proto/secmod/base.py
@@ -4,8 +4,8 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pysnmp.proto.secmod import cache
from pysnmp.proto import error
+from pysnmp.proto.secmod import cache
class AbstractSecurityModel(object):
diff --git a/pysnmp/proto/secmod/eso/priv/aesbase.py b/pysnmp/proto/secmod/eso/priv/aesbase.py
index f2527cec..0c2e5d17 100644
--- a/pysnmp/proto/secmod/eso/priv/aesbase.py
+++ b/pysnmp/proto/secmod/eso/priv/aesbase.py
@@ -4,22 +4,16 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pysnmp.proto.secmod.rfc3826.priv import aes
-from pysnmp.proto.secmod.rfc3414.auth import hmacmd5, hmacsha
-from pysnmp.proto.secmod.rfc7860.auth import hmacsha2
-from pysnmp.proto.secmod.rfc3414 import localkey
-from pysnmp.proto import error
+from hashlib import md5
+from hashlib import sha1
from math import ceil
-try:
- from hashlib import md5, sha1
-
-except ImportError:
- import md5
- import sha
-
- md5 = md5.new
- sha1 = sha.new
+from pysnmp.proto import error
+from pysnmp.proto.secmod.rfc3414 import localkey
+from pysnmp.proto.secmod.rfc3414.auth import hmacmd5
+from pysnmp.proto.secmod.rfc3414.auth import hmacsha
+from pysnmp.proto.secmod.rfc3826.priv import aes
+from pysnmp.proto.secmod.rfc7860.auth import hmacsha2
class AbstractAesBlumenthal(aes.Aes):
diff --git a/pysnmp/proto/secmod/eso/priv/des3.py b/pysnmp/proto/secmod/eso/priv/des3.py
index bb3f8516..da84475b 100644
--- a/pysnmp/proto/secmod/eso/priv/des3.py
+++ b/pysnmp/proto/secmod/eso/priv/des3.py
@@ -5,16 +5,8 @@
# License: http://snmplabs.com/pysnmp/license.html
#
import random
-
-try:
- from hashlib import md5, sha1
-
-except ImportError:
- import md5
- import sha
-
- md5 = md5.new
- sha1 = sha.new
+from hashlib import md5
+from hashlib import sha1
try:
from pysnmpcrypto import des3, PysnmpCryptoError
@@ -24,12 +16,13 @@ except ImportError:
des3 = None
from pysnmp.proto.secmod.rfc3414.priv import base
-from pysnmp.proto.secmod.rfc3414.auth import hmacmd5, hmacsha
+from pysnmp.proto.secmod.rfc3414.auth import hmacmd5
+from pysnmp.proto.secmod.rfc3414.auth import hmacsha
from pysnmp.proto.secmod.rfc3414 import localkey
from pysnmp.proto.secmod.rfc7860.auth import hmacsha2
-from pysnmp.proto import errind, error
+from pysnmp.proto import errind
+from pysnmp.proto import error
from pyasn1.type import univ
-from pyasn1.compat.octets import null
random.seed()
diff --git a/pysnmp/proto/secmod/rfc2576.py b/pysnmp/proto/secmod/rfc2576.py
index 392294f9..ba11b0fe 100644
--- a/pysnmp/proto/secmod/rfc2576.py
+++ b/pysnmp/proto/secmod/rfc2576.py
@@ -4,14 +4,16 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-import sys
from pyasn1.codec.ber import encoder
from pyasn1.error import PyAsn1Error
+
+from pysnmp import debug
+from pysnmp.carrier.asyncore.dgram import udp
+from pysnmp.carrier.asyncore.dgram import udp6
+from pysnmp.proto import errind
+from pysnmp.proto import error
from pysnmp.proto.secmod import base
-from pysnmp.carrier.asyncore.dgram import udp, udp6
from pysnmp.smi.error import NoSuchInstanceError
-from pysnmp.proto import errind, error
-from pysnmp import debug
class SnmpV1SecurityModel(base.AbstractSecurityModel):
diff --git a/pysnmp/proto/secmod/rfc3414/auth/base.py b/pysnmp/proto/secmod/rfc3414/auth/base.py
index 1c019aea..5bb6e660 100644
--- a/pysnmp/proto/secmod/rfc3414/auth/base.py
+++ b/pysnmp/proto/secmod/rfc3414/auth/base.py
@@ -4,7 +4,8 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-from pysnmp.proto import errind, error
+from pysnmp.proto import errind
+from pysnmp.proto import error
class AbstractAuthenticationService(object):
diff --git a/pysnmp/proto/secmod/rfc3414/auth/hmacmd5.py b/pysnmp/proto/secmod/rfc3414/auth/hmacmd5.py
index 3ce12da2..df3db63f 100644
--- a/pysnmp/proto/secmod/rfc3414/auth/hmacmd5.py
+++ b/pysnmp/proto/secmod/rfc3414/auth/hmacmd5.py
@@ -4,18 +4,14 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-try:
- from hashlib import md5
-
-except ImportError:
- import md5
-
- md5 = md5.new
+from hashlib import md5
from pyasn1.type import univ
-from pysnmp.proto.secmod.rfc3414.auth import base
+
+from pysnmp.proto import errind
+from pysnmp.proto import error
from pysnmp.proto.secmod.rfc3414 import localkey
-from pysnmp.proto import errind, error
+from pysnmp.proto.secmod.rfc3414.auth import base
TWELVE_ZEROS = univ.OctetString((0,) * 12).asOctets()
FORTY_EIGHT_ZEROS = (0,) * 48
diff --git a/pysnmp/proto/secmod/rfc3414/auth/hmacsha.py b/pysnmp/proto/secmod/rfc3414/auth/hmacsha.py
index 8776f6fb..4d5498d1 100644
--- a/pysnmp/proto/secmod/rfc3414/auth/hmacsha.py
+++ b/pysnmp/proto/secmod/rfc3414/auth/hmacsha.py
@@ -4,17 +4,14 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-try:
- from hashlib import sha1
-except ImportError:
- import sha
-
- sha1 = sha.new
+from hashlib import sha1
from pyasn1.type import univ
-from pysnmp.proto.secmod.rfc3414.auth import base
+
+from pysnmp.proto import errind
+from pysnmp.proto import error
from pysnmp.proto.secmod.rfc3414 import localkey
-from pysnmp.proto import errind, error
+from pysnmp.proto.secmod.rfc3414.auth import base
TWELVE_ZEROS = univ.OctetString((0,) * 12).asOctets()
FORTY_FOUR_ZEROS = (0,) * 44
diff --git a/pysnmp/proto/secmod/rfc3414/auth/noauth.py b/pysnmp/proto/secmod/rfc3414/auth/noauth.py
index d97d4888..c0c8329c 100644
--- a/pysnmp/proto/secmod/rfc3414/auth/noauth.py
+++ b/pysnmp/proto/secmod/rfc3414/auth/noauth.py
@@ -4,8 +4,9 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
+from pysnmp.proto import errind
+from pysnmp.proto import error
from pysnmp.proto.secmod.rfc3414.auth import base
-from pysnmp.proto import errind, error
class NoAuth(base.AbstractAuthenticationService):
diff --git a/pysnmp/proto/secmod/rfc3414/localkey.py b/pysnmp/proto/secmod/rfc3414/localkey.py
index 651722e4..144342fa 100644
--- a/pysnmp/proto/secmod/rfc3414/localkey.py
+++ b/pysnmp/proto/secmod/rfc3414/localkey.py
@@ -4,39 +4,34 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
-try:
- from hashlib import md5, sha1
-
-except ImportError:
- import md5
- import sha
-
- md5 = md5.new
- sha1 = sha.new
+from hashlib import md5
+from hashlib import sha1
from pyasn1.type import univ
def hashPassphrase(passphrase, hashFunc):
passphrase = univ.OctetString(passphrase).asOctets()
- # noinspection PyDeprecation,PyCallingNonCallable
hasher = hashFunc()
ringBuffer = passphrase * (64 // len(passphrase) + 1)
- # noinspection PyTypeChecker
ringBufferLen = len(ringBuffer)
count = 0
mark = 0
+
while count < 16384:
e = mark + 64
if e < ringBufferLen:
hasher.update(ringBuffer[mark:e])
mark = e
+
else:
hasher.update(
ringBuffer[mark:ringBufferLen] + ringBuffer[0:e - ringBufferLen]
)
mark = e - ringBufferLen
+
count += 1
+
return hasher.digest()
diff --git a/pysnmp/proto/secmod/rfc3414/priv/des.py b/pysnmp/proto/secmod/rfc3414/priv/des.py
index a9a1137c..5128a662 100644
--- a/pysnmp/proto/secmod/rfc3414/priv/des.py
+++ b/pysnmp/proto/secmod/rfc3414/priv/des.py
@@ -5,16 +5,8 @@
# License: http://snmplabs.com/pysnmp/license.html
#
import random
-
-try:
- from hashlib import md5, sha1
-
-except ImportError:
- import md5
- import sha
-
- md5 = md5.new
- sha1 = sha.new
+from hashlib import md5
+from hashlib import sha1
try:
from pysnmpcrypto import des, PysnmpCryptoError
@@ -24,10 +16,12 @@ except ImportError:
des = None
from pysnmp.proto.secmod.rfc3414.priv import base
-from pysnmp.proto.secmod.rfc3414.auth import hmacmd5, hmacsha
+from pysnmp.proto.secmod.rfc3414.auth import hmacmd5
+from pysnmp.proto.secmod.rfc3414.auth import hmacsha
from pysnmp.proto.secmod.rfc3414 import localkey
from pysnmp.proto.secmod.rfc7860.auth import hmacsha2
-from pysnmp.proto import errind, error
+from pysnmp.proto import errind
+from pysnmp.proto import error
from pyasn1.type import univ
random.seed()
diff --git a/pysnmp/proto/secmod/rfc3414/priv/nopriv.py b/pysnmp/proto/secmod/rfc3414/priv/nopriv.py
index 7283e6ec..358ea33d 100644
--- a/pysnmp/proto/secmod/rfc3414/priv/nopriv.py
+++ b/pysnmp/proto/secmod/rfc3414/priv/nopriv.py
@@ -4,8 +4,9 @@
# Copyright (c) 2005-2019, Ilya Etingof <etingof@gmail.com>
# License: http://snmplabs.com/pysnmp/license.html
#
+from pysnmp.proto import errind
+from pysnmp.proto import error
from pysnmp.proto.secmod.rfc3414.priv import base
-from pysnmp.proto import errind, error
class NoPriv(base.AbstractEncryptionService):
diff --git a/pysnmp/proto/secmod/rfc3414/service.py b/pysnmp/proto/secmod/rfc3414/service.py
index a09b98ed..f9bf056b 100644
--- a/pysnmp/proto/secmod/rfc3414/service.py
+++ b/pysnmp/proto/secmod/rfc3414/service.py
@@ -5,20 +5,33 @@
# License: http://snmplabs.com/pysnmp/license.html
#
import time
-import sys
+
+from pyasn1.codec.ber import decoder
+from pyasn1.codec.ber import encoder
+from pyasn1.codec.ber import eoo
+from pyasn1.compat.octets import null
+from pyasn1.error import PyAsn1Error
+from pyasn1.type import constraint
+from pyasn1.type import namedtype
+from pyasn1.type import univ
+
+from pysnmp import debug
+from pysnmp.proto import errind
+from pysnmp.proto import error
+from pysnmp.proto import rfc1155
+from pysnmp.proto import rfc3411
from pysnmp.proto.secmod.base import AbstractSecurityModel
-from pysnmp.proto.secmod.rfc3414.auth import hmacmd5, hmacsha, noauth
-from pysnmp.proto.secmod.rfc3414.priv import des, nopriv
+from pysnmp.proto.secmod.eso.priv import aes192
+from pysnmp.proto.secmod.eso.priv import aes256
+from pysnmp.proto.secmod.eso.priv import des3
+from pysnmp.proto.secmod.rfc3414.auth import hmacmd5
+from pysnmp.proto.secmod.rfc3414.auth import hmacsha
+from pysnmp.proto.secmod.rfc3414.auth import noauth
+from pysnmp.proto.secmod.rfc3414.priv import des
+from pysnmp.proto.secmod.rfc3414.priv import nopriv
from pysnmp.proto.secmod.rfc3826.priv import aes
from pysnmp.proto.secmod.rfc7860.auth import hmacsha2
-from pysnmp.proto.secmod.eso.priv import des3, aes192, aes256
from pysnmp.smi.error import NoSuchInstanceError
-from pysnmp.proto import rfc1155, rfc3411, errind, error
-from pysnmp import debug
-from pyasn1.type import univ, namedtype, constraint
-from pyasn1.codec.ber import encoder, decoder, eoo
-from pyasn1.error import PyAsn1Error
-from pyasn1.compat.octets import null
# USM security params
diff --git a/pysnmp/proto/secmod/rfc3826/priv/aes.py b/pysnmp/proto/secmod/rfc3826/priv/aes.py
index 8a67ecc2..56f69280 100644
--- a/pysnmp/proto/secmod/rfc3826/priv/aes.py
+++ b/pysnmp/proto/secmod/rfc3826/priv/aes.py
@@ -5,16 +5,8 @@
# License: http://snmplabs.com/pysnmp/license.html
#
import random
-
-try:
- from hashlib import md5, sha1
-
-except ImportError:
- import md5
- import sha
-
- md5 = md5.new
- sha1 = sha.new
+from hashlib import md5
+from hashlib import sha1
try:
from pysnmpcrypto import aes, PysnmpCryptoError
@@ -25,10 +17,12 @@ except ImportError:
from pyasn1.type import univ
from pysnmp.proto.secmod.rfc3414.priv import base
-from pysnmp.proto.secmod.rfc3414.auth import hmacmd5, hmacsha
+from pysnmp.proto.secmod.rfc3414.auth import hmacmd5
+from pysnmp.proto.secmod.rfc3414.auth import hmacsha
from pysnmp.proto.secmod.rfc7860.auth import hmacsha2
from pysnmp.proto.secmod.rfc3414 import localkey
-from pysnmp.proto import errind, error
+from pysnmp.proto import errind
+from pysnmp.proto import error
random.seed()
diff --git a/pysnmp/proto/secmod/rfc7860/auth/hmacsha2.py b/pysnmp/proto/secmod/rfc7860/auth/hmacsha2.py
index 495f8fcd..11dd79b3 100644
--- a/pysnmp/proto/secmod/rfc7860/auth/hmacsha2.py
+++ b/pysnmp/proto/secmod/rfc7860/auth/hmacsha2.py
@@ -4,10 +4,12 @@
# Copyright (c) 2005-2018, Olivier Verriest <verri@x25.pm>
# License: http://snmplabs.com/pysnmp/license.html
#
-import sys
import hmac
try:
- from hashlib import sha224, sha256, sha384, sha512
+ from hashlib import sha224
+ from hashlib import sha256
+ from hashlib import sha384
+ from hashlib import sha512
except ImportError: