lldp_ext_med.h File Reference

LLDP-MED extension (LLDP for Media Endpoint Devices) More...

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

Go to the source code of this file.

Macros

#define LLDP_MED_MIN_INVENTORY_STRING_LEN   0
 
#define LLDP_MED_MAX_INVENTORY_STRING_LEN   32
 

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
 
LldpMedCapTlv
 LLDP-MED Capabilities 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
 
LldpMedNetworkPolicyTlv
 Network Policy 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 []
 
LldpMedLocationIdTlv
 Location Identification 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 []
 
LldpMedExtPowerViaMdiTlv
 Extended Power-Via-MDI TLV. More...
 

Enumerations

enum  LldpMedSubtype {
  LLDP_MED_SUBTYPE_RESERVED = 0, LLDP_MED_SUBTYPE_LLDP_MED_CAP = 1, LLDP_MED_SUBTYPE_NETWORK_POLICY = 2, LLDP_MED_SUBTYPE_LOCATION_ID = 3,
  LLDP_MED_SUBTYPE_EXT_POWER_VIA_MDI = 4, LLDP_MED_SUBTYPE_HARDWARE_REVISION = 5, LLDP_MED_SUBTYPE_FIRMWARE_REVISION = 6, LLDP_MED_SUBTYPE_SOFTWARE_REVISION = 7,
  LLDP_MED_SUBTYPE_SERIAL_NUMBER = 8, LLDP_MED_SUBTYPE_MANUFACTURER_NAME = 9, LLDP_MED_SUBTYPE_MODEL_NAME = 10, LLDP_MED_SUBTYPE_ASSET_ID = 11
}
 LLDP-MED subtypes. More...
 
enum  LldpMedCap {
  LLDP_MED_CAP = 0x0001, LLDP_MED_CAP_NETWORK_POLICY = 0x0002, LLDP_MED_CAP_LOCATION = 0x0004, LLDP_MED_CAP_EXTENDED_PSE = 0x0008,
  LLDP_MED_CAP_EXTENDED_PD = 0x0010, LLDP_MED_CAP_INVENTORY = 0x0020
}
 LLDP-MED capabilities. More...
 
enum  LldpMedDeviceType {
  LLDP_MED_DEVICE_TYPE_NOT_DEFINED = 0, LLDP_MED_DEVICE_TYPE_ENDPOINT_CLASS_1 = 1, LLDP_MED_DEVICE_TYPE_ENDPOINT_CLASS_2 = 2, LLDP_MED_DEVICE_TYPE_ENDPOINT_CLASS_3 = 3,
  LLDP_MED_DEVICE_TYPE_NETWORK_CONNECTIVITY = 4
}
 LLDP-MED device type. More...
 
enum  LldpMedAppType {
  LLDP_MED_APP_TYPE_RESERVED = 0, LLDP_MED_APP_TYPE_VOICE = 1, LLDP_MED_APP_TYPE_VOICE_SIGNALING = 2, LLDP_MED_APP_TYPE_GUEST_VOICE = 3,
  LLDP_MED_APP_TYPE_GUEST_VOICE_SIGNALING = 4, LLDP_MED_APP_TYPE_SOFTPHONE_VOICE = 5, LLDP_MED_APP_TYPE_VIDEO_CONFERENCING = 6, LLDP_MED_APP_TYPE_STREAMING_VIDEO = 7,
  LLDP_MED_APP_TYPE_VIDEO_SIGNALING = 8
}
 Application type. More...
 
enum  LldpMedLocationDataFormat { LLDP_MED_LOCATION_DATA_FORMAT_INVALID = 0, LLDP_MED_LOCATION_DATA_FORMAT_COORD_BASED_LCI = 1, LLDP_MED_LOCATION_DATA_FORMAT_CIVIC_ADDR_LCI = 2, LLDP_MED_LOCATION_DATA_FORMAT_ECS_ELIN = 3 }
 Location data format. More...
 
enum  LldpMedPowerType { LLDP_MED_POWER_TYPE_PSE_DEVICE = 0, LLDP_MED_POWER_TYPE_PD_DEVICE = 1, LLDP_MED_POWER_TYPE_RESERVED_1 = 2, LLDP_MED_POWER_TYPE_RESERVED_2 = 3 }
 Power type. More...
 
