]> git.ipfire.org Git - thirdparty/lldpd.git/blame - NEWS
lldpd: correctly increase discarded count
[thirdparty/lldpd.git] / NEWS
CommitLineData
52767c4d
VB
1lldpd (0.9.7)
2 * Changes:
06987a24
VB
3 + JSON support is now built-in and unconditionally enabled. Use
4 --enable-json0 to keep the pre-0.9.2 json-c format.
52767c4d
VB
5 + When logging to syslog and daemonizing, don't log to stderr.
6
20edc61c 7lldpd (0.9.6)
bd10ce9d 8 * Changes:
20edc61c
VB
9 + Add a compile-time option to restore pre-0.9.2 JSON format (when
10 using json-c). Use `--enable-json0` to enable this option.
38cbcf2b 11 + Support for newer ethtool interface on Linux
e0d9719f 12 (ETHTOOL_GLINKSETTINGS) and additional speed settings.
72cf4bba 13 + Current MAU type is displayed even when autoneg is off.
568a0d73
VB
14 + Increase netlink receive buffer by default. Can be changed at
15 compile-time through ./configure.
bd10ce9d 16 * Fixes:
23ce0513
VB
17 + Correctly parse LLDP-MED civic address when the length of the
18 TLV exceeds the length of the address.
54cccdd4 19 + Fix 100% CPU on some rare error condition.
92c6dcfe 20 + Fix lost timer when an interface is enslaved on Linux.
20edc61c 21
340f159c 22lldpd (0.9.5)
bd10ce9d 23 * Changes:
2fb135c8
VB
24 + More Ethernet media supported. However, RFC4836 is quite
25 out-of-date with respected to 10G+ speeds, bringing some
26 inaccuracies.
a92e6f01
VB
27 + Directly get media information for an interface without using
28 the privileged process.
03d178b6
VB
29 + LLDP-MED capability TLV is not sent when LLDP-MED is not enabled,
30 even if other LLDP-MED TLV are present.
bd10ce9d 31 * Fixes:
340f159c 32 + Compilation fix with older versions of GCC.
0b7f8847
VB
33 + Don't use ethtool at all to get real MAC address for enslaved
34 devices (always use /proc).
340f159c 35
7b6cbfe2 36lldpd (0.9.4)
bd10ce9d 37 * Changes:
7b6cbfe2 38 + Make lldpd accepts a `-p` option to specify the PID file.
d3b81cc5
VB
39 + Ability to change multicast MAC address to two additional values
40 to reach customer bridges.
35cc2de4 41 + lldpcli will now display chassis TTL when detailed view is enabled.
bd10ce9d 42 * Fixes:
e1717397 43 + Fix setting of local value for port ID.
e8ffca58 44 + Fix compilation with BSD make.
fe64f8e5 45 + Ensure lldpcli returns an error code on invalid commands.
7b6cbfe2 46
d954509e 47lldpd (0.9.3)
bd10ce9d 48 * Changes:
d954509e 49 + Do not rely on support of constructors for liblldpctl.
b5463687 50 + Always log to stderr (even in addition to syslog).
d12b1391 51 + `lldpcli watch` accepts a limit on the number of received events.
bd10ce9d 52 * Fixes:
69d4aed5 53 + `lldpcli -f {xml,json} watch` should work now.
2958b9d4 54 + Consider `veth` interfaces as physical interfaces.
d954509e 55
4d99c9cf 56lldpd (0.9.2)
bd10ce9d 57 * Changes:
4d99c9cf 58 + Ability to add/remove/replace custom TLV from lldpcli.
1f8742dd 59 + LLDP-MED capabilities are displayed differently in lldpcli.
e7e6676e 60 + Limit the maximum depth (5) when trying to apply a VLAN.
c8b8b858
VB
61 + Change JSON output format when using json-c to match Jansson
62 output.
abced782
VB
63 + Integration tests for the major parts of lldpd, including use of
64 address and leak sanitizer.
bd10ce9d 65 * Fixes:
60ad2804 66 + LLDP-MED POE TLV are now displayed in lldpcli.
c04fafa7 67 + Ignore lower link when it is in another namespace.
2fdba99c 68 + Fix various problems with interfaces being enslaved.
809498b5 69 + Fix a memory leak when modifying port-related settings.
4d99c9cf 70
87bb9a1b 71lldpd (0.9.1)
bd10ce9d 72 * Changes:
87bb9a1b
VB
73 + Rework packaging for OS X to make it work with El Capitan. To
74 simplify a bit, it is not possible anymore to build fat
75 binaries. Latest version of OS X supporting 32bit was 10.6.
bd10ce9d 76 * Fixes:
a403df66
VB
77 + By default, when using port alias as description, use port name
78 as port ID.
652d72dd 79 + Miscellaneous fixes with netlink cache.
522acf33 80 + Ensure large netlink messages can be received.
87bb9a1b 81
0fa2254b 82lldpd (0.9.0)
bd10ce9d 83 * Changes:
b5a71b24
VB
84 + Don't rely on libnl3 for netlink. Reuse the previous code and
85 implement a lighweight cache.
0fa2254b 86
59b4cc6d 87lldpd (0.8.0, never released)
bd10ce9d 88 * Changes:
a8add742
VB
89 + PIE is now disabled by default. It's too difficult to reliably
90 detect if it works. Use --enable-pie to enable it.
d535fe05 91 + Retrieve the permanent MAC address of an interface through
1a3ec373 92 ethtool for Linux if /proc/net/bonding is not available.
9856f279
VB
93 + Running lldpd with "-d" will keep the process in foreground but
94 logs will still go to syslog. To log to the console, add at
95 least one "-d".
aedb840f
VB
96 + Fix minimal kernel version to 2.6.39. Add a runtime warning when
97 this is not the case.
31c9173a 98 + Remove old bridge code (the one using ioctl).
36080cdc
VB
99 + Don't discard down interfaces. Notably, this enables us to keep
100 their specific configuration if any.
13181ede
VB
101 + For Linux, switch to libnl3. Be aware of the licensing issues in
102 case of static linking.
9da663f7
VB
103 + Introduce the notion of default local port. New interfaces will
104 use it as a base. This allows setting various MED stuff.
cd7ee899 105 + Provide an apparmor profile (untested).
bd10ce9d
VB
106 * Fixes:
107 + Fix a buffer overflow when receiving a too large management
108 address TLV. Unless hardening has been disabled, this overflow
109 cannot be used for arbitrary code execution.
110 + Update LLDP-MED policy L2 priority values to match
111 802.1Q-2005. This may be a breaking change.
13181ede 112
b52ec8a0 113lldpd (0.7.17)
bd10ce9d
VB
114 * Fixes:
115 + Fix the way libevent configure is called.
b52ec8a0
VB
116 + Fix an infinite loop when using veth on Linux 4.1+ kernels.
117 + Make CDP advertise the appropriate kernel name as platform,
118 not just "Linux".
b52ec8a0 119
45eec1ff 120lldpd (0.7.16)
bd10ce9d 121 * Changes:
16eacc5b
VB
122 + For Linux, 2.6.32 is now the minimal required kernel. When using
123 an older kernel, use `--enable-oldies`.
124 + For Linux, use netlink to retrieve information about bridges,
125 VLAN and bonds. The code was contributed by Cumulus Networks.
45eec1ff 126 + Use symbol versioning for liblldpctl.so.
88301db1
VB
127 + Ability to get local chassis information with "show
128 chassis".
129 + The library also has the same ability with the
130 `lldpctl_get_local_chassis()` function. It is also possible to
131 get a chassis atom from a port with `lldpctl_k_port_chassis`
132 key. This is now the preferred way to retrieve chassis related
133 information.
bd10ce9d 134 * Fixes:
d8367e17 135 + Fix build on OS X.
451b0c3c 136 + Accept "language" when configuring MED location as a civic address.
d8367e17 137
fa9b12c5 138lldpd (0.7.15)
bd10ce9d 139 * Changes:
fa9b12c5 140 + Optional features can be configured with "auto" to autodetect if
dd8c9fe3 141 they are usable. This is the default value for JSON and XML support.
d0e76b5f
VB
142 + Ability to send and decode custom/unknown TLV. Thanks to Alexandru
143 Ardelean.
63e52965
VB
144 + Modify checksum function. While this should be strictly
145 equivalent, if you notice CDP packets not accepted anymore, this
146 change is the first culprit.
fa9b12c5 147
efdd6718 148lldpd (0.7.14)
bd10ce9d 149 * Changes:
efdd6718 150 + Shutdown LLPDU are sent on MSAP change and when lldpd exits.
abfea7d0
VB
151 + When an exact IP is provided as a management pattern, use it
152 unconditionally.
a8382e7f
VB
153 + Ability to set port ID and description to an arbitrary value,
154 thanks to Alexandru Ardelean.
bd10ce9d 155 * Fixes:
ac07e7e4
VB
156 + Incorrect boundary check when decoding management address and
157 protocol identity may lead to lldpd crash when processing
158 malformed LLDPDU.
5683586e
VB
159 + Many edge cases where lldpd was leaving hanging processes after
160 crashing.
efdd6718 161
da9c551a 162lldpd (0.7.13)
bd10ce9d 163 * Fixes:
da9c551a
VB
164 + Unbreak customization of Unix socket path from command line.
165
6d2c29c7 166lldpd (0.7.12)
bd10ce9d 167 * Changes:
6dd83015
VB
168 + Interface pattern, management pattern, system description,
169 system platform and system hostname can be unconfigured to their
170 default values.
bd10ce9d 171 * Fixes:
08ced6b4 172 + Don't complain when parsing a commented line.
22a53755
VB
173 + Correctly persist configuration changes for "system interface
174 promiscuous", "system interface description" "med fast-start
175 enable", "pause" and "resume".
148a1efe 176 + Fix listening on bond devices for old kernels (< 2.6.27).
6d2c29c7 177
9bc3d50e 178lldpd (0.7.11)
bd10ce9d 179 * Changes:
9bc3d50e 180 + Ship bash and zsh completion.
9b11faad 181 + Abort when some command-line options are repeated.
bd10ce9d 182 * Fixes:
62f2faac 183 + Handle correctly read failures in liblldpctl.
9bc3d50e 184
f84199dd 185lldpd (0.7.10)
bd10ce9d 186 * Changes:
f84199dd
VB
187 + Ability to set promiscuous mode to work around bugs of some
188 switches encapsulating LLDP frames inside 802.1Q frames.
87ebf13d
VB
189 + JSON support for lldpcli can use json-c instead of jansson,
190 thanks to Michel Stam.
bd10ce9d 191 * Fixes:
806eaef4 192 + Fix checksum computation for Cisco CDP.
1059a20e 193 + Fix ability to disable LLDP.
5e23c6b9 194 + Fix seccomp sandbox, thanks to Patrick McLean.
f84199dd 195
5133ce2f
VB
196lldpd (0.7.9)
197 * Changes:
198 + Default location for chroot, socket and PID are now configurable
199 in `./configure`. The default location is based on the value of
200 `runstatedir` which in turn may be based on the value of
201 `localstatedir` which defaults to `/usr/local/var`. Therefore,
202 to get the previous locations, lldpd should be configured with
203 `./configure --localstatedir=/var`.
a85eea84 204 + Add support for shutdown LLDPU.
622d14bb 205 + Ability to configure IP management pattern from lldpcli.
e82818d1 206 + Ability to choose what port ID should be (MAC or interface name).
bd10ce9d
VB
207 * Fixes:
208 + Fix `configure system bond-slave-src-mac-type local`. Also use
209 it as default.
5133ce2f 210
12313820 211lldpd (0.7.8)
bd10ce9d 212 * Changes:
8b0ca98e 213 + Android support
71a7dbb3
VB
214 + Add the possibility to disable privilege separation (lower
215 memory consumption, lower security, don't do it).
8b53fc2c
VB
216 + Interfaces can now be whitelisted. For example, *,!eth*,!!eth1
217 is a valid pattern for all interfaces except eth ones, except
627e31c4
VB
218 eth1. Moreover, on exact match, an matching interface
219 circumvents most sanity checks (like VLAN handling).
724d71ea 220 + Ability to override the hostname.
bd10ce9d
VB
221 * Fixes:
222 + Don't hard-code default values for system name, system
223 description and port description. When the field is not present,
224 just don't display it.
225 + Fix lldpcli behaviour when suid.
226 + On OSX, don't use p2p0 interfaces: it would break WLAN.
227 + Fix SNMP support on RHEL.
12313820 228
f730f6c5 229lldpd (0.7.7)
bd10ce9d 230 * Changes:
87bc6683 231 + Use a locally administered MAC address or an arbitrary one
d7166588
VB
232 instead of null MAC address for bond devices on Linux. This is
233 configurable through `lldpcli`.
f5a0a15e 234 + Add support for "team" driver (alternative to bond devices).
bdfe4193 235 + Preliminary support for DTrace/systemtap.
00e40dba 236 + Preliminary support for seccomp (for monitor process).
b6312220 237 + Setup chroot inside lldpd instead of relying on init script.
f730f6c5
VB
238 * Fixes:
239 + Various bugs related to fixed point number handling (for
240 coordinates in LLDP-MED)
12baf781
VB
241 + Fix a regression in how MAC address of an enslaved device is
242 retrieved.
f730f6c5 243
2523da3a 244lldpd (0.7.6)
bd10ce9d 245 * Changes:
b708297c 246 + Provide a way to build packages for OSX.
bb37268d 247 + Add an option to update interface description with neighbor name.
2523da3a
VB
248 * Fixes:
249 + Compilation fix for OSX 10.6.
250
2169efb2
VB
251lldpd (0.7.5)
252 * Fixes:
253 + Segfault while tokenizing in lldpcli.
254
655145c0
VB
255lldpd (0.7.4)
256 * Fixes:
257 + Segfault in lldpcli.
bea70314 258 + Memory leak in liblldpctl when using a custom log handler.
d8234294 259 + Fix some unaligned memory accesses.
13812178 260 + Fix frame reception on OpenBSD.
bd10ce9d 261 * Changes:
0093777b
VB
262 + Allow to configure hold value from lldpcli (and hence the TTL).
263 + Allow to configure pattern for valid interfaces from lldpcli.
decaec0d 264 + Allow to override system description from lldpcli.
96b97fac
VB
265 + Display the neighbor connected as the process title (or the
266 number of connected neighbors).
655145c0 267
de461f15 268lldpd (0.7.3)
bd10ce9d 269 * Changes:
1b3eea3d 270 + DragonFly BSD support.
a1728b7d 271 + Solaris support (incomplete).
d0787f4e 272 + LLDP-MED fast start support (thanks to Roopa Prabhu).
adcb76f8
VB
273 + Provide global statistics through "show statistics summary"
274 command (thanks to Roopa Prabhu).
de461f15
VB
275 * Fixes:
276 + Fix IPv4/IPv6 address discovery in Linux.
277
e735a319 278lldpd (0.7.2)
bd10ce9d 279 * Changes:
29095198
VB
280 + lldpd can be configured through /etc/lldpd.conf and
281 /etc/lldpd.d. All commands accepted by lldpcli are accepted.
e735a319
VB
282 + Lock BPF interfaces before handing them to chrooted process on
283 BSD.
42589660 284 + Limit the number of neighbors for each port to 4 (per protocol).
43d10956 285 + Force CDPv2 protocol with argument `-ccc`.
ced5eed1
VB
286 + Provide port statistics through "show statistics" command
287 (thanks to Roopa Prabhu).
29095198
VB
288 * Fixes:
289 + Driver whitelisting is done before checking if an interface has
290 a lower interface in Linux.
3333d2a8 291 + Expire remote ports and chassis in a timely manner.
e735a319 292
8172214f 293lldpd (0.7.1)
bd10ce9d 294 * Changes:
e66b7f34
VB
295 + Mac OS X support, sponsored by Xcloud, Mac cloud server hosting
296 provider. http://xcloud.me/
322aafc9 297 + Upstart and systemd support.
8172214f
VB
298 + Remove Unix socket when there is no process listening.
299
a0665efa 300lldpd (0.7.0)
bd10ce9d 301 * Changes:
fda729fd 302 + FreeBSD support.
690b944c 303 + OpenBSD support.
2565eae6 304 + NetBSD support.
9a775667 305 + Detect interface changes.
fe80711e 306 + CLI for lldpctl: lldpcli.
46baf627
VB
307 + Allow to disable LLDP protocol (with `-ll`). In this case, the
308 first enabled protocol will be used when no neighbor is detected.
43b82d6e 309 + Allow to filter debug logs using tokens. Add more debug logs.
8b7150e4 310 + lldpctl can now output JSON.
fda729fd
VB
311 + Use netlink to gather interface information on Linux.
312 + Don't use ioctl for bridges anymore on Linux. The configure
313 option `--enable-oldies` allow to reenable their uses for
314 systems not supporting sysfs.
46baf627 315
4b292b55 316lldpd (0.6.1)
bd10ce9d 317 * Changes:
4b292b55
VB
318 + Provide liblldpctl.so, a library to interface with lldpd. The
319 documentation is provided through Doxygen. See src/lib/lldpctl.h
320 which contains all the exported functions.
321 + Make lldpctl uses liblldpctl.so.
4e90a9e0 322 + Add a "watch" option to lldpctl to monitor neighbor changes.
47287a61
VB
323 + Add the possibility to display the current configuration of
324 lldpd with lldpctl. Also add the possibility to reset the
325 current transmit delay.
4b292b55 326
4e22da4c 327lldpd (0.6)
bd10ce9d 328 * Changes:
9c43aeb4 329 + Allow lldpctl to display hidden ports.
5339e725 330 + Add a switch to specify interfaces to use to get chassis ID.
2135cce1
VB
331 + Support for multiple management addresses and IPv6 management
332 addresses. Contributed by João Valverde.
68b375c3 333 + Switch to libevent. See README.md for details.
da92cd57
VB
334 + Partial rewrite of the SNMP part. Less code.
335 + Unit tests for SNMP.
336 + Major rewrite of the protocol between lldpd and lldpctl. Less
337 code.
4e22da4c 338 * Fixes:
4e22da4c
VB
339 + Several small SNMP fixes (discovered by unit tests).
340
c520cb14
VB
341lldpd (0.5.7)
342 * Fixes:
343 + Configure issue with NetSNMP and some linkers
344 + Fix infinite loop for the receive part: on certain conditions,
345 lldpd will stop sending packets and stop updating local data.
346
aff85bf3 347lldpd (0.5.6)
bd10ce9d 348 * Changes:
2a19e9ea 349 + Send and receive native VLAN TLV with CDP
10935633 350 + Add a whitelist for some drivers (currently: dsa and veth)
ab2d1c1f
VB
351 * Fixes:
352 + Compilation issues with NetSNMP 5.7 (and with earlier versions too)
a2606cac 353 + Small optimization of BPF filter
aff85bf3 354
84e06882 355lldpd (0.5.5)
bd10ce9d 356 * Changes:
f17501b6 357 + Support for PPVID and PI Dot1 TLV, thanks to Shuah Khan.
5abfffc2 358 + Extend whitelist with possibility to blacklist.
84e06882
VB
359 * Fixes:
360 + Key/value output was incorrect when a dot was present in
361 interface names. This is fixed but it is preferable to use XML
362 output since the parsing is more difficult in this case.
0265b1e5 363 + Only grab DMI information once. Only uses DMI for x86 platform.
a8818344
VB
364 + Padding issues with socket protocol. This introduces a change in
365 the socket protocol!
bf89e7e0
VB
366 + Fix a segfault when neither /etc/os-release nor lsb_release
367 are available.
84e06882 368
e02afca4 369lldpd (0.5.4)
bd10ce9d 370 * Changes:
e02afca4
VB
371 + Get OS information from /etc/os-release if available. Patch from
372 Michael Tremer.
ba85f9f4 373 + Add a flag to specify which interfaces lldpd should listen to.
e02afca4 374
05eacc7a 375lldpd (0.5.3)
bd10ce9d 376 * Changes:
09721cce
VB
377 + Handle Dot3 POE-MDI TLV (802.3af and 802.3at).
378 + Allow to set Dot3 POE-MDI from lldpctl.
bd10ce9d
VB
379 * Fixes:
380 + Allow root to change configuration of lldpd when lldpctl has suid set.
05eacc7a 381
8482abe9 382lldpd (0.5.2)
bd10ce9d 383 * Changes:
8482abe9 384 + More flexible smart mode and new default. Manual page has been updated.
537a8043 385 + Add a "receive-only" mode with "-r" switch.
8482abe9 386
93108f71 387lldpd (0.5.1)
bd10ce9d 388 * Changes:
93108f71
VB
389 + Allow to force a protocol even when no peer for this protocol is
390 detected.
42b39485
VB
391 + Add a smart mode that allows to discard bogus port information,
392 for example CDP packets that are flooded through a switch that
393 does not support CDP.
0d606289 394 + Allow to set LLDP-MED network policy from lldpctl, thanks to a patch from
40d6a8d2 395 Philipp Kempgen.
0d606289 396 + Allow to set LLDP-MED POE-MDI from lldpctl.
93108f71 397 + Add a summary of available options in "lldpd -h" and "lldpctl -h",
999509a3
VB
398 thanks to a patch from Jorge Boncompte.
399 + Add a new output (keyvalue) for lldpctl.
49697208
VB
400 + Listen on VLAN using an appropriate BPF filter, VLAN
401 decapsulation. Older "listen on vlan" feature is discarded. See
402 README for more information on the new feature.
c036b15d 403 + Use output of lsb_release if available for system description.
58fe6128 404 * Fixes:
5b3214aa
VB
405 + Ignore interface with no queue. It should filter out interfaces
406 like "vnet0" that would fail if we try to send something on them.
4ea50809
VB
407 + Don't check CDP checksums (not really a fix but it appears that
408 Cisco checksum have some difficult corner cases).
58fe6128 409
775d49a0 410lldpd (0.5.0)
bd10ce9d 411 * Changes:
0bded858
VB
412 + lldpd can now handle several systems on the same port. This
413 modification also allows to speak to a switch using CDP and LLDP
414 for example.
415 + The way that lldpd gathers information for each port has been
416 abstracted. This should allow to support more systems (BSD for
417 examples) or switch cores in the future. Sending/receive support
418 is also abstracted.
419 + Add "-k" switch to avoid to emit too much information on running
420 kernel.
421 + Support of ifAlias with kernel >= 2.6.28
422 + Lot of portability stuff. lldpd can now be compiled on RHEL
423 2.1. Still Linux-only though.
740d517e 424 + Add an option to specify AgentX socket (-X).
0bded858 425 + Add some unit tests
4f602042
V
426 + lldpctl has been reworked; it is now able to output data in XML
427 format for easier parsing. Patches were provided by Andreas
428 Hofmeister.
bd10ce9d 429 * Fixes:
0bded858
VB
430 + Fix EDP VLAN handling
431 + Silent warnings about bridge stuff.
c0ce5d1a
V
432 + Copy /etc/localtime into chroot before starting lldpd daemon to
433 ensure correct timestamps for logs.
775d49a0 434
b7eb76b7 435lldpd (0.4.1)
b7eb76b7
VB
436 * Fix EDP handling when there is no VLAN
437 * Fix CDP version to not always be 1
438 * Misc fix:
439 + incorrect number of arguments for a LLOG_INFO call
440 + fix SNMP last change in case this change occurs before start time
441
a8105c1b 442lldpd (0.4)
a8105c1b
VB
443 * Rewrite of packet builder and parser to be able to cope with
444 architecture that cannot do unaligned read. For decoder, we don't
445 cast structures any more since they can be unaligned. For encoder,
446 we use memcpy through the use of macro that build packets step by
447 step.
448
34602f3b 449lldpd (0.3.2)
34602f3b
VB
450 * Fix LLDP-MED support
451
d32c8944 452lldpd (0.3.1)
d32c8944
VB
453 * Misc fixes, including memory leaks
454
b193e97e 455lldpd (0.3)
efe3f9b0 456 * Initial support of LLDP-MED
43655386 457 * Fix for bridge detection (don't send bridge ioctl on random interfaces)
1d291522
VB
458 * For bonded devices, get the real hardware address. For inactive
459 slaves, transmit using a random MAC address.
b193e97e 460
ff1910c8 461lldpd (0.2.1)
ff1910c8
VB
462 * Fix a syntax error in manual page
463 * Fix open() calls
464
ee92ac46 465lldpd (0.2)
b752ebcb 466 * Add privilege separation
ee92ac46
VB
467 * Add FDP support
468 * Support CDP encapsulated into native VLAN
469 * Various fixes
470
ee92ac46 471lldpd (0.1)
ee92ac46 472 * Initial release