I'm trying to programmatically turn off a port on a switch using the SNMP4J 
library and I'm stuck on the following error:

org.snmp4j.transport.UnsupportedAddressClassException: Unsupported address 
class (transport mapping): org.snmp4j.smi.IpAddress
        at 
org.snmp4j.MessageDispatcherImpl.sendPdu(MessageDispatcherImpl.java:413)
        at org.snmp4j.Snmp.sendMessage(Snmp.java:1067)
        at org.snmp4j.Snmp.send(Snmp.java:895)
        at org.snmp4j.Snmp.send(Snmp.java:875)
        at org.snmp4j.Snmp.send(Snmp.java:840)
        at com.force3.snmp.SnmpExample.main(SnmpExample.java:51)

I get the same exception using the TcpAddresss class as well.

Anyone have a clue what I should be using to specify the address?

Regards,
James






Code -->

---------------------------------------------------------
package example;

import java.io.IOException;

import org.snmp4j.PDU;
import org.snmp4j.ScopedPDU;
import org.snmp4j.Snmp;
import org.snmp4j.UserTarget;
import org.snmp4j.event.ResponseEvent;
import org.snmp4j.mp.SnmpConstants;
import org.snmp4j.security.SecurityLevel;
import org.snmp4j.smi.IpAddress;
import org.snmp4j.smi.OID;
import org.snmp4j.smi.OctetString;
import org.snmp4j.smi.TcpAddress;
import org.snmp4j.smi.UdpAddress;
import org.snmp4j.smi.VariableBinding;
import org.snmp4j.transport.DefaultUdpTransportMapping;

/**
 * 
 */
public class SnmpExample {

        // private static final OctetString UP = new OctetString("1");
        private static final OctetString DOWN = new OctetString("2");

        /**
         * @param args
         *          The command-line arguments
         */
        public static void main(String[] args) {

                PDU pdu = new ScopedPDU();
                pdu.setType(PDU.SET);
                VariableBinding vb = new VariableBinding(new 
OID("1.3.6.1.2.1.2.2.1.7"), DOWN);
                pdu.add(vb);

                UserTarget target = new UserTarget();
                target.setAddress(new IpAddress("10.10.0.2"));
                target.setVersion(SnmpConstants.version3);
                target.setRetries(1);
                target.setTimeout(500);
                target.setSecurityLevel(SecurityLevel.AUTH_PRIV);
                target.setSecurityName(new OctetString("MD5DES"));

                try {
                        Snmp snmp = new Snmp(new DefaultUdpTransportMapping());
                        snmp.listen();
                        ResponseEvent response = snmp.send(pdu, target);
                        if (response.getResponse() != null) {
                                
System.out.println(response.getResponse().toString());
                        }
                } catch (IOException e) {
                        e.printStackTrace();
                        System.exit(99);
                }

        }

}
_______________________________________________
SNMP4J mailing list
[email protected]
http://lists.agentpp.org/mailman/listinfo/snmp4j

Reply via email to