1. 18 Nov, 2005 1 commit
    • Robert Ricci's avatar
      When removing VLANs, get a new lock on the edit buffer for each VLAN · e5986abc
      Robert Ricci authored
      we're going to remove. We used to do all VLANs in one lock for
      performace reasons - however, I'm discovering that the lock can get
      held for such a long time when many VLANs are being deleted that other
      VLAN operations, such as listing VLANs, can fail. And, it's not
      actually that much slower to grab a new lock each time.
      e5986abc
  2. 13 Oct, 2005 1 commit
  3. 16 Aug, 2005 2 commits
  4. 28 Jul, 2005 1 commit
  5. 22 Jul, 2005 1 commit
    • Robert Ricci's avatar
      Finally convert listPorts to bulkwalk - this makes performing this · b823150b
      Robert Ricci authored
      operation on our existing stack 3x faster.
      
      The real reason for doing this, though, is robustness - the old
      code was terribly fragile, depending on several tables being in order,
      etc. This was breaking on some of our new switches.
      
      Also fix a few typos in debugging messages.
      b823150b
  6. 21 Jun, 2005 1 commit
    • Mike Hibler's avatar
      snmpit: snmpit_cisco returns " ", not null, when it cannot get speed/duplex · 2907d2c0
      Mike Hibler authored
      so -B now ignores that rather than warning.
      
      snmpit_cisco: hack to get around 2950 switch returning just <port>
      rather than <module>.<port> in interface info tables.
      
      Note: snmpit_cisco does not successfully return speed/duplex info for -b,
      this may cause problems with whack-on-lan and needs to be fixed!
      2907d2c0
  7. 08 Jun, 2005 1 commit
    • Robert Ricci's avatar
      Terrible hack. · 5cf8cbc1
      Robert Ricci authored
      Non-modular switches with two different types of interfaces give us
      trouble under IOS because they appear to be on the same module, but
      the duplicate card numbers. ie. Fastethernet0/1 and Gigabitethernet0/1
      Hack around this by pretending the gigabit ports on such a switch are
      on module 1, not module 0.
      
      This works fine on the 29xx series, but probably won't work well for
      anything else. The real solution is to move to iface instead of
      card.port, or use a type.card.port triple.
      
      In order to invoke this hack, you must put '-modhack' in the type for
      the switch in the nodes table.
      5cf8cbc1
  8. 03 Dec, 2004 1 commit
  9. 01 Dec, 2004 1 commit
    • Robert Ricci's avatar
      Add user-visible support for trunking. · cfdf5c00
      Robert Ricci authored
      Added support for Cisco switches to enable and disable trunking for a
      port.
      
      Added two new command-line options:
      -N <port> <vlans>
      	Enable trunking on a port, allowing the given list of VLANs to
      	cross the trunk
      
      -U <port>:
      	Disable trunking for the port
      
      This functionality is needed for Mike's firewall support.
      cfdf5c00
  10. 10 Nov, 2004 2 commits
  11. 08 Oct, 2004 1 commit
  12. 01 Oct, 2004 1 commit
  13. 13 Aug, 2004 1 commit
  14. 22 Oct, 2003 1 commit
    • Robert Ricci's avatar
      Change the way the switch modules for snmpit get their configuration · c069a419
      Robert Ricci authored
      information. Rather than pass it all in, which was getting very
      cumbersome, and inconsistent between Cisco and Intel switches, the
      modules query the database themselves (via a new function in
      snmpit_lib.pm).
      
      Also in this commit are two new options for switch stacks - the
      ability to specify minimum and maximum VLAN number to use.
      c069a419
  15. 11 Aug, 2003 1 commit
  16. 28 Apr, 2003 1 commit
  17. 26 Mar, 2003 1 commit
  18. 17 Mar, 2003 2 commits
  19. 18 Feb, 2003 1 commit
  20. 14 Feb, 2003 1 commit
  21. 10 Feb, 2003 1 commit
  22. 07 Feb, 2003 2 commits
  23. 06 Feb, 2003 1 commit
  24. 21 Jan, 2003 1 commit
  25. 17 Jan, 2003 1 commit
    • Robert Ricci's avatar
      New features: · 2d7b6b82
      Robert Ricci authored
          Accept [switch.]<module>/<port> format for ports, so that we can
      	deal with ports not in the database (mostly for my own
      	debugging sanity.)
          A -n option that prevents assign from changing hardware settings
          	(though, unlike TESTMODE, does read some information from
      	the switches)
          Private VLAN support, through the -x,-y, and -z switches. There
      	are only 5 letters of the alphabet left, so I've given up on
      	memnonic switches.
          Worked a bit on making VLAN deletion more efficient, but with
          	little sucess
      
      Private VLANs work like so:
      Make a primary private VLAN with:
      snmpit -m myvlan-primary -y primary
      Attach a community VLAN to it like so:
      snmpit -m myvlan-community -y community -x myvlan-primary -z cisco2.1/15
      Put some ports into the community VLAN:
      snmpit -m myvlan-community pc1:0 pc2:0
      2d7b6b82
  26. 10 Jan, 2003 1 commit
  27. 11 Jul, 2002 1 commit
  28. 07 Jul, 2002 1 commit
  29. 20 Jun, 2002 1 commit
  30. 19 Jun, 2002 1 commit
  31. 17 Jun, 2002 1 commit
    • Robert Ricci's avatar
      Made some functions that previously took only a single port or VLAN · 13381879
      Robert Ricci authored
      take more than one. This can increase efficiency, since, for example,
      we now only have to lock the VLAN edit buffer once when tearing down
      an experiment, instead of once per VLAN. There are still other
      functions (setVlanOnTrunks comes to mind) that could benefit from this
      treatment.
      
      These optimization have been made only for Ciscos - minimal changes
      necessary to keep Intel support working were made, but they will still
      have the same old slow behavior.
      13381879
  32. 22 May, 2002 1 commit
    • Robert Ricci's avatar
      Add some robustness: Be more paranoid about trusing the switch's · ef75095f
      Robert Ricci authored
      return value on VLAN creation. If it reports success, we look for the
      VLAN with findVlan(), to make sure it's really there. We retry a
      couple times if it didn't work. This will add a small (sub-second)
      time penalty per VLAN created.
      
      We ran into one instance, that we've noticed, where the switch
      reported that VLAN creation succeeded, but the VLAN did not actually
      get created on the switch.
      ef75095f
  33. 12 Mar, 2002 1 commit
    • Robert Ricci's avatar
      Change the way we set VLANs very slightly. We used to use the vmVlan · a5e752fb
      Robert Ricci authored
      OID from the CISCO-VLAN-MEMBERSHIP MIB. But, this MIB does not seem
      to be supported by all Cisco switches. So, we now use vlanPortVlan
      from the CISCO-STACK MIB.
      
      So, we no longer need CISCO-VLAN-MEMBERSHIP-MIB at all, which should make
      snmpit usable on a wider variety of Ciscos.
      a5e752fb
  34. 07 Mar, 2002 1 commit
  35. 21 Feb, 2002 1 commit
    • Robert Ricci's avatar
      Actually call the code to pick which VLANs are allowed on which trunk. · afb28fde
      Robert Ricci authored
      When dealing with trunks, since they may be EtherChannels, we have to
      make another lookup on the switch to get the ifIndex for the whole
      channel - can't just use the ifIndex of one of the ports like you
      can from the Cisco CLI.
      
      These changes make snmpit slightly slower - it now has to get more information
      from the switches when it's going to create or delete VLANs. However, this
      is on the order of fractions of seconds, so it shouldn't be too noticable.
      afb28fde
  36. 20 Feb, 2002 1 commit
    • Robert Ricci's avatar
      Code for picking which VLANs are allowed to go across which trunks. · 11e0ea5f
      Robert Ricci authored
      As much of it as possible switch-independant, and put in snmpit_lib.
      Should work for arbitrarily complicated switch toplogies, as long as
      there are not multiple trunks between two switches. (Multiple ports
      combined into one trunk are fine, however.)
      
      As a result of this, VLAN creations and deletions now need to operate
      on all switches, not just on the ones that have ports in the VLAN.
      This is because the traffic may have to traverse switches that have no
      ports in the VLAN to reach other switches that do.
      
      Not called yet. I've done simple testing, but need to do more, as this
      could get us into major trouble if it has bugs.
      11e0ea5f