enum  LldpMedPowerSource {
  LLDP_MED_PD_POWER_SOURCE_UNKNOWN = 0, LLDP_MED_PD_POWER_SOURCE_PSE = 1, LLDP_MED_PD_POWER_SOURCE_LOCAL = 2, LLDP_MED_PD_POWER_SOURCE_PSE_AND_LOCAL = 3,
  LLDP_MED_PSE_POWER_SOURCE_UNKNOWN = 0, LLDP_MED_PSE_POWER_SOURCE_PRIMARY = 1, LLDP_MED_PSE_POWER_SOURCE_BACKUP = 2, LLDP_MED_PSE_POWER_SOURCE_RESERVED = 3
}
 Power source. More...
 
enum  LldpMedPowerPriority { LLDP_MED_POWER_PRIORITY_UNKNOWN = 0, LLDP_MED_POWER_PRIORITY_CRITICAL = 1, LLDP_MED_POWER_PRIORITY_HIGH = 2, LLDP_MED_POWER_PRIORITY_LOW = 3 }
 Power priority. More...
 

Functions

error_t lldpMedSetLocalCap (LldpAgentContext *context, uint16_t capabilities, LldpMedDeviceType deviceType)
 Set LLDP-MED capabilities. More...
 
error_t lldpMedSetLocalNetworkPolicy (LldpAgentContext *context, uint_t portIndex, LldpMedAppType appType, bool_t u, bool_t t, uint16_t vlanId, uint8_t l2Priority, uint8_t dscpValue)
 Set network policy. More...
 
error_t lldpMedSetLocalLocationId (LldpAgentContext *context, uint_t portIndex, LldpMedLocationDataFormat locationDataFormat, const void *locationId, size_t locationIdLen)
 Set location identification. More...
 
error_t lldpMedSetLocalExtPowerViaMdi (LldpAgentContext *context, uint_t portIndex, LldpMedPowerType powerType, LldpMedPowerSource powerSource, LldpMedPowerPriority powerPriority, uint16_t powerValue)
 Set extended power-via-MDI. More...
 
error_t lldpMedSetLocalHardwareRevision (LldpAgentContext *context, const char_t *hardwareRevision)
 Set hardware revision. More...
 
error_t lldpMedSetLocalFirmwareRevision (LldpAgentContext *context, const char_t *firmwareRevision)
 Set firmware revision. More...
 
error_t lldpMedSetLocalSoftwareRevision (LldpAgentContext *context, const char_t *softwareRevision)
 Set software revision. More...
 
error_t lldpMedSetLocalSerialNumber (LldpAgentContext *context, const char_t *serialNumber)
 Set serial number. More...
 
error_t lldpMedSetLocalManufacturerName (LldpAgentContext *context, const char_t *manufacturerName)
 Set manufacturer name. More...
 
error_t lldpMedSetLocalModelName (LldpAgentContext *context, const char_t *modelName)
 Set model name. More...
 
error_t lldpMedSetLocalAssetId (LldpAgentContext *context, const char_t *assetId)
 Set asset identifier. More...
 
error_t lldpMedDeleteLocalTlv (LldpAgentContext *context, LldpMedSubtype subtype)
 Remove all LLDP-MED specific TLVs with specified subtype. More...
 

Detailed Description

LLDP-MED extension (LLDP for Media Endpoint Devices)

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_med.h.

Macro Definition Documentation

◆ LLDP_MED_MAX_INVENTORY_STRING_LEN

#define LLDP_MED_MAX_INVENTORY_STRING_LEN   32

Definition at line 41 of file lldp_ext_med.h.

◆ LLDP_MED_MIN_INVENTORY_STRING_LEN

#define LLDP_MED_MIN_INVENTORY_STRING_LEN   0

Definition at line 39 of file lldp_ext_med.h.

Typedef Documentation

◆ LldpMedCapTlv

typedef { ... } LldpMedCapTlv

LLDP-MED Capabilities TLV.

◆ LldpMedExtPowerViaMdiTlv

typedef { ... } LldpMedExtPowerViaMdiTlv

Extended Power-Via-MDI TLV.

◆ LldpMedLocationIdTlv

typedef { ... } LldpMedLocationIdTlv

Location Identification TLV.

◆ LldpMedNetworkPolicyTlv

typedef { ... } LldpMedNetworkPolicyTlv

Network Policy TLV.

Enumeration Type Documentation

◆ LldpMedAppType

Application type.

Enumerator
LLDP_MED_APP_TYPE_RESERVED 

Reserved.

LLDP_MED_APP_TYPE_VOICE 

Voice.

LLDP_MED_APP_TYPE_VOICE_SIGNALING 

Voice signaling.

