description: >
    This defines an ethernet interface.
    An object implementing this interface must implement
    xyz.openbmc_project.State.OperationalStatus.


properties:
    - name: InterfaceName
      type: string
      description: >
          Name of the ethernet interface.
    - name: Speed
      type: uint32
      description: >
          Current speed of the ethernet interface, in Mbps.
    - name: AutoNeg
      type: boolean
      description: >
          This indicates if the speed and duplex are automatically negotiated
          and configured on this ethernet interface.
    - name: DomainName
      type: array[string]
      description: >
          Domain names of the ethernet interface.
    - name: DHCPEnabled
      type: boolean
      description: >
          Address mode of the ethernet interface.
    - name: Nameservers
      type: array[string]
      description: >
          DNS servers on the interface.
    - name: NTPServers
      type: array[string]
      description: >
          This property describes the NTP Servers on the interface.
          Implementation of this Dbus-interface is required to implement this property.
          This property supports read/write operation.
          Configure the NTP servers on the system during write operation.
    - name: LinkLocalAutoConf
      type: enum[self.LinkLocalConf]
      description: >
          This indicates link local auto configuration on this ethernet
          interface and configured on this ethernet interface.

enumerations:
    - name: LinkLocalConf
      description: >
          Possible link local auto configuration values.
      values:
        - name: both
        - name: v4
        - name: v6
        - name: none

