lldp_ext_dot3.h File Reference

IEEE 802.3 LLDP extension. More...

#include "core/net.h"
#include "lldp/lldp.h"

Go to the source code of this file.

Typedefs

struct {
   char_t   type
 
   uint32_t   dataStart
 
   uint32_t   dataLength
 
   uint8_t   nameLength
 
   char_t   name []
 
   uint8_t   tokenLen: 4
 
   uint8_t   type: 2
 
   uint8_t   version: 2
 
   uint8_t   code
 
   uint16_t   mid
 
   uint8_t   token []
 
   union {
      uint8_t   b [6]
 
      uint16_t   w [3]
 
   } 
 
   uint16_t   srcPort
 
   uint16_t   destPort
 
   uint32_t   seqNum
 
   uint32_t   ackNum
 
   uint8_t   reserved1: 4
 
   uint8_t   dataOffset: 4
 
   uint8_t   flags: 6
 
   uint8_t   reserved2: 2
 
   uint16_t   window
 
   uint16_t   checksum
 
   uint16_t   urgentPointer
 
   uint8_t   options []
 
   uint16_t   length
 
   uint8_t   data []
 
   uint8_t   op
 
   uint8_t   htype
 
   uint8_t   hlen
 
   uint8_t   hops
 
   uint32_t   xid
 
   uint16_t   secs
 
   uint16_t   flags
 
   Ipv4Addr   ciaddr
 
   Ipv4Addr   yiaddr
 
   Ipv4Addr   siaddr
 
   Ipv4Addr   giaddr
 
   MacAddr   chaddr
 
   uint8_t   unused [10]
 
   uint8_t   sname [64]
 
   uint8_t   file [128]
 
   uint32_t   magicCookie
 
   uint16_t   type
 
   uint16_t   hardwareType
 
   uint32_t   time
 
   MacAddr   linkLayerAddr
 
   uint16_t   id
 
   uint8_t   rd: 1
 
   uint8_t   tc: 1
 
   uint8_t   aa: 1
 
   uint8_t   opcode: 4
 
   uint8_t   qr: 1
 
   uint8_t   rcode: 4
 
   uint8_t   z: 3
 
   uint8_t   ra: 1
 
   uint16_t   qdcount
 
   uint16_t   ancount
 
   uint16_t   nscount
 
   uint16_t   arcount
 
   uint8_t   questions []
 
   uint16_t   controlWord
 
   uint16_t   byteCount
 
   uint8_t   bLength
 
   uint8_t   bDescriptorType
 
   uint16_t   bcdUsb
 
   uint8_t   bDeviceClass
 
   uint8_t   bDeviceSubClass
 
   uint8_t   bDeviceProtocol
 
   uint8_t   bMaxPacketSize0
 
   uint16_t   idVendor
 
   uint16_t   idProduct
 
   uint16_t   bcdDevice
 
   uint8_t   iManufacturer
 
   uint8_t   iProduct
 
   uint8_t   iSerialNumber
 
   uint8_t   bNumConfigurations
 
   uint8_t   maxRespTime
 
   Ipv4Addr   groupAddr
 
   uint16_t   hrd
 
   uint16_t   pro
 
   uint8_t   hln
 
   uint8_t   pln
 
   uint16_t   op
 
   MacAddr   sha
 
   Ipv4Addr   spa
 
   MacAddr   tha
 
   Ipv4Addr   tpa
 
   uint8_t   length
 
   uint8_t   value []
 
   uint16_t   first
 
   uint16_t   last
 
   uint16_t   next
 
   union {
      uint8_t   b [16]
 
      uint16_t   w [8]
 
      uint32_t   dw [4]
 
   } 
 
   uint16_t   maxRespDelay
 
   uint16_t   reserved
 
   Ipv6Addr   multicastAddr
 
   uint32_t   reserved
 
   uint16_t   pvid
 
   uint8_t   autoNegSupportStatus
 
   uint16_t   pmdAutoNegAdvCap
 
   uint16_t   operationalMauType
 
   uint16_t   capabilities
 
   uint8_t   deviceType
 
   uint8_t   lengthH: 1
 
   uint8_t   lengthL
 
   uint8_t   t: 1
 
   uint8_t   c: 1
 
   union {
      int32_t   integer
 
      uint8_t   octetString [1]
 
      uint8_t   oid [1]
 
      uint8_t   ipAddr [4]
 
      uint32_t   counter32
 
      uint32_t   gauge32
 
      uint32_t   unsigned32
 
      uint32_t   timeTicks
 
      uint64_t   counter64
 
   } 
 
   uint16_t   transactionId
 
   uint16_t   protocolId
 
   uint8_t   unitId
 
   uint8_t   pdu []
 
   uint8_t   retain: 1
 
   uint8_t   qos: 2
 
   uint8_t   dup: 1
 
   union {
      uint8_t   all
 
      struct {
         uint8_t   topicIdType: 2
 
         uint8_t   cleanSession: 1
 
         uint8_t   will: 1
 
         uint8_t   retain: 1
 
         uint8_t   qos: 2
 
         uint8_t   dup: 1
 
      } 
 
   } 
 
   uint8_t   b: 1
 
   uint8_t   identifier
 
   uint8_t   valueSize
 
   Ipv4Addr   srcIpAddr
 
   Ipv4Addr   destIpAddr
 
   Eui64   interfaceId
 
   uint16_t   mru
 
   uint8_t   peerIdLength
 
   uint8_t   peerId []
 
   uint32_t   seconds
 
   uint32_t   fraction
 
   uint16_t   opcode
 
   char_t   filename []
 
   uint8_t   reserved: 3
 
   uint8_t   fin: 1
 
   uint8_t   payloadLen: 7
 
   uint8_t   mask: 1
 
   uint8_t   extPayloadLen []
 
   uint32_t   length
 
   uint8_t   payload []
 
   uint8_t   protocolVersionId
 
   uint8_t   bpduType
 
   StpBridgeId   rootId
 
   uint32_t   rootPathCost
 
   StpBridgeId   bridgeId
 
   uint16_t   portId
 
   uint16_t   messageAge
 
   uint16_t   maxAge
 
   uint16_t   helloTime
 
   uint16_t   forwardDelay
 
   uint8_t   version1Length
 
   uint16_t   priority
 
   MacAddr   addr
 
LldpDot3MacPhyConfigStatusTlv
 MAC/PHY Configuration/Status TLV. More...
 
struct {
   char_t   type
 
   uint32_t   dataStart
 
   uint32_t   dataLength
 
   uint8_t   nameLength
 
   uint8_t   length: 4
 
   uint8_t   delta: 4
 
   union {
      uint8_t   b [8]
 
      uint16_t   w [4]
 
