1. 12 Apr, 2020 2 commits
  2. 12 Feb, 2020 4 commits
  3. 11 Feb, 2020 3 commits
  4. 10 Feb, 2020 1 commit
  5. 28 Jan, 2020 1 commit
  6. 12 Dec, 2019 1 commit
  7. 11 Dec, 2019 3 commits
    • Adrian Chiris's avatar
      Move get get_vfs_macs_ib from pci_utils to ib_utils · 73e452ba
      Adrian Chiris authored
      As fetching GUIDs is not really a PCI related operation
      the methods related need to be in ib_utils module
      
      A followup patch will introduce a fix to these methods for
      ConnectX-3 as fetching a GUID is done according to the VF's GID
      index and not its VF index.
      
      Change-Id: I57789b37a2be39b9c19129c3d7e2cd26ea66d52e
      73e452ba
    • Adrian Chiris's avatar
      Align all index related data in eswitchd · 05ad0cff
      Adrian Chiris authored
      This patch aligns all *_idx methods to return an integer
      instead of string for consistency.
      
      This fixes an issue discovered when attempting to set PKEY
      for connectX-3 VF
      
      Change-Id: Ie877dfdf03f20b20a66eafd69c90d4c43a92b6dd
      05ad0cff
    • Adrian Chiris's avatar
      Remove Unused constants · ededb8ba
      Adrian Chiris authored
      Change-Id: Id17f733ef015e3503b695bb3151322ae35499e1c
      ededb8ba
  8. 10 Dec, 2019 1 commit
    • Adrian Chiris's avatar
      Fix zmq send/rcv for python3 · a53662ee
      Adrian Chiris authored
      we require to invoke send_string/recv_string methods when
      sending unicode.
      
      Change-Id: I26804ae3666f57b183eb0e987a4d23a14e59035e
      a53662ee
  9. 25 Nov, 2019 1 commit
  10. 14 Nov, 2019 11 commits
  11. 13 Nov, 2019 2 commits
    • Adrian Chiris's avatar
      Remove internal DB dependencies and refactoring · 2dd3bcb1
      Adrian Chiris authored
      This change performs some refactoring:
      
      - remove internal DB dpenedency (eswitch_db, device_db)
        removing libvirt dependency altoghether
      
      - Introduce EmbSwitch object to manage port operations on an
        embedded switch
      
      - Introduce EswitchManager object to manage muliple embeddes
        switches.
      
      - spearate infiniband specific functionality and move it to
        utils module.
      
      - eswitchd API was modified to use PCI address as port identifier
        to reduce mac address dependency.
      
      Change-Id: I79f9f356d0630e3efb2fa2624c3d9c2bad3d31fa
      2dd3bcb1
    • Adrian Chiris's avatar
      Reduce agent dependency on mac address · 4e6638bb
      Adrian Chiris authored
      This change reduces the agent's dependency on mac address
      when actin on port CRUD operations.
      
      a minimal dependency is still kept since we rely on MAC
      address to retrieve information from neutron server
      (get_device_details RPC).
      
      The following commit makes extensive changes to eswitchd
      amongst the changes, get_vnics() response dict is now keyed
      by PCI address and is reflected in this commit.
      
      Due to the extent of the changes the two commits should be
      merged in one pass and is partitioned here for easier review.
      
      Change-Id: I762a6e851c8abac92fd74faddaa5700347c8352c
      4e6638bb
  12. 12 Nov, 2019 1 commit
  13. 11 Nov, 2019 1 commit
  14. 06 Nov, 2019 1 commit
  15. 28 Oct, 2019 1 commit
    • abdallahyas's avatar
      Refactoring of process_port_info · d3932371
      abdallahyas authored
      Changed the way the method check the updated port such that it will
      check for extra opts then the mac, if any of the two conditions is
      not met, the updated port get generated again
      
      Change-Id: Ic87443966f5e39742b813ea2ca770261716071d2
      d3932371
  16. 23 Oct, 2019 3 commits
    • abdallahyas's avatar
      Refactor the way a device is identified · 6e9ebbb2
      abdallahyas authored
      Changed the get_vf_device_type way of getting the type of pf netdevices
      by using sysfs to read the driver name instead of relying on the PCI device
      ID.
      
      Change-Id: I6f1f722dffcf990e3ae6b514fb560596cea23c4b
      6e9ebbb2
    • Zuul's avatar
      Merge "Supporting SSL certificate verification" · 70eeea89
      Zuul authored
      70eeea89
    • abdallahyas's avatar
      Supporting SSL certificate verification · a31f341e
      abdallahyas authored
      Added the support for the https protocol in neo sessions by adding
      two new configuration options called cert_verify and cert_path, that
      tells the sdn wheter to verify the cert or not, and specify the path
      for the wanted cert file or directory if needed (self signed certificates)
      In case of directory, the cert should either be renamed to its hash
      value, or have a link to it that is named the hash value of the cert
      for the verification to be successful.
      
      https://requests.kennethreitz.org/en/master/user/advanced/
      
      Change-Id: Ibea26ace7c140c8c2a06c5a1e01dbb963f8fd612
      a31f341e
  17. 15 Oct, 2019 1 commit
  18. 25 Sep, 2019 2 commits
    • Adrian Chiris's avatar
      Add Support for performing net device operations via pyroute2 · 258adc56
      Adrian Chiris authored
      This change transitions the following operations to be
      executed by pyroute2:
      
      1. set VF Admin state
      2. set net device link state
      3. set GUID
      
      Today, eswitchd uses sysfs extensively to perform much
      of the operations.
      This change aims to reduce the use sysfs and performs
      these operations in a more linux, pythonic way by
      using netlink and utilizing pyroute2 library
      
      Elevation of privleges are done by privsep which is
      a safer model to be used than the existing rootwrap.
      
      - Introduce netdev_ops abstraction - netdev_opts
      - Implement abstraction using pyroute2
      - Use privsep to elevate privleges to perform operations
      - extend device_db to contain pf net device
      - Use netdev_ops in eswitch_handler
        - When setting GUID, fallback to old sysfs functionality
          in case of failure
      
      Change-Id: I807500e57b156fbaad85f42d70e9636c55beaa3d
      258adc56
    • Adrian Chiris's avatar
      Transition write_sys method to privsep · 1531e59d
      Adrian Chiris authored
      This commit introduces the use of privsep in the porject.
      In this commit we introduce a pattern that future commits will build
      on when there is a requirement to perform operation at elevated
      privleges.
      
      - Add privsep admin context
      - Add privsep configurations + some clenaup in configuration of eswitchd
      - sort devstack deployment with proper configuration files
      - add sys_ops module that performs system operations
      - elevate sys_ops write_sys method via privsep
      - use the new sys_ops module instead of current rootwrap + echo usage
      - remove 'echo' command from rootwrap
      
      Change-Id: I0feede9631bd48fdce73054e654d30a132c627c2
      1531e59d