summaryrefslogtreecommitdiff
path: root/pysnmp/entity
diff options
context:
space:
mode:
authorverrio <verri@x25.pm>2017-08-02 23:38:14 +0000
committerIlya Etingof <etingof@gmail.com>2017-08-03 01:38:14 +0200
commit130bdaa6e218c95806bd571b326a5d3e2ddcb1ef (patch)
treea379ae562ecd5ee4b9cc998ae666f9f8d247db73 /pysnmp/entity
parent801d47b63222f46dd403e145f9dcff6a03dd3337 (diff)
downloadpysnmp-git-130bdaa6e218c95806bd571b326a5d3e2ddcb1ef.tar.gz
add support for USM SHA-2 algorithms (RFC 7860) (#71)
Diffstat (limited to 'pysnmp/entity')
-rw-r--r--pysnmp/entity/config.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/pysnmp/entity/config.py b/pysnmp/entity/config.py
index e66b7e58..0176edc5 100644
--- a/pysnmp/entity/config.py
+++ b/pysnmp/entity/config.py
@@ -9,6 +9,7 @@ from pysnmp.carrier.asyncore.dgram import udp, udp6, unix
from pysnmp.proto.secmod.rfc3414.auth import hmacmd5, hmacsha, noauth
from pysnmp.proto.secmod.rfc3414.priv import des, 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.proto import rfc1905
from pysnmp import error
@@ -23,6 +24,10 @@ snmpLocalDomain = unix.snmpLocalDomain
# Auth protocol
usmHMACMD5AuthProtocol = hmacmd5.HmacMd5.serviceID
usmHMACSHAAuthProtocol = hmacsha.HmacSha.serviceID
+usmHMAC128SHA224AuthProtocol = hmacsha2.HmacSha2.sha224ServiceID
+usmHMAC192SHA256AuthProtocol = hmacsha2.HmacSha2.sha256ServiceID
+usmHMAC256SHA384AuthProtocol = hmacsha2.HmacSha2.sha384ServiceID
+usmHMAC384SHA512AuthProtocol = hmacsha2.HmacSha2.sha512ServiceID
usmNoAuthProtocol = noauth.NoAuth.serviceID
# Privacy protocol
@@ -38,6 +43,10 @@ usmNoPrivProtocol = nopriv.NoPriv.serviceID
# Auth services
authServices = {hmacmd5.HmacMd5.serviceID: hmacmd5.HmacMd5(),
hmacsha.HmacSha.serviceID: hmacsha.HmacSha(),
+ hmacsha2.HmacSha2.sha224ServiceID: hmacsha2.HmacSha2(hmacsha2.HmacSha2.sha224ServiceID),
+ hmacsha2.HmacSha2.sha256ServiceID: hmacsha2.HmacSha2(hmacsha2.HmacSha2.sha256ServiceID),
+ hmacsha2.HmacSha2.sha384ServiceID: hmacsha2.HmacSha2(hmacsha2.HmacSha2.sha384ServiceID),
+ hmacsha2.HmacSha2.sha512ServiceID: hmacsha2.HmacSha2(hmacsha2.HmacSha2.sha512ServiceID),
noauth.NoAuth.serviceID: noauth.NoAuth()}
# Privacy services