      uint32_t   dw [2]
 
   } 
 
   uint8_t   kind
 
   uint8_t   value []
 
   uint8_t   code
 
   uint16_t   type
 
   uint32_t   enterpriseNumber
 
   uint8_t   identifier []
 
   uint16_t   qtype
 
   uint16_t   qclass
 
   uint16_t   statusWord
 
   uint16_t   byteCount
 
   uint8_t   bLength
 
   uint8_t   bDescriptorType
 
   uint16_t   wTotalLength
 
   uint8_t   bNumInterfaces
 
   uint8_t   bConfigurationValue
 
   uint8_t   iConfiguration
 
   uint8_t   bmAttributes
 
   uint8_t   bMaxPower
 
   uint8_t   type
 
   uint16_t   checksum
 
   uint8_t   parameter
 
   uint8_t   unused [3]
 
   uint8_t   data []
 
   uint32_t   parameter
 
   uint8_t   nextHeader
 
   uint8_t   hdrExtLen
 
   uint8_t   options []
 
   uint8_t   curHopLimit
 
   uint8_t   reserved: 2
 
   uint8_t   p: 1
 
   uint8_t   prf: 2
 
   uint8_t   h: 1
 
   uint8_t   o: 1
 
   uint8_t   m: 1
 
   uint16_t   routerLifetime
 
   uint32_t   reachableTime
 
   uint32_t   retransTimer
 
   uint8_t   flags
 
   uint16_t   ppvid
 
   uint8_t   mdiPowerSupport
 
   uint8_t   psePowerPair
 
   uint8_t   powerClass
 
   uint8_t   appType
 
   uint8_t   vlanIdH: 5
 
   uint8_t   x: 1
 
   uint8_t   t: 1
 
   uint8_t   u: 1
 
   uint8_t   l2PriorityH: 1
 
   uint8_t   vlanIdL: 7
 
   uint8_t   dscpValue: 6
 
   uint8_t   l2PriorityL: 2
 
   uint8_t   chassisIdSubtype
 
   uint8_t   chassisId []
 
   uint8_t   functionCode
 
   uint16_t   startingAddr
 
   uint16_t   quantityOfCoils
 
   uint16_t   length
 
   uint8_t   msgType
 
   uint16_t   flags
 
   Ipv4Addr   addr
 
   uint8_t   valueSize
 
   uint16_t   protocol
 
   uint32_t   accm
 
   uint8_t   msgLength
 
   uint8_t   message []
 
   uint8_t   mode: 3
 
   uint8_t   vn: 3
 
   uint8_t   li: 2
 
   uint8_t   stratum
 
   uint8_t   poll
 
   int8_t   precision
 
   uint32_t   rootDelay
 
   uint32_t   rootDispersion
 
   uint32_t   referenceId
 
   NtpTimestamp   referenceTimestamp
 
   NtpTimestamp   originateTimestamp
 
   NtpTimestamp   receiveTimestamp
 
   NtpTimestamp   transmitTimestamp
 
   uint16_t   opcode
 
   char_t   filename []
 
   uint16_t   value []
 
   uint16_t   group
 
   uint8_t   keyExchange []
 
   uint32_t   id
 
   uint32_t   dataLen
 
LldpDot3PowerViaMdiTlv
 Power Via MDI TLV. More...
 
struct {
   uint32_t   totalSize
 
   ResRootEntry   rootEntry
 
   MacAddr   destAddr
 
   MacAddr   srcAddr
 
   uint16_t   type
 
   uint8_t   data []
 
   uint16_t   hardwareType
 
   MacAddr   linkLayerAddr
 
   uint16_t   rtype
 
   uint16_t   rclass
 
   uint32_t   ttl
 
   uint16_t   rdlength
 
   uint8_t   rdata []
 
   uint8_t   bLength
 
   uint8_t   bDescriptorType
 
   uint8_t   bInterfaceNumber
 
   uint8_t   bAlternateSetting
 
   uint8_t   bNumEndpoints
 
   uint8_t   bInterfaceClass
 
   uint8_t   bInterfaceSubClass
 
   uint8_t   bInterfaceProtocol
 
   uint8_t   iInterface
 
   uint8_t   type
 
   uint8_t   code
 
   uint16_t   checksum
 
   uint32_t   unused
 
   uint8_t   nextHeader
 
   uint8_t   hdrExtLen
 
   uint8_t   options []
 
   uint32_t   reserved
 
   Ipv6Addr   targetAddr
 
   uint16_t   vlanId
 
   uint8_t   vlanNameLen
 
   char_t   vlanName []
 
   uint8_t   aggregationStatus
 
   uint32_t   aggregatedPortId
 
   uint8_t   locationDataFormat
 
   uint8_t   locationId []
 
   uint8_t   portIdSubtype
 
   uint8_t   portId []
 
   uint8_t   functionCode
 
   uint8_t   byteCount
 
   uint8_t   coilStatus []
 
   uint8_t   prefix
 
   uint16_t   length
 
   uint8_t   msgType
 
   uint8_t   identifier
 
   uint8_t   message []
 
   uint8_t   length
 
   Ipv4Addr   ipAddr
 
   uint16_t   protocol
 
   uint8_t   msgLength
 
   uint8_t   rejectedPacket []
 
   uint32_t   keyId
 
   uint8_t   messageDigest [16]
 
   uint16_t   opcode
 
   uint16_t   block
 
   uint16_t   value []
 
   uint8_t   value []
 
LldpDot3LinkAggregationTlv
 Link Aggregation TLV. More...
 
struct {
   uint8_t   dsap
 
   uint8_t   ssap
 
   uint8_t   control
 
   uint8_t   msgType
 
   uint8_t   transactionId [3]
 
   uint8_t   options []
 
   uint16_t   rtype
 
   uint16_t   rclass
 
   uint32_t   ttl
 
   uint16_t   rdlength
 
   uint8_t   rdata [4]
 
   uint8_t   bLength
 
   uint8_t   bDescriptorType
 
   uint8_t   bEndpointAddress
 
   uint8_t   bmAttributes
 
   uint16_t   wMaxPacketSize
 
   uint8_t   bInterval
 
   uint8_t   type
 
   uint8_t   code
 
   uint16_t   checksum
 
   uint32_t   unused
 
   uint8_t   data []
 
   uint32_t   mtu
 
   uint8_t   nextHeader
 
   uint8_t   hdrExtLen
 
   uint8_t   routingType
 
   uint8_t   segmentsLeft
 
   uint32_t   reserved
 
   Ipv6Addr   address []
 
   uint8_t   reserved1: 5
 
   uint8_t   o: 1
 
   uint8_t   s: 1
 
   uint8_t   r: 1
 