LLDP_MED_APP_TYPE_GUEST_VOICE 

Guest Voice.

LLDP_MED_APP_TYPE_GUEST_VOICE_SIGNALING 

Guest Voice Signaling.

LLDP_MED_APP_TYPE_SOFTPHONE_VOICE 

Softphone Voice.

LLDP_MED_APP_TYPE_VIDEO_CONFERENCING 

Video Conferencing.

LLDP_MED_APP_TYPE_STREAMING_VIDEO 

Streaming Video.

LLDP_MED_APP_TYPE_VIDEO_SIGNALING 

Video signaling.

Definition at line 103 of file lldp_ext_med.h.

◆ LldpMedCap

enum LldpMedCap

LLDP-MED capabilities.

Enumerator
LLDP_MED_CAP 

LLDP-MED capabilities.

LLDP_MED_CAP_NETWORK_POLICY 

Network policy.

LLDP_MED_CAP_LOCATION 

Location identification.

LLDP_MED_CAP_EXTENDED_PSE 

Extended power via MDI - PSE.

LLDP_MED_CAP_EXTENDED_PD 

Extended power via MDI - PD.

LLDP_MED_CAP_INVENTORY 

Inventory.

Definition at line 74 of file lldp_ext_med.h.

◆ LldpMedDeviceType

LLDP-MED device type.

Enumerator
LLDP_MED_DEVICE_TYPE_NOT_DEFINED 

Type not defined.

LLDP_MED_DEVICE_TYPE_ENDPOINT_CLASS_1 

Endpoint class I.

LLDP_MED_DEVICE_TYPE_ENDPOINT_CLASS_2 

Endpoint class II.

LLDP_MED_DEVICE_TYPE_ENDPOINT_CLASS_3 

Endpoint class III.

LLDP_MED_DEVICE_TYPE_NETWORK_CONNECTIVITY 

Network connectivity.

Definition at line 89 of file lldp_ext_med.h.

◆ LldpMedLocationDataFormat

Location data format.

Enumerator
LLDP_MED_LOCATION_DATA_FORMAT_INVALID 

Invalid.

LLDP_MED_LOCATION_DATA_FORMAT_COORD_BASED_LCI 

Coordinate-based LCI.

LLDP_MED_LOCATION_DATA_FORMAT_CIVIC_ADDR_LCI 

Civic Address LCI.

LLDP_MED_LOCATION_DATA_FORMAT_ECS_ELIN 

ECS ELIN.

Definition at line 121 of file lldp_ext_med.h.

◆ LldpMedPowerPriority

Power priority.

Enumerator
LLDP_MED_POWER_PRIORITY_UNKNOWN 

Unknown.

LLDP_MED_POWER_PRIORITY_CRITICAL 

Critical.

LLDP_MED_POWER_PRIORITY_HIGH 

High.

LLDP_MED_POWER_PRIORITY_LOW 

Low.

Definition at line 164 of file lldp_ext_med.h.

◆ LldpMedPowerSource

Power source.

Enumerator
LLDP_MED_PD_POWER_SOURCE_UNKNOWN 

Unknown (PD device type)

LLDP_MED_PD_POWER_SOURCE_PSE 

PSE (PD device type)

LLDP_MED_PD_POWER_SOURCE_LOCAL 

Local (PD device type)

LLDP_MED_PD_POWER_SOURCE_PSE_AND_LOCAL 

PSE and local (PD device type)

LLDP_MED_PSE_POWER_SOURCE_UNKNOWN 

Unknown (PSE device type)

LLDP_MED_PSE_POWER_SOURCE_PRIMARY 

Primary Power Source (PSE device type)

LLDP_MED_PSE_POWER_SOURCE_BACKUP 

Backup Power Source (PSE device type)

LLDP_MED_PSE_POWER_SOURCE_RESERVED 

Reserved (PSE device type)

Definition at line 147 of file lldp_ext_med.h.

◆ LldpMedPowerType

Power type.

Enumerator
LLDP_MED_POWER_TYPE_PSE_DEVICE 

PSE Device.

LLDP_MED_POWER_TYPE_PD_DEVICE 

PD Device.

LLDP_MED_POWER_TYPE_RESERVED_1 

Reserved.

LLDP_MED_POWER_TYPE_RESERVED_2 

Reserved.

Definition at line 134 of file lldp_ext_med.h.

◆ LldpMedSubtype

LLDP-MED subtypes.

Enumerator
LLDP_MED_SUBTYPE_RESERVED 

Reserved.

