现在的位置: 首页 > 综合 > 正文

xvcv

2018年03月30日 ⁄ 综合 ⁄ 共 983字 ⁄ 字号 评论关闭
import sys
sys.path.append('/V100R001C00B040/msp/software/packages/pysnmp-4.2.5/')
sys.path.append('/V100R001C00B040/msp/software/packages/pycrypto-2.6.1/')
sys.path.append('/V100R001C00B040/msp/software/packages/pyasn1')

import logging
import time
import threading

from pysnmp.entity import config
from pysnmp.entity.rfc3413.oneliner import cmdgen


class scanworker(threading.Thread):                                                                                     
    def __init__(self, func, *args):                                                                                    
        threading.Thread.__init__(self)                                                                                 
        self.__func = func                                                                                              
        self.setDaemon(True)                                                                                            
    def run(self):                                                                                                      
        try:                                                                                                            
            self.__func()                                                                                               
        except:                                                                                                         
            print 'error'                                                                                               
                                                                                                                        
def app_snmp_get(ipaddress, names, callback, *args, **kargs):
    '''
    '''
    cbCtx = (callback, args, kargs)
    cmdGen  = cmdgen.AsynCommandGenerator()
    cmdGen.getCmd(                                                       
            cmdgen.UsmUserData('root', 'Work@7*24', 'Work@7*24',config.usmHMACSHAAuthProtocol, config.usmAesCfb128Protocol),
            cmdgen.UdpTransportTarget((ipaddress, 161)),
            ( cmdgen.MibVariable('SNMPv2-MIB', names, 0), ),
            (cbFun, cbCtx)
            )
    #cmdGen.snmpEngine.transportDispatcher.runDispatcher()
    scanworker(cmdGen.snmpEngine.transportDispatcher.runDispatcher).start()

抱歉!评论已关闭.