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