LLDP_MED_SUBTYPE_LLDP_MED_CAP 

LLDP-MED Capabilities.

LLDP_MED_SUBTYPE_NETWORK_POLICY 

Network Policy.

LLDP_MED_SUBTYPE_LOCATION_ID 

Location Identification.

LLDP_MED_SUBTYPE_EXT_POWER_VIA_MDI 

Extended Power-via-MDI.

LLDP_MED_SUBTYPE_HARDWARE_REVISION 

Inventory - Hardware Revision.

LLDP_MED_SUBTYPE_FIRMWARE_REVISION 

Inventory - Firmware Revision.

LLDP_MED_SUBTYPE_SOFTWARE_REVISION 

Inventory - Software Revision.

LLDP_MED_SUBTYPE_SERIAL_NUMBER 

Inventory - Serial Number.

LLDP_MED_SUBTYPE_MANUFACTURER_NAME 

Inventory - Manufacturer Name.

LLDP_MED_SUBTYPE_MODEL_NAME 

Inventory - Model Name.

LLDP_MED_SUBTYPE_ASSET_ID 

Inventory - Asset ID.

Definition at line 53 of file lldp_ext_med.h.

Function Documentation

◆ lldpMedDeleteLocalTlv()

error_t lldpMedDeleteLocalTlv ( LldpAgentContext context,
LldpMedSubtype  subtype 
)

Remove all LLDP-MED specific TLVs with specified subtype.

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

Definition at line 838 of file lldp_ext_med.c.

◆ lldpMedSetLocalAssetId()

error_t lldpMedSetLocalAssetId ( LldpAgentContext context,
const char_t assetId 
)

Set asset identifier.

Parameters
[in]contextPointer to the LLDP agent context
[in]assetIdAlphanumerical string that contains the asset identifier of the endpoint
Returns
Error code

Definition at line 786 of file lldp_ext_med.c.

◆ lldpMedSetLocalCap()

error_t lldpMedSetLocalCap ( LldpAgentContext context,
uint16_t  capabilities,
LldpMedDeviceType  deviceType 
)

Set LLDP-MED capabilities.

Parameters
[in]contextPointer to the LLDP agent context
[in]capabilitiesBit-map of the supported set of capabilities
[in]deviceTypeLLDP-MED device type
Returns
Error code

Definition at line 54 of file lldp_ext_med.c.

◆ lldpMedSetLocalExtPowerViaMdi()

error_t lldpMedSetLocalExtPowerViaMdi ( LldpAgentContext context,
uint_t  portIndex,
LldpMedPowerType  powerType,
LldpMedPowerSource  powerSource,
LldpMedPowerPriority  powerPriority,
uint16_t  powerValue 
)

Set extended power-via-MDI.

Parameters
[in]contextPointer to the LLDP agent context
[in]portIndexPort index
[in]powerTypeBinary value that represents whether LLDP-MED device is a Power Sourcing Entity (PSE) or Power Device (PD)
[in]powerSourceBinary value that represents the power source being utilized by a PSE or PD device
[in]powerPriorityBinary value that represents the priority of the PD type device to the power being supplied by the PSE type device, or the power priority associated with the PSE type device's port that is sourcing the power via MDI
[in]powerValueNumerical value that indicates the total power in watts required by a PD device from a PSE device, or the total power a PSE device is capable of sourcing over a maximum length cable based on its current configuration
Returns
Error code

Definition at line 393 of file lldp_ext_med.c.

◆ lldpMedSetLocalFirmwareRevision()

error_t lldpMedSetLocalFirmwareRevision ( LldpAgentContext context,
const char_t firmwareRevision 
)

Set firmware revision.

Parameters
[in]contextPointer to the LLDP agent context
[in]firmwareRevisionAlphanumerical string that contains the firmware revision of the endpoint
Returns
Error code

Definition at line 518 of file lldp_ext_med.c.

◆ lldpMedSetLocalHardwareRevision()

error_t lldpMedSetLocalHardwareRevision ( LldpAgentContext context,
const char_t hardwareRevision 
)

Set hardware revision.

Parameters
[in]contextPointer to the LLDP agent context
[in]hardwareRevisionAlphanumerical string that contains the hardware revision of the endpoint
Returns
Error code

Definition at line 464 of file lldp_ext_med.c.

◆ lldpMedSetLocalLocationId()

error_t lldpMedSetLocalLocationId ( LldpAgentContext context,
uint_t  portIndex,
LldpMedLocationDataFormat  locationDataFormat,
const void *  locationId,
size_t  locationIdLen 
)

