This is an automated email from the ASF dual-hosted git repository.

joewitt pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git

commit bc279b5e514a893ff127391188d14fc73d93f980
Author: exceptionfactory <[email protected]>
AuthorDate: Tue Oct 29 15:24:09 2024 -0500

    NIFI-13946 Fixed SNMP Integration Test Failures
    This closes #9469
    
    - Set 0.0.0.0 as listen address for ListenTrapSNMP
    - Removed SHA and MD5 protocols for SNMP Version 3
    
    Signed-off-by: Joseph Witt <[email protected]>
---
 .../nifi/snmp/factory/core/SNMPManagerFactory.java |  7 +++++-
 .../configurations/SNMPV3ConfigurationFactory.java |  2 +-
 .../nifi/snmp/testagents/TestSNMPV3Agent.java      | 28 ++++------------------
 3 files changed, 11 insertions(+), 26 deletions(-)

diff --git 
a/nifi-extension-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/main/java/org/apache/nifi/snmp/factory/core/SNMPManagerFactory.java
 
b/nifi-extension-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/main/java/org/apache/nifi/snmp/factory/core/SNMPManagerFactory.java
index 84262a3bb4..406cd86813 100644
--- 
a/nifi-extension-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/main/java/org/apache/nifi/snmp/factory/core/SNMPManagerFactory.java
+++ 
b/nifi-extension-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/main/java/org/apache/nifi/snmp/factory/core/SNMPManagerFactory.java
@@ -23,14 +23,19 @@ import org.snmp4j.smi.UdpAddress;
 import org.snmp4j.transport.DefaultUdpTransportMapping;
 
 import java.io.IOException;
+import java.net.InetAddress;
 
 public class SNMPManagerFactory {
 
+    private static final String ALL_ADDRESSES = "0.0.0.0";
+
     public Snmp createSnmpManagerInstance(final SNMPConfiguration 
configuration) {
         final int port = configuration.getManagerPort();
         final Snmp snmpManager;
         try {
-            final DefaultUdpTransportMapping transportMapping = new 
DefaultUdpTransportMapping(new UdpAddress(port));
+            final InetAddress listenAddress = 
InetAddress.getByName(ALL_ADDRESSES);
+            final UdpAddress udpAddress = new UdpAddress(listenAddress, port);
+            final DefaultUdpTransportMapping transportMapping = new 
DefaultUdpTransportMapping(udpAddress);
             snmpManager = new Snmp(transportMapping);
             snmpManager.listen();
         } catch (IOException e) {
diff --git 
a/nifi-extension-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/configurations/SNMPV3ConfigurationFactory.java
 
b/nifi-extension-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/configurations/SNMPV3ConfigurationFactory.java
index 8e38df7ec4..dbda33ad98 100644
--- 
a/nifi-extension-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/configurations/SNMPV3ConfigurationFactory.java
+++ 
b/nifi-extension-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/helper/configurations/SNMPV3ConfigurationFactory.java
@@ -24,7 +24,7 @@ public class SNMPV3ConfigurationFactory implements 
SNMPConfigurationFactory {
     // V3 security (users are set in test agents)
     public static final String SECURITY_LEVEL = "authPriv";
     public static final String SECURITY_NAME = "SHAAES128";
-    public static final String AUTH_PROTOCOL = "SHA";
+    public static final String AUTH_PROTOCOL = "HMAC384SHA512";
     public static final String AUTH_PASSPHRASE = "SHAAES128AuthPassphrase";
     public static final String PRIV_PROTOCOL = "AES128";
     public static final String PRIV_PASSPHRASE = "SHAAES128PrivPassphrase";
diff --git 
a/nifi-extension-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/testagents/TestSNMPV3Agent.java
 
b/nifi-extension-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/testagents/TestSNMPV3Agent.java
index 71ba1091ad..ae704c0195 100644
--- 
a/nifi-extension-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/testagents/TestSNMPV3Agent.java
+++ 
b/nifi-extension-bundles/nifi-snmp-bundle/nifi-snmp-processors/src/test/java/org/apache/nifi/snmp/testagents/TestSNMPV3Agent.java
@@ -21,10 +21,8 @@ import org.snmp4j.agent.mo.snmp.StorageType;
 import org.snmp4j.agent.mo.snmp.VacmMIB;
 import org.snmp4j.agent.security.MutableVACM;
 import org.snmp4j.mp.MPv3;
-import org.snmp4j.security.AuthMD5;
-import org.snmp4j.security.AuthSHA;
+import org.snmp4j.security.AuthHMAC384SHA512;
 import org.snmp4j.security.PrivAES128;
-import org.snmp4j.security.PrivDES;
 import org.snmp4j.security.SecurityLevel;
 import org.snmp4j.security.SecurityModel;
 import org.snmp4j.security.USM;
@@ -44,30 +42,12 @@ public class TestSNMPV3Agent extends TestAgent {
 
     @Override
     protected void addUsmUser(final USM usm) {
-        UsmUser user = new UsmUser(new OctetString("SHA"),
-                AuthSHA.ID,
-                new OctetString("SHAAuthPassword"),
-                null,
-                null);
-        usm.addUser(user.getSecurityName(), usm.getLocalEngineID(), user);
-        user = new UsmUser(new OctetString("SHADES"),
-                AuthSHA.ID,
-                new OctetString("SHADESAuthPassword"),
-                PrivDES.ID,
-                new OctetString("SHADESPrivPassword"));
-        usm.addUser(user.getSecurityName(), usm.getLocalEngineID(), user);
-        user = new UsmUser(new OctetString("MD5DES"),
-                AuthMD5.ID,
-                new OctetString("MD5DESAuthPassword"),
-                PrivDES.ID,
-                new OctetString("MD5DESPrivPassword"));
-        usm.addUser(user.getSecurityName(), usm.getLocalEngineID(), user);
-        user = new UsmUser(new OctetString("SHAAES128"),
-                AuthSHA.ID,
+        UsmUser user = new UsmUser(new OctetString("HMAC384SHA512"),
+                AuthHMAC384SHA512.ID,
                 new OctetString("SHAAES128AuthPassword"),
                 PrivAES128.ID,
                 new OctetString("SHAAES128PrivPassword"));
-        usm.addUser(user.getSecurityName(), usm.getLocalEngineID(), user);
+        usm.addUser(user);
     }
 
     @Override

Reply via email to