   uint8_t   reserved2 [3]
 
   Ipv6Addr   targetAddr
 
   uint8_t   protocolIdLen
 
   uint8_t   protocolId []
 
   uint16_t   maxFrameSize
 
   uint8_t   powerPriority: 4
 
   uint8_t   powerSource: 2
 
   uint8_t   powerType: 2
 
   uint16_t   powerValue
 
   uint16_t   ttl
 
   uint8_t   functionCode
 
   uint16_t   startingAddr
 
   uint16_t   quantityOfInputs
 
   uint8_t   gwId
 
   uint16_t   duration
 
   uint8_t   identifier
 
   uint16_t   length
 
   uint8_t   message []
 
   uint8_t   length
 
   Ipv4Addr   ipAddr
 
   uint16_t   protocol
 
   uint16_t   rejectedProtocol
 
   uint8_t   rejectedInfo []
 
   uint16_t   opcode
 
   uint16_t   block
 
   uint16_t   version
 
   uint16_t   epoch
 
   DtlsSequenceNumber   seqNum
 
   uint8_t   hash
 
   uint8_t   signature
 
   uint8_t   value []
 
LldpDot3MaxFrameSizeTlv
 Maximum Frame Size TLV. More...
 
struct {
   uint16_t   tci
 
   uint16_t   type
 
   uint8_t   msgType
 
   uint8_t   hopCount
 
   Ipv6Addr   linkAddress
 
   Ipv6Addr   peerAddress
 
   uint8_t   options []
 
   uint16_t   rtype
 
   uint16_t   rclass
 
   uint32_t   ttl
 
   uint16_t   rdlength
 
   uint8_t   rdata [16]
 
   uint8_t   bLength
 
   uint8_t   bDescriptorType
 
   uint16_t   bString []
 
   uint8_t   type
 
   uint8_t   code
 
   uint16_t   checksum
 
   uint8_t   pointer
 
   uint8_t   unused [3]
 
   uint8_t   data []
 
   uint32_t   unused
 
   uint8_t   nextHeader
 
   uint8_t   payloadLen
 
   uint16_t   reserved
 
   uint32_t   securityParamIndex
 
   uint32_t   sequenceNumber
 
   uint8_t   authData []
 
   uint32_t   reserved
 
   Ipv6Addr   targetAddr
 
   Ipv6Addr   destAddr
 
   uint8_t   measurements [20]
 
   uint16_t   psePowerPriceIndex
 
   uint16_t   supportedCap
 
   uint16_t   enabledCap
 
   uint8_t   functionCode
 
   uint8_t   byteCount
 
   uint8_t   inputStatus []
 
   uint8_t   radius
 
   uint8_t   length
 
   Ipv4Addr   ipAddr
 
   uint32_t   magicNumber
 
   uint8_t   identifier
 
   uint16_t   length
 
   uint16_t   opcode
 
   uint16_t   errorCode
 
   char_t   errorMsg []
 
   uint16_t   msgSeq
 
   uint8_t   fragOffset [3]
 
   uint8_t   fragLength [3]
 
   TlsSignHashAlgo   value []
 
   uint8_t   value []
 
LldpDot3PowerViaMdiMeasTlv
 Power Via MDI Measurements TLV. More...
 
struct {
   uint16_t   code
 
   uint16_t   length
 
   uint8_t   value []
 
   uint16_t   rtype
 
   uint16_t   rclass
 
   uint32_t   ttl
 
   uint16_t   rdlength
 
   uint16_t   priority
 
   uint16_t   weight
 
   uint16_t   port
 
   uint8_t   target []
 
   uint8_t   bFunctionLength
 
   uint8_t   bDescriptorType
 
   uint8_t   bDescriptorSubtype
 
   uint16_t   bcdCdc
 
   uint8_t   type
 
   uint8_t   code
 
   uint16_t   checksum
 
   uint16_t   identifier
 
   uint16_t   sequenceNumber
 
   uint8_t   data []
 
   uint32_t   pointer
 
   uint32_t   securityParamIndex
 
   uint32_t   sequenceNumber
 
   uint8_t   payloadData []
 
   uint8_t   length
 
   uint8_t   powerPriority: 2
 
   uint8_t   pd4pid: 1
 
   uint8_t   reserved: 1
 
   uint8_t   powerSource: 2
 
   uint8_t   powerType: 2
 
   uint16_t   pdRequestedPower
 
   uint16_t   pseAllocatedPower
 
   uint8_t   mgmtAddrLen
 
   uint8_t   mgmtAddrSubtype
 
   uint8_t   mgmtAddr []
 
   uint8_t   functionCode
 
   uint16_t   startingAddr
 
   uint16_t   quantityOfRegs
 
   uint8_t   gwId
 
   uint8_t   gwAdd []
 
   Ipv4Addr   ipAddr
 
   uint8_t   identifier
 
   uint32_t   magicNumber
 
   uint16_t   serverVersion
 
   uint8_t   cookieLength
 
   uint8_t   cookie []
 
LldpDot3DllClassExt
 DLL Classification extension. More...
 
struct {
   uint32_t   iaId
 
   uint32_t   t1
 
   uint32_t   t2
 
   uint8_t   options []
 
   uint8_t   bFunctionLength
 
   uint8_t   bDescriptorType
 
   uint8_t   bDescriptorSubtype
 
   uint8_t   bmCapabilities
 
   uint8_t   bDataInterface
 
   uint8_t   type
 
   uint8_t   code
 
   uint16_t   checksum
 
   uint16_t   identifier
 
   uint16_t   sequenceNumber
 
   uint8_t   data []
 
   uint8_t   length
 
   MacAddr   linkLayerAddr
 
   uint16_t   pdRequestedPowerA
 
   uint16_t   pdRequestedPowerB
 
   uint16_t   pseAllocatedPowerA
 
   uint16_t   pseAllocatedPowerB
 
   uint16_t   powerStatus
 
   uint8_t   systemSetup
 
   uint16_t   pseMaxAvailablePower
 
   uint8_t   autoclass
 
   uint8_t   powerDown [3]
 
   uint8_t   ifNumSubtype
 
   uint32_t   ifNum
 
   uint8_t   oidLen
 
   uint8_t   oid []
 
   uint8_t   functionCode
 
   uint8_t   byteCount
 
   uint16_t   regValue []
 
   MqttSnFlags   flags
 
   uint8_t   protocolId
 
   uint16_t   duration
 
   char_t   clientId []
 
   Ipv4Addr   ipAddr
 
   uint16_t   length
 