Set location identification.

Parameters
[in]contextPointer to the LLDP agent context
[in]portIndexPort index
[in]locationDataFormatLocation ID data format
[in]locationIdLocation ID
[in]locationIdLenLength of the location ID, in bytes
Returns
Error code

Definition at line 243 of file lldp_ext_med.c.

◆ lldpMedSetLocalManufacturerName()

error_t lldpMedSetLocalManufacturerName ( LldpAgentContext context,
const char_t manufacturerName 
)

Set manufacturer name.

Parameters
[in]contextPointer to the LLDP agent context
[in]manufacturerNameAlphanumerical string that contains the manufacturer name of the endpoint
Returns
Error code

Definition at line 679 of file lldp_ext_med.c.

◆ lldpMedSetLocalModelName()

error_t lldpMedSetLocalModelName ( LldpAgentContext context,
const char_t modelName 
)

Set model name.

Parameters
[in]contextPointer to the LLDP agent context
[in]modelNameAlphanumerical string that contains the model name of the endpoint
Returns
Error code

Definition at line 733 of file lldp_ext_med.c.

◆ lldpMedSetLocalNetworkPolicy()

error_t lldpMedSetLocalNetworkPolicy ( LldpAgentContext context,
uint_t  portIndex,
LldpMedAppType  appType,
bool_t  u,
bool_t  t,
uint16_t  vlanId,
uint8_t  l2Priority,
uint8_t  dscpValue 
)

Set network policy.

Parameters
[in]contextPointer to the LLDP agent context
[in]portIndexPort index
[in]appTypePrimary function of the application
[in]uUnknown policy flag (U)
[in]tTagged flag (T)
[in]vlanIdVLAN identifier for the port
[in]l2PriorityLayer 2 priority to be used
[in]dscpValueDSCP value to be used
Returns
Error code

Definition at line 116 of file lldp_ext_med.c.

◆ lldpMedSetLocalSerialNumber()

error_t lldpMedSetLocalSerialNumber ( LldpAgentContext context,
const char_t serialNumber 
)

Set serial number.

Parameters
[in]contextPointer to the LLDP agent context
[in]serialNumberAlphanumerical string that contains the serial number of the endpoint
Returns
Error code

Definition at line 626 of file lldp_ext_med.c.

◆ lldpMedSetLocalSoftwareRevision()

error_t lldpMedSetLocalSoftwareRevision ( LldpAgentContext context,
const char_t softwareRevision 
)

Set software revision.

Parameters
[in]contextPointer to the LLDP agent context
[in]softwareRevisionAlphanumerical string that contains the software revision of the endpoint
Returns
Error code

Definition at line 572 of file lldp_ext_med.c.

Variable Documentation

◆ appType

uint8_t appType

Definition at line 207 of file lldp_ext_med.h.

◆ capabilities

uint16_t capabilities

Definition at line 185 of file lldp_ext_med.h.

◆ deviceType

uint8_t deviceType

Definition at line 186 of file lldp_ext_med.h.

◆ dscpValue

uint8_t dscpValue

Definition at line 214 of file lldp_ext_med.h.

◆ l2PriorityH

uint8_t l2PriorityH

Definition at line 212 of file lldp_ext_med.h.

◆ l2PriorityL

uint8_t l2PriorityL

Definition at line 215 of file lldp_ext_med.h.

◆ locationDataFormat

uint8_t locationDataFormat

Definition at line 226 of file lldp_ext_med.h.

◆ locationId

uint8_t locationId[]

Definition at line 227 of file lldp_ext_med.h.

◆ powerPriority

uint8_t powerPriority

Definition at line 243 of file lldp_ext_med.h.

◆ powerSource

uint8_t powerSource

Definition at line 244 of file lldp_ext_med.h.

◆ powerType

uint8_t powerType

Definition at line 245 of file lldp_ext_med.h.

◆ powerValue

uint16_t powerValue

Definition at line 246 of file lldp_ext_med.h.

◆ t

uint8_t t

Definition at line 210 of file lldp_ext_med.h.

◆ u

uint8_t u

Definition at line 211 of file lldp_ext_med.h.

◆ vlanIdH

uint8_t vlanIdH

Definition at line 208 of file lldp_ext_med.h.

◆ vlanIdL

uint8_t vlanIdL

Definition at line 213 of file lldp_ext_med.h.

◆ x

uint8_t x

Definition at line 209 of file lldp_ext_med.h.