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