# SET command

pysnmp.hlapi.setCmd(snmpEngine, authData, transportTarget, contextData, *varBinds, **options)

  Creates a generator to perform one or more SNMP SET queries.

  On each iteration, new SNMP SET request is send (RFC 1905 Section 4.2.5). The iterator blocks waiting for response to arrive or error to occur.

  Parameters:

    - snmpEngine (`SnmpEngine`) – Class instance representing SNMP engine.

    - authData (`CommunityData` or `UsmUserData`) – Class instance representing SNMP credentials.

    - transportTarget (`UdpTransportTarget` or `Udp6TransportTarget`) – Class instance representing transport type along with SNMP peer address.

    - contextData (`ContextData`) – Class instance representing SNMP ContextEngineId and ContextName values.

    - *varBinds (`ObjectType`) – One or more class instances representing MIB variables to place into SNMP request.

  Other Parameters:

    **options –

    Request options:

    > - lookupMib - load MIB and resolve response MIB variables at the cost of slightly reduced performance. Default is True. Default is True.

  Yields:

    - errorIndication (str) – True value indicates SNMP engine error.

    - errorStatus (str) – True value indicates SNMP PDU error.

    - errorIndex (int) – Non-zero value refers to varBinds[errorIndex-1]

    - varBinds (tuple) – A sequence of `ObjectType` class instances representing MIB variables returned in SNMP response.

  Raises:

    PySnmpError – Or its derivative indicating that an error occurred while performing SNMP operation.

  Notes

  The setCmd generator will be exhausted immidiately unless a new sequence of varBinds are send back into running generator (supported since Python 2.6).

  Examples

      >>> from pysnmp.hlapi import *
      >>> g = setCmd(SnmpEngine(),
      ...            CommunityData('public'),
      ...            UdpTransportTarget(('demo.snmplabs.com', 161)),
      ...            ContextData(),
      ...            ObjectType(ObjectIdentity('SNMPv2-MIB', 'sysDescr', 0), 'Linux i386'))
      >>> next(g)
      (None, 0, 0, [ObjectType(ObjectIdentity(ObjectName('1.3.6.1.2.1.1.1.0')), DisplayString('Linux i386'))])
      >>>