   uint8_t   value []
 
LldpDot3Type34Ext
 Type 3 and Type 4 extension. More...
 

Enumerations

enum  LldpDot3Subtype {
  LLDP_DOT3_SUBTYPE_RESERVED = 0, LLDP_DOT3_SUBTYPE_MAC_PHY_CONFIG_STATUS = 1, LLDP_DOT3_SUBTYPE_POWER_VIA_MDI = 2, LLDP_DOT3_SUBTYPE_LINK_AGGREGATION = 3,
  LLDP_DOT3_SUBTYPE_MAX_FRAME_SIZE = 4, LLDP_DOT3_SUBTYPE_POWER_VIA_MDI_MEAS = 8
}
 IEEE 802.3 subtypes. More...
 
enum  LldpDot3AnFlags { LLDP_DOT3_AN_FLAG_SUPPORT = 0x01, LLDP_DOT3_AN_FLAG_STATUS = 0x02 }
 Auto-negotiation support/status flags. More...
 
enum  LldpDot3PmdAnAdvCapability {
  LLDP_DOT3_PMD_AN_ADV_CAP_OTHER = 0x8000, LLDP_DOT3_PMD_AN_ADV_CAP_10BT_HD = 0x4000, LLDP_DOT3_PMD_AN_ADV_CAP_10BT_FD = 0x2000, LLDP_DOT3_PMD_AN_ADV_CAP_100BT4 = 0x1000,
  LLDP_DOT3_PMD_AN_ADV_CAP_100BT_HD = 0x0800, LLDP_DOT3_PMD_AN_ADV_CAP_100BT_FD = 0x0400, LLDP_DOT3_PMD_AN_ADV_CAP_100BT2_HD = 0x0200, LLDP_DOT3_PMD_AN_ADV_CAP_100BT2_FD = 0x0100,
  LLDP_DOT3_PMD_AN_ADV_CAP_PAUSE = 0x0080, LLDP_DOT3_PMD_AN_ADV_CAP_ASYM_PAUSE = 0x0040, LLDP_DOT3_PMD_AN_ADV_CAP_SYM_PAUSE = 0x0020, LLDP_DOT3_PMD_AN_ADV_CAP_ASYM_SYM_PAUSE = 0x0010,
  LLDP_DOT3_PMD_AN_ADV_CAP_1000BX_HD = 0x0008, LLDP_DOT3_PMD_AN_ADV_CAP_1000BX_FD = 0x0004, LLDP_DOT3_PMD_AN_ADV_CAP_1000BT_HD = 0x0002, LLDP_DOT3_PMD_AN_ADV_CAP_1000BT_FD = 0x0001
}
 PMD auto-negotiation advertised capability. More...
 
enum  LldpDot3MauType {
  LLDP_DOT3_MAU_TYPE_INVALID = 0, LLDP_DOT3_MAU_TYPE_10BT_HD = 10, LLDP_DOT3_MAU_TYPE_10BT_FD = 11, LLDP_DOT3_MAU_TYPE_100BT4 = 14,
  LLDP_DOT3_MAU_TYPE_100BTX_HD = 15, LLDP_DOT3_MAU_TYPE_100BTX_FD = 16, LLDP_DOT3_MAU_TYPE_100BT2_HD = 19, LLDP_DOT3_MAU_TYPE_100BT2_FD = 20,
  LLDP_DOT3_MAU_TYPE_1000BX_HD = 21, LLDP_DOT3_MAU_TYPE_1000BX_FD = 22, LLDP_DOT3_MAU_TYPE_1000BT_HD = 29, LLDP_DOT3_MAU_TYPE_1000BT_FD = 30,
  LLDP_DOT3_MAU_TYPE_100BT1 = 105, LLDP_DOT3_MAU_TYPE_10BT1L = 141
}
 Operational MAU types. More...
 
enum  LldpDot3MdiPowerFlags {
  LLDP_DOT3_MDI_POWER_FLAG_PORT_CLASS = 0x01, LLDP_DOT3_MDI_POWER_FLAG_PORT_CLASS_PD = 0x00, LLDP_DOT3_MDI_POWER_FLAG_PORT_CLASS_PSE = 0x01, LLDP_DOT3_MDI_POWER_FLAG_PSE_MDI_POWER_SUPPORT = 0x02,
  LLDP_DOT3_MDI_POWER_FLAG_PSE_MDI_POWER_STATE = 0x04, LLDP_DOT3_MDI_POWER_FLAG_PSE_PAIRS_CTRL_ABILITY = 0x08
}
 MDI power capability/status flags. More...
 
enum  LldpDot3PsePowerPair { LLDP_DOT3_PSE_POWER_PAIR_SIGNAL = 1, LLDP_DOT3_PSE_POWER_PAIR_SPARE = 2, LLDP_DOT3_PSE_POWER_PAIR_ALT_A = 1, LLDP_DOT3_PSE_POWER_PAIR_ALT_B = 2 }
 PSE power pair. More...
 
enum  LldpDot3PowerClass {
  LLDP_DOT3_POWER_CLASS_0 = 1, LLDP_DOT3_POWER_CLASS_1 = 2, LLDP_DOT3_POWER_CLASS_2 = 3, LLDP_DOT3_POWER_CLASS_3 = 4,
  LLDP_DOT3_POWER_CLASS_4 = 5
}
 power class More...
 
enum  LldpDot3PowerType { LLDP_DOT3_POWER_TYPE_2_PSE = 0, LLDP_DOT3_POWER_TYPE_2_PD = 1, LLDP_DOT3_POWER_TYPE_1_PSE = 2, LLDP_DOT3_POWER_TYPE_1_PD = 3 }
 power type More...
 
enum  LldpDot3PowerSource {
  LLDP_DOT3_PD_POWER_SOURCE_UNKNOWN = 0, LLDP_DOT3_PD_POWER_SOURCE_PSE = 1, LLDP_DOT3_PD_POWER_SOURCE_RESERVED = 2, LLDP_DOT3_PD_POWER_SOURCE_PSE_AND_LOCAL = 3,
  LLDP_DOT3_PSE_POWER_SOURCE_UNKNOWN = 0, LLDP_DOT3_PSE_POWER_SOURCE_PRIMARY = 1, LLDP_DOT3_PSE_POWER_SOURCE_BACKUP = 2, LLDP_DOT3_PSE_POWER_SOURCE_RESERVED = 3
}
 power source More...
 
enum  LldpDot3PowerPriority { LLDP_DOT3_POWER_PRIORITY_UNKNOWN = 0, LLDP_DOT3_POWER_PRIORITY_CRITICAL = 1, LLDP_DOT3_POWER_PRIORITY_HIGH = 2, LLDP_DOT3_POWER_PRIORITY_LOW = 3 }
 Power priority. More...
 
enum  LldpDot3PowerStatus {
  LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT = 0x000F, LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_1 = 0x0001, LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_2 = 0x0002, LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_3 = 0x0003,
  LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_4 = 0x0004, LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_5 = 0x0005, LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_6 = 0x0006, LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_7 = 0x0007,
  LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_8 = 0x0008, LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_DUAL_SIGN_PD = 0x000F, LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B = 0x0070, LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B_CLASS_1 = 0x0010,
  LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B_CLASS_2 = 0x0020, LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B_CLASS_3 = 0x0030, LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B_CLASS_4 = 0x0040, LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B_CLASS_5 = 0x0050,
  LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B_SINGLE_SIGN_PD = 0x0070, LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B_2_PAIR_ONLY_PSE = 0x0070, LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A = 0x0380, LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A_CLASS_1 = 0x0080,
  LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A_CLASS_2 = 0x0100, LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A_CLASS_3 = 0x0180, LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A_CLASS_4 = 0x0200, LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A_CLASS_5 = 0x0280,
  LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A_SINGLE_SIGN_PD = 0x0380, LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A_2_PAIR_ONLY_PSE = 0x0380, LLDP_DOT3_POWER_STATUS_PSE_POWER_PAIRS_EXT = 0x0C00, LLDP_DOT3_POWER_STATUS_PSE_POWER_PAIRS_EXT_ALT_A = 0x0400,
  LLDP_DOT3_POWER_STATUS_PSE_POWER_PAIRS_EXT_ALT_B = 0x0800, LLDP_DOT3_POWER_STATUS_PSE_POWER_PAIRS_EXT_BOTH = 0x0C00, LLDP_DOT3_POWER_STATUS_PD_POWERED_STATUS = 0x3000, LLDP_DOT3_POWER_STATUS_PD_POWERED_STATUS_SINGLE_SIGN_PD = 0x1000,
  LLDP_DOT3_POWER_STATUS_PD_POWERED_STATUS_2_PAIR_DUAL_SIGN_PD = 0x2000, LLDP_DOT3_POWER_STATUS_PD_POWERED_STATUS_4_PAIR_DUAL_SIGN_PD = 0x3000, LLDP_DOT3_POWER_STATUS_PSE_POWERING_STATUS = 0xC000, LLDP_DOT3_POWER_STATUS_PSE_POWERING_STATUS_2_PAIR = 0x4000,
  LLDP_DOT3_POWER_STATUS_PSE_POWERING_STATUS_4_PAIR_SINGLE_SIGN_PD = 0x8000, LLDP_DOT3_POWER_STATUS_PSE_POWERING_STATUS_4_PAIR_DUAL_SIGN_PD = 0xC000
}
 Power status. More...
 
enum  LldpDot3SystemSetup {
  LLDP_DOT3_SYSTEM_SETUP_PD_LOAD = 0x01, LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_EXT = 0x0E, LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_EXT_TYPE_3_PSE = 0x00, LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_EXT_TYPE_4_PSE = 0x02,
  LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_EXT_TYPE_3_SINGLE_SIGN_PD = 0x04, LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_EXT_TYPE_3_DUAL_SIGN_PD = 0x06, LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_EXT_TYPE_4_SINGLE_SIGN_PD = 0x08, LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_EXT_TYPE_4_DUAL_SIGN_PD = 0x0A,
  LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_RESERVED = 0xF0
}
 System setup. More...
 
enum  LldpDot3Autoclass { LLDP_DOT3_AUTOCLASS_REQUEST = 0x01, LLDP_DOT3_AUTOCLASS_COMPLETED = 0x02, LLDP_DOT3_AUTOCLASS_PSE_SUPPORT = 0x04, LLDP_DOT3_AUTOCLASS_RESERVED = 0xF8 }
 Autoclass field. More...
 
enum  LldpDot3PowerDown { LLDP_DOT3_POWER_DOWN_REQUEST = 0x740000, LLDP_DOT3_POWER_DOWN_TIME = 0x03FFFF }
 Power down field. More...
 
enum  LldpDot3LinkAggregationFlag { LLDP_DOT3_LINK_AGGREGATION_FLAG_CAP = 0x01, LLDP_DOT3_LINK_AGGREGATION_FLAG_STATUS = 0x02 }
 Link aggregation capability/status flags. More...
 

Functions

error_t lldpDot3SetLocalMacPhyConfigStatus (LldpAgentContext *context, uint_t portIndex, uint8_t autoNegSupportStatus, uint16_t pmdAutoNegAdvCap, uint16_t operationalMauType)
 Set MAC/PHY configuration/status. More...
 
error_t lldpDot3SetLocalPowerViaMdi (LldpAgentContext *context, uint_t portIndex, uint8_t mdiPowerSupport, LldpDot3PsePowerPair psePowerPair, LldpDot3PowerClass powerClass, const LldpDot3DllClassExt *dllClassExt, const LldpDot3Type34Ext *type34Ext)
 Set power-via-MDI. More...
 
error_t lldpDot3SetLocalLinkAggregation (LldpAgentContext *context, uint_t portIndex, uint8_t aggregationStatus, uint32_t aggregatedPortId)
 Set Link aggregation. More...
 
error_t lldpDot3SetLocalMaxFrameSize (LldpAgentContext *context, uint_t portIndex, uint16_t maxFrameSize)
 Set maximum frame size. More...
 
error_t lldpDot3SetLocalPowerViaMdiMeas (LldpAgentContext *context, uint_t portIndex, uint8_t measurements[20], uint16_t psePowerPriceIndex)
 Set power-via-MDI measurements. More...
 
error_t lldpDot3DeleteLocalTlv (LldpAgentContext *context, LldpDot3Subtype subtype)
 Remove all IEEE 802.3 specific TLVs with specified subtype. More...
 

Detailed Description

IEEE 802.3 LLDP extension.

License

SPDX-License-Identifier: GPL-2.0-or-later

Copyright (C) 2010-2022 Oryx Embedded SARL. All rights reserved.

This file is part of CycloneTCP Open.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.

Author
Oryx Embedded SARL (www.oryx-embedded.com)
Version
2.2.0

Definition in file lldp_ext_dot3.h.

Typedef Documentation

◆ LldpDot3DllClassExt

typedef { ... } LldpDot3DllClassExt

DLL Classification extension.

◆ LldpDot3LinkAggregationTlv

typedef { ... } LldpDot3LinkAggregationTlv

Link Aggregation TLV.

◆ LldpDot3MacPhyConfigStatusTlv

MAC/PHY Configuration/Status TLV.

◆ LldpDot3MaxFrameSizeTlv

typedef { ... } LldpDot3MaxFrameSizeTlv

Maximum Frame Size TLV.

◆ LldpDot3PowerViaMdiMeasTlv

typedef { ... } LldpDot3PowerViaMdiMeasTlv

Power Via MDI Measurements TLV.

◆ LldpDot3PowerViaMdiTlv

typedef { ... } LldpDot3PowerViaMdiTlv

Power Via MDI TLV.

◆ LldpDot3Type34Ext

typedef { ... } LldpDot3Type34Ext

Type 3 and Type 4 extension.

Enumeration Type Documentation

◆ LldpDot3AnFlags

Auto-negotiation support/status flags.

Enumerator
LLDP_DOT3_AN_FLAG_SUPPORT 

Auto-negotiation support.

LLDP_DOT3_AN_FLAG_STATUS 

Auto-negotiation status.

Definition at line 63 of file lldp_ext_dot3.h.

◆ LldpDot3Autoclass

Autoclass field.

Enumerator
LLDP_DOT3_AUTOCLASS_REQUEST 
LLDP_DOT3_AUTOCLASS_COMPLETED 
LLDP_DOT3_AUTOCLASS_PSE_SUPPORT 
LLDP_DOT3_AUTOCLASS_RESERVED 

Definition at line 272 of file lldp_ext_dot3.h.

◆ LldpDot3LinkAggregationFlag

Link aggregation capability/status flags.

Enumerator
LLDP_DOT3_LINK_AGGREGATION_FLAG_CAP 

Aggregation capability.

LLDP_DOT3_LINK_AGGREGATION_FLAG_STATUS 

Aggregation status.

Definition at line 296 of file lldp_ext_dot3.h.

◆ LldpDot3MauType

Operational MAU types.

Enumerator
LLDP_DOT3_MAU_TYPE_INVALID 

Invalid.

LLDP_DOT3_MAU_TYPE_10BT_HD 

dot3MauType10BaseTHD

LLDP_DOT3_MAU_TYPE_10BT_FD 

dot3MauType10BaseTFD

LLDP_DOT3_MAU_TYPE_100BT4 

dot3MauType100BaseT4

LLDP_DOT3_MAU_TYPE_100BTX_HD 

dot3MauType100BaseTXHD

LLDP_DOT3_MAU_TYPE_100BTX_FD 

dot3MauType100BaseTXFD

LLDP_DOT3_MAU_TYPE_100BT2_HD 

dot3MauType100BaseT2HD

LLDP_DOT3_MAU_TYPE_100BT2_FD 

dot3MauType100BaseT2FD

LLDP_DOT3_MAU_TYPE_1000BX_HD 

dot3MauType1000BaseXHD

LLDP_DOT3_MAU_TYPE_1000BX_FD 

dot3MauType1000BaseXFD

LLDP_DOT3_MAU_TYPE_1000BT_HD 

dot3MauType1000BaseTHD

LLDP_DOT3_MAU_TYPE_1000BT_FD 

dot3MauType1000BaseTFD

LLDP_DOT3_MAU_TYPE_100BT1 

dot3MauType100baseT1

LLDP_DOT3_MAU_TYPE_10BT1L 

dot3MauType10baseT1L

Definition at line 99 of file lldp_ext_dot3.h.

◆ LldpDot3MdiPowerFlags

MDI power capability/status flags.

Enumerator
LLDP_DOT3_MDI_POWER_FLAG_PORT_CLASS 

Port class.

LLDP_DOT3_MDI_POWER_FLAG_PORT_CLASS_PD 

Port class - PD.

LLDP_DOT3_MDI_POWER_FLAG_PORT_CLASS_PSE 

Port class - PSE.

LLDP_DOT3_MDI_POWER_FLAG_PSE_MDI_POWER_SUPPORT 

PSE MDI power support.

LLDP_DOT3_MDI_POWER_FLAG_PSE_MDI_POWER_STATE 

PSE MDI power state.

LLDP_DOT3_MDI_POWER_FLAG_PSE_PAIRS_CTRL_ABILITY 

PSE pairs control ability.

Definition at line 122 of file lldp_ext_dot3.h.

◆ LldpDot3PmdAnAdvCapability

PMD auto-negotiation advertised capability.

Enumerator
LLDP_DOT3_PMD_AN_ADV_CAP_OTHER 

Other or unknown.

LLDP_DOT3_PMD_AN_ADV_CAP_10BT_HD 

10BASE-T half-duplex mode

LLDP_DOT3_PMD_AN_ADV_CAP_10BT_FD 

10BASE-T full-duplex mode

LLDP_DOT3_PMD_AN_ADV_CAP_100BT4 

100BASE-T4

LLDP_DOT3_PMD_AN_ADV_CAP_100BT_HD 

100BASE-TX half-duplex mode

LLDP_DOT3_PMD_AN_ADV_CAP_100BT_FD 

100BASE-TX full-duplex mode

LLDP_DOT3_PMD_AN_ADV_CAP_100BT2_HD 

100BASE-T2 half-duplex mode

LLDP_DOT3_PMD_AN_ADV_CAP_100BT2_FD 

100BASE-T2 full-duplex mode

LLDP_DOT3_PMD_AN_ADV_CAP_PAUSE 

PAUSE for full-duplex links.

LLDP_DOT3_PMD_AN_ADV_CAP_ASYM_PAUSE 

Asymmetric PAUSE for full-duplex links.

LLDP_DOT3_PMD_AN_ADV_CAP_SYM_PAUSE 

Symmetric PAUSE for full-duplex links.

LLDP_DOT3_PMD_AN_ADV_CAP_ASYM_SYM_PAUSE 

Asymmetric and Symmetric PAUSE for full-duplex links.

LLDP_DOT3_PMD_AN_ADV_CAP_1000BX_HD 

1000BASE-X, -LX, -SX, -CX half-duplex mode

LLDP_DOT3_PMD_AN_ADV_CAP_1000BX_FD 

1000BASE-X, -LX, -SX, -CX full-duplex mode

LLDP_DOT3_PMD_AN_ADV_CAP_1000BT_HD 

1000BASE-T half-duplex mode

LLDP_DOT3_PMD_AN_ADV_CAP_1000BT_FD 

1000BASE-T full-duplex mode

Definition at line 74 of file lldp_ext_dot3.h.

◆ LldpDot3PowerClass

power class

Enumerator
LLDP_DOT3_POWER_CLASS_0 

Class 0 PD.

LLDP_DOT3_POWER_CLASS_1 

Class 1 PD.

LLDP_DOT3_POWER_CLASS_2 

Class 2 PD.

LLDP_DOT3_POWER_CLASS_3 

Class 3 PD.

LLDP_DOT3_POWER_CLASS_4 

Class 4 and above PD.

Definition at line 150 of file lldp_ext_dot3.h.

◆ LldpDot3PowerDown

Power down field.

Enumerator
LLDP_DOT3_POWER_DOWN_REQUEST 
LLDP_DOT3_POWER_DOWN_TIME 

Definition at line 285 of file lldp_ext_dot3.h.

◆ LldpDot3PowerPriority

Power priority.

Enumerator
LLDP_DOT3_POWER_PRIORITY_UNKNOWN 

Unknown.

LLDP_DOT3_POWER_PRIORITY_CRITICAL 

Critical.

LLDP_DOT3_POWER_PRIORITY_HIGH 

High.

LLDP_DOT3_POWER_PRIORITY_LOW 

Low.

Definition at line 194 of file lldp_ext_dot3.h.

◆ LldpDot3PowerSource

power source

Enumerator
LLDP_DOT3_PD_POWER_SOURCE_UNKNOWN 

Unknown (PD device type)

LLDP_DOT3_PD_POWER_SOURCE_PSE 

PSE (PD device type)

LLDP_DOT3_PD_POWER_SOURCE_RESERVED 

Reserved (PD device type)

LLDP_DOT3_PD_POWER_SOURCE_PSE_AND_LOCAL 

PSE and local (PD device type)

LLDP_DOT3_PSE_POWER_SOURCE_UNKNOWN 

Unknown (PSE device type)

LLDP_DOT3_PSE_POWER_SOURCE_PRIMARY 

Primary power source (PSE device type)

LLDP_DOT3_PSE_POWER_SOURCE_BACKUP 

Backup source (PSE device type)

LLDP_DOT3_PSE_POWER_SOURCE_RESERVED 

Reserved (PSE device type)

Definition at line 177 of file lldp_ext_dot3.h.

◆ LldpDot3PowerStatus

Power status.

Enumerator
LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT 
LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_1 
LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_2 
LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_3 
LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_4 
LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_5 
LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_6 
LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_7 
LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_CLASS_8 
LLDP_DOT3_POWER_STATUS_POWER_CLASS_EXT_DUAL_SIGN_PD 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B_CLASS_1 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B_CLASS_2 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B_CLASS_3 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B_CLASS_4 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B_CLASS_5 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B_SINGLE_SIGN_PD 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_B_2_PAIR_ONLY_PSE 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A_CLASS_1 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A_CLASS_2 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A_CLASS_3 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A_CLASS_4 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A_CLASS_5 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A_SINGLE_SIGN_PD 
LLDP_DOT3_POWER_STATUS_DUAL_SIGN_POWER_CLASS_EXT_A_2_PAIR_ONLY_PSE 
LLDP_DOT3_POWER_STATUS_PSE_POWER_PAIRS_EXT 
LLDP_DOT3_POWER_STATUS_PSE_POWER_PAIRS_EXT_ALT_A 
LLDP_DOT3_POWER_STATUS_PSE_POWER_PAIRS_EXT_ALT_B 
LLDP_DOT3_POWER_STATUS_PSE_POWER_PAIRS_EXT_BOTH 
LLDP_DOT3_POWER_STATUS_PD_POWERED_STATUS 
LLDP_DOT3_POWER_STATUS_PD_POWERED_STATUS_SINGLE_SIGN_PD 
LLDP_DOT3_POWER_STATUS_PD_POWERED_STATUS_2_PAIR_DUAL_SIGN_PD 
LLDP_DOT3_POWER_STATUS_PD_POWERED_STATUS_4_PAIR_DUAL_SIGN_PD 
LLDP_DOT3_POWER_STATUS_PSE_POWERING_STATUS 
LLDP_DOT3_POWER_STATUS_PSE_POWERING_STATUS_2_PAIR 
LLDP_DOT3_POWER_STATUS_PSE_POWERING_STATUS_4_PAIR_SINGLE_SIGN_PD 
LLDP_DOT3_POWER_STATUS_PSE_POWERING_STATUS_4_PAIR_DUAL_SIGN_PD 

Definition at line 207 of file lldp_ext_dot3.h.

◆ LldpDot3PowerType

power type

Enumerator
LLDP_DOT3_POWER_TYPE_2_PSE 

Type 2 PSE.

LLDP_DOT3_POWER_TYPE_2_PD 

Type 2 PD.

LLDP_DOT3_POWER_TYPE_1_PSE 

Type 1 PSE.

LLDP_DOT3_POWER_TYPE_1_PD 

Type 1 PD.

Definition at line 164 of file lldp_ext_dot3.h.

◆ LldpDot3PsePowerPair

PSE power pair.

Enumerator
LLDP_DOT3_PSE_POWER_PAIR_SIGNAL 

Signal.

LLDP_DOT3_PSE_POWER_PAIR_SPARE 

Spare.

LLDP_DOT3_PSE_POWER_PAIR_ALT_A 

Alternative A.

LLDP_DOT3_PSE_POWER_PAIR_ALT_B 

Alternative B.

Definition at line 137 of file lldp_ext_dot3.h.

◆ LldpDot3Subtype

IEEE 802.3 subtypes.

Enumerator
LLDP_DOT3_SUBTYPE_RESERVED 

Reserved.

LLDP_DOT3_SUBTYPE_MAC_PHY_CONFIG_STATUS 

MAC/PHY Configuration/Status.

LLDP_DOT3_SUBTYPE_POWER_VIA_MDI 

Power Via MDI.

LLDP_DOT3_SUBTYPE_LINK_AGGREGATION 

Link Aggregation.

LLDP_DOT3_SUBTYPE_MAX_FRAME_SIZE 

Maximum Frame Size.

LLDP_DOT3_SUBTYPE_POWER_VIA_MDI_MEAS 

Power Via MDI Measurements.

Definition at line 48 of file lldp_ext_dot3.h.

◆ LldpDot3SystemSetup

System setup.

Enumerator
LLDP_DOT3_SYSTEM_SETUP_PD_LOAD 
LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_EXT 
LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_EXT_TYPE_3_PSE 
LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_EXT_TYPE_4_PSE 
LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_EXT_TYPE_3_SINGLE_SIGN_PD 
LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_EXT_TYPE_3_DUAL_SIGN_PD 
LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_EXT_TYPE_4_SINGLE_SIGN_PD 
LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_EXT_TYPE_4_DUAL_SIGN_PD 
LLDP_DOT3_SYSTEM_SETUP_POWER_TYPE_RESERVED 

Definition at line 254 of file lldp_ext_dot3.h.

Function Documentation

◆ lldpDot3DeleteLocalTlv()

error_t lldpDot3DeleteLocalTlv ( LldpAgentContext context,
LldpDot3Subtype  subtype 
)

Remove all IEEE 802.3 specific TLVs with specified subtype.

Parameters
[in]contextPointer to the LLDP agent context
[in]subtypeTLV subtype
Returns
Error code

Definition at line 442 of file lldp_ext_dot3.c.

◆ lldpDot3SetLocalLinkAggregation()

error_t lldpDot3SetLocalLinkAggregation ( LldpAgentContext context,
uint_t  portIndex,
uint8_t  aggregationStatus,
uint32_t  aggregatedPortId 
)

Set Link aggregation.

Parameters
[in]contextPointer to the LLDP agent context
[in]portIndexPort index
[in]aggregationStatusBit-map of the link aggregation capabilities and the current aggregation status of the link
[in]aggregatedPortIdIEEE 802.3 aggregated port identifier,
Returns
Error code

Definition at line 244 of file lldp_ext_dot3.c.

◆ lldpDot3SetLocalMacPhyConfigStatus()

error_t lldpDot3SetLocalMacPhyConfigStatus ( LldpAgentContext context,
uint_t  portIndex,
uint8_t  autoNegSupportStatus,
uint16_t  pmdAutoNegAdvCap,
uint16_t  operationalMauType 
)

Set MAC/PHY configuration/status.

Parameters
[in]contextPointer to the LLDP agent context
[in]portIndexPort index
[in]autoNegSupportStatusBit-map that identifies the auto-negotiation support and current status of the local 802.3 LAN station
[in]pmdAutoNegAdvCapPMD auto-negotiation advertised capability
[in]operationalMauTypeMAU type of the sending device
Returns
Error code

Definition at line 57 of file lldp_ext_dot3.c.

◆ lldpDot3SetLocalMaxFrameSize()

error_t lldpDot3SetLocalMaxFrameSize ( LldpAgentContext context,
uint_t  portIndex,
uint16_t  maxFrameSize 
)

Set maximum frame size.

Parameters
[in]contextPointer to the LLDP agent context
[in]portIndexPort index
[in]maxFrameSizeMaximum supported frame size, in octets
Returns
Error code

Definition at line 310 of file lldp_ext_dot3.c.

◆ lldpDot3SetLocalPowerViaMdi()

error_t lldpDot3SetLocalPowerViaMdi ( LldpAgentContext context,
uint_t  portIndex,
uint8_t  mdiPowerSupport,
LldpDot3PsePowerPair  psePowerPair,
LldpDot3PowerClass  powerClass,
const LldpDot3DllClassExt dllClassExt,
const LldpDot3Type34Ext type34Ext 
)

Set power-via-MDI.

Parameters
[in]contextPointer to the LLDP agent context
[in]portIndexPort index
[in]mdiPowerSupportBit-map of the MDI power capabilities and status
[in]psePowerPairPSE power pair
[in]powerClassPSE power classification
[in]dllClassExtDLL classification extension (optional parameter)
[in]type34ExtType 3 and Type 4 extension (optional parameter)
Returns
Error code

Definition at line 130 of file lldp_ext_dot3.c.

◆ lldpDot3SetLocalPowerViaMdiMeas()

error_t lldpDot3SetLocalPowerViaMdiMeas ( LldpAgentContext context,
uint_t  portIndex,
uint8_t  measurements[20],
uint16_t  psePowerPriceIndex 
)

Set power-via-MDI measurements.

Parameters
[in]contextPointer to the LLDP agent context
[in]portIndexPort index
[in]measurementsMeasured values
[in]psePowerPriceIndexIndex of the current price of electricity compared to what the PSE considers the nominal electricity price
Returns
Error code

Definition at line 376 of file lldp_ext_dot3.c.

Variable Documentation

◆ aggregatedPortId

uint32_t aggregatedPortId

Definition at line 340 of file lldp_ext_dot3.h.

◆ aggregationStatus

uint8_t aggregationStatus

Definition at line 339 of file lldp_ext_dot3.h.

◆ autoclass

uint8_t autoclass

Definition at line 402 of file lldp_ext_dot3.h.

◆ autoNegSupportStatus

uint8_t autoNegSupportStatus

Definition at line 315 of file lldp_ext_dot3.h.

◆ maxFrameSize

uint16_t maxFrameSize

Definition at line 350 of file lldp_ext_dot3.h.

◆ mdiPowerSupport

uint8_t mdiPowerSupport

Definition at line 327 of file lldp_ext_dot3.h.

◆ measurements

uint8_t measurements[20]

Definition at line 360 of file lldp_ext_dot3.h.

◆ operationalMauType

uint16_t operationalMauType

Definition at line 317 of file lldp_ext_dot3.h.

◆ pd4pid

uint8_t pd4pid

Definition at line 379 of file lldp_ext_dot3.h.

◆ pdRequestedPower

uint16_t pdRequestedPower

Definition at line 384 of file lldp_ext_dot3.h.

◆ pdRequestedPowerA

uint16_t pdRequestedPowerA

Definition at line 395 of file lldp_ext_dot3.h.

◆ pdRequestedPowerB

uint16_t pdRequestedPowerB

Definition at line 396 of file lldp_ext_dot3.h.

◆ pmdAutoNegAdvCap

uint16_t pmdAutoNegAdvCap

Definition at line 316 of file lldp_ext_dot3.h.

◆ powerClass

uint8_t powerClass

Definition at line 329 of file lldp_ext_dot3.h.

◆ powerDown

uint8_t powerDown[3]

Definition at line 403 of file lldp_ext_dot3.h.

◆ powerPriority

uint8_t powerPriority

Definition at line 378 of file lldp_ext_dot3.h.

◆ powerSource

uint8_t powerSource

Definition at line 381 of file lldp_ext_dot3.h.

◆ powerStatus

uint16_t powerStatus

Definition at line 399 of file lldp_ext_dot3.h.

◆ powerType

uint8_t powerType

Definition at line 382 of file lldp_ext_dot3.h.

◆ pseAllocatedPower

uint16_t pseAllocatedPower

Definition at line 385 of file lldp_ext_dot3.h.

◆ pseAllocatedPowerA

uint16_t pseAllocatedPowerA

Definition at line 397 of file lldp_ext_dot3.h.

◆ pseAllocatedPowerB

uint16_t pseAllocatedPowerB

Definition at line 398 of file lldp_ext_dot3.h.

◆ pseMaxAvailablePower

uint16_t pseMaxAvailablePower

Definition at line 401 of file lldp_ext_dot3.h.

◆ psePowerPair

uint8_t psePowerPair

Definition at line 328 of file lldp_ext_dot3.h.

◆ psePowerPriceIndex

uint16_t psePowerPriceIndex

Definition at line 361 of file lldp_ext_dot3.h.

◆ reserved

uint8_t reserved

Definition at line 380 of file lldp_ext_dot3.h.

◆ systemSetup

uint8_t systemSetup

Definition at line 400 of file lldp_ext_dot3.h.