~ubuntu-branches/ubuntu/utopic/exabgp/utopic

« back to all changes in this revision

Viewing changes to CHANGELOG

  • Committer: Package Import Robot
  • Author(s): Henry-Nicolas Tourneur
  • Date: 2014-03-08 19:07:00 UTC
  • mfrom: (1.1.8)
  • Revision ID: package-import@ubuntu.com-20140308190700-xjbibpg1g6001c9x
Tags: 3.3.1-1
* New upstream release
* Bump python minimal required version (2.7)
* Closes: #726066 Debian packaging improvements proposed by Vincent Bernat
* Closes: #703774 not existent rundir (/var/run/exabgp) after reboot

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
 minor : increase on risk of code breakage during a major release
4
4
 bug   : increase on bug or incremental changes
5
5
 
 
6
Version 3.3.1
 
7
 * Fix: typo using uid instead gid (could prevent dropping privileges !)
 
8
   reported by: Adrian Gämperli (with a merge request, thank you)
 
9
 * Fix: prevent ExaBGP to start if the log folder is not writeable by the user
 
10
 * Fix: configuration defaults for booleans ( and warns when group-updates is not enabled );
 
11
 * Fix: issue when removing some routes
 
12
    reported by: Adrian (backb1 on github)
 
13
 * Fix: bad printing of route as-path
 
14
 * Fix: neighbor matching was too permissive
 
15
    reported by: Adrian Gämperli (with a merge request, thank you)
 
16
 * Fix: under load ExaBGP could miss some commands sent through the API
 
17
    reported by: Adrian Gämperli (with a merge request, thank you)
 
18
 * Change: performing KeepAlive handling as first action
 
19
 * Change: time is provided as an high resolution real number and not an integer
 
20
 
 
21
Version 3.3.0
 
22
 * Fix: typo causing issue when parsing multiple neighbor commands
 
23
    reported by: Pablo Camarillo Garvia
 
24
 * Fix: bad handling of EOR
 
25
    reported by: Petr Lapukhov
 
26
 * Fix: multiple bugs with multi neighbor commands
 
27
 * Feature: allow as-path [ asn asn, [ asn ] ]
 
28
 * Other: migrate the setup.py script to work with git (vs hg)
 
29
 * Change: TEXT API format changed and version updated to 3.3.0 (reflect the version when the last change was introduced)
 
30
 * Change: JSON API format changed and version updated to 3.3.0
 
31
 * Change: as-path now returns two JSON keys, 'as-path' and 'as-set'
 
32
 * Change: NLRI are now grouped by next-hop, next-hop removed from the NLRI
 
33
 * Change: raw message use the keyword "message" and not "update"
 
34
 * Change/Fix: JSON for announcement was missing next-hop
 
35
 * Change: on TEXT API, "announced route eor" becomes "announced eor"
 
36
 
 
37
Version 3.2.19
 
38
 * Fix: bug when displaying EOR
 
39
 * Fix: invalid check on next-hop for multi-line routes
 
40
    reported by: Pierre Aubry
 
41
 * Fix: badly parsing command line for run option
 
42
    reported by: Allan Feid
 
43
    solution by: Vincent Bernat
 
44
 * Fix: allow the creation of 'allow' flows
 
45
    reported by: Adrian Cepleanu
 
46
 * Fix: bad JSON encoding for EOR
 
47
    reported by: Robert Barnes
 
48
 * Fix: API message encoding
 
49
    patch by: Daniel Neiter
 
50
 * Feature: allow digit:digit in extended communities
 
51
    requested by: Pierre Aubry
 
52
 * Feature: healtcheck.py, python 2.6 and community support
 
53
    pulled from: Allan Feid
 
54
 
 
55
Version 3.2.18
 
56
 * Fix: add path for IPv6 was badly negotiated
 
57
    reported by: Robert Barnes
 
58
 
 
59
Version 3.2.17
 
60
 * Feature: make route auto-flush an option with an API call to flush routes on demand
 
61
 * Feature: make the reactor loop time an option (it allows for a faster flush of routes)
 
62
 * Feature: allow to disable the Adj-RIB-Out (can save lots of memory if you know what you are going to send)
 
63
    requested by: David Hauweele
 
64
 * Fix: Keep API routes between SIGUSR
 
65
 * Fix: Missing empty added nlri when the update only has withdrawn
 
66
    reported by Robert Barnes (and his co-workers) with a patch, thank you !
 
67
 * Fix: Single AS Path with AS Set were reported as empty AS Path and AS Set
 
68
    reported by: David Hauweele
 
69
 * Fix: possibly not sending withdrawal when it was required
 
70
    reported by: David Hauweele
 
71
 * Fix: typo in code causing crash when process went away
 
72
    reported by: Robert Barnes
 
73
 * Fix: RouterID MUST be an IPv4
 
74
    reported by: Kristopher Beevers
 
75
 * Fix: JSON output on EBGP and IBGP session is not the same
 
76
    reported by: Robert Barnes
 
77
 * Fix: route representation with labels and route distinguisher
 
78
 * Fix: do not double remove the BGP header size
 
79
    reported by: Hideaki HAYASHI
 
80
 * Fix: parsing flow NLRI, withdrawal were reported as announcement
 
81
 * Fix: printing extended communities
 
82
 * Fix: retry when network is blocking (issue 60)
 
83
    reported by: Hideaki HAYASHI
 
84
 * Change: remove next-hop from attributes in JSON as it is given in the announce section
 
85
 * Change: cleanup in configuration parsing
 
86
 * Change: the path-information, labels and route distinguisher are now printed before the next-hop
 
87
 
 
88
Version 3.2.16
 
89
 * Fix: fix an issue with RIB cache handling
 
90
 * Fix: fix an issue with Flow generation introduced recently (mandatory attributes are mandatory even for Flow Routes)
 
91
    thanks to: Quentin Loos for reporting the issue and helping fixing it
 
92
 * Fix: on SIGUSR no route withdrawal update was performed
 
93
    reported by: Sascha Schumann
 
94
 * Fix: Do not oversend routes for route refresh
 
95
    reported by: Hideaki HAYASHI
 
96
 * Fix: Bug when route when trying to withdraw an absent route with the API
 
97
    reported by: Peter Bristow
 
98
 * Fix: Malformed JSON message
 
99
    reported by: Robert Barnes
 
100
 * Fix: validate the FLAG of the attribute received (following our own advise on IDR)
 
101
 * Change: major RIB code modification
 
102
 * Change: match attributes using the flag value as well
 
103
 
 
104
Version 3.2.15
 
105
 * Fix: a wrong fix introducing a bug in 3.2.14
 
106
 
 
107
Version 3.2.14
 
108
 * Fix: do not leak route between peers
 
109
 * Fix: restore group level static group for all peers thereafter
 
110
 * Fix: a bug in group-updates causing attributes to not be included in the update message
 
111
 * Fix: a bug when update large than 4096 could be generated with group-updates
 
112
 * Fix: an issue with JSON generation
 
113
 * Fix: MD5 support had been removed by error from 3.2
 
114
 * Feature: allow to use quote with --decode
 
115
 * Feature: implement draft-ietf-idr-aigp-10
 
116
 
 
117
Version 3.2.13
 
118
 * Fix: do not send enhanced route refresh BoRR and EoRR on reconnection
 
119
 * Fix: do not take all the CPU when connecting
 
120
 
 
121
Version 3.2.12
 
122
 * Fix: the signal for reload were wrong in the debian script
 
123
    reported by: Sascha Schumann
 
124
 * Fix: a critical bug introduce in 3.2.11 when route were not resent on reconnect
 
125
    reported by: Sascha Schumann
 
126
 
 
127
Version 3.2.11
 
128
 * Feature: the TCP server allows 'neighbor' commands
 
129
    patch by: Hideaki HAYASHI
 
130
 * Feature: initial Enhanced route refresh initial implementation
 
131
    thanks to: Hideaki HAYASHI for reporting an issue before the release (some border cases still exist)
 
132
 * Fix: bug in generating API string, missing space
 
133
 * Fix: bug in generating API string, withdrawn reported as invalid announced
 
134
 * Fix: bug in generating API string, withdawn was missing Path-Information
 
135
 * Fix: route refresh implementation issues
 
136
 * Fix: a bug with capability parsing introduced with operational
 
137
    reported by: M. Brent Busby
 
138
 * Fix: be more aggressive on reconnection (3.2 was slower than 3.1)
 
139
    reported by: Sascha Schumann
 
140
 
 
141
Version 3.2.10
 
142
 * Fix: was not announcing add-path for IPv6 unicast
 
143
 * Fix: we were not sending the Notification messages
 
144
    reported by: Hideaki HAYASHI
 
145
 * Feature: add support for route-refresh (RFC 2918)
 
146
 
 
147
Version 3.2.9
 
148
 * Fix: some json generation issue
 
149
    reported by: Peter Spikings
 
150
 * Fix: bad decoding of withdrawn routes with label ( checking 0x80000 and not 0x800000 )
 
151
 * Fix: only treat 0x800000 as special for route withdrawal
 
152
 * Fix: we could believe we were already connected when we were not
 
153
 * Fix: handle when ExaBGP daftly connects to iself
 
154
 * Fix: did not parse add-path capability correctly (only registered the last family sent)
 
155
    reported Ryan Steinmetz
 
156
 * Fix: ASM messages were sent as ADM
 
157
 * Feature: decode shows the JSON representation of updates
 
158
 * Feature: start of support for draft-ietf-idr-operational-message-00
 
159
 * Feature: allow operational advisory message using the API
 
160
 
 
161
Version 3.2.8
 
162
 * Fix: correctly re-send routes between restart
 
163
 
 
164
Version 3.2.7
 
165
 * Fix: do not try to read empty body, causing loop delay
 
166
 
 
167
Version 3.2.6
 
168
 * Fix: bug in collision detection
 
169
 * Fix: prevent re-announcement of identical routes
 
170
 
 
171
Version 3.2.5
 
172
 * Feature: FlowSpec decoding (ExaBGP can decode incoming FlowSpec)
 
173
 * Feature: detect invalid netmask on route parsing
 
174
 * Feature: "next-hop self" is supported via the API
 
175
 * Feature: can accept incoming connect and perform collision detection
 
176
 * Feature: add support for draft-ietf-idr-flowspec-redirect-ip-00.txt
 
177
 * Feature: add missing DCSP marking from RFC 5575 (flowspec)
 
178
 * Feature: add missing traffic-action from RFC 5575 (flowspec)
 
179
 * Feature: add support for draft-raszuk-idr-flow-spec-v6-03
 
180
 * Feature: complete RFC 5575 by providing support for flow-vpn
 
181
 * Fix: async connect issues
 
182
    reported by: Vincent Bernat (with very good advice for the patch)
 
183
 * Fix: bad function defintions
 
184
    patch by: Vincent Bernat
 
185
 * Fix/Compatibility: bad naming of flow capability
 
186
 * Compatibility: -c becomes -f (it should not be used by users anyway)
 
187
 
 
188
Version 3.2.4
 
189
 * Feature: new update code generation can really group NLRI in one update packet
 
190
 * Feature: massive code cleanup, much easier to read
 
191
 * Feature: new RIB code (inbound and outbound tables) much faster
 
192
 * Compatibility: JSON next-hop for the route is not in the attribute anymore but the NLRI
 
193
 
 
194
Version 3.2.3
 
195
 * Fix: an issue in the 3.2.x series when the socket return a non-fatal error
 
196
    reported by: Daniel Bradshaw
 
197
 * Fix: an issue when the code would not behave correctly on network error
 
198
 * Fix: some issues when encoding vpnv4 routes
 
199
 * Fix: change the behaviour of the main peer loop (should behave more like expected - no bug reported tho)
 
200
 * Fix: many small fixes
 
201
 * Fix: bad encoding of FlowSpec Fragments
 
202
 * Feature: implemented some defensive coding practice (enable with exabgp.debug.defensive)
 
203
 * Feature: IO code now fully non blocking on read and write
 
204
 * Feature: total rewrite of the watchdog feature now extremely scalable
 
205
 
 
206
Version 3.2.2
 
207
 * Feature: allow to generate NOTIFICATION messages through the API
 
208
    requested by: Parag Jain
 
209
 * Feature: new syntax for the multiple neighbor announcement created in 3.1.13
 
210
    Allow to filter on more than the IP address
 
211
    requested by: Petr Lapukhov
 
212
 * Feature: better uid/euid/gid change check
 
213
 * Feature: allow to reload with restart of helper process with SIGUSR1
 
214
    patch by: Vincent Bernat
 
215
 * Feature: --decode can now be passed multiple messages to decode
 
216
 * Feature: -v,--version returns ExaBGP's version
 
217
 * Feature: be more robust on ^C
 
218
 * Feature: totally rewrote the networking code, it now better deal with blocking write and not not need buffering
 
219
 * Feature: user controlled open wait timer
 
220
 * Feature: handle unknown transitive attributes
 
221
 * Feature: allow the generation of generic attributes
 
222
 * Feature: faster parsing of consecutive updates with the same attributes
 
223
 * Feature: more regression testing
 
224
 * Fix: potential issue with multisession collision detection
 
225
 * Fix: with multisession recent python would refuse to copy an route due to a lock in logger of the neighbor object
 
226
 * Fix: could not handle NOTICATION sent during the OPEN negotiation stage
 
227
 * Fix: extra spaces in the configuration could cause bad parsing
 
228
    reported by: Parag Jain (with a patch for the RD case - thank you)
 
229
    reported by: Vincent Bernat (with an alternate solution)
 
230
 * Fix: ExaBGP would not connect if the OS did not implement SO_REUSEPORT
 
231
    reported by: Vincent Bernat
 
232
 * Fix: the configuration would not handle run program with upper case or spaces
 
233
    reported by: Vincent Bernat
 
234
 * Fix: bug in the networking code
 
235
    patch by: Vincent Bernat
 
236
 * Fix: an issue with received timer expiring when it should not have
 
237
    reported by: Eric Cables
 
238
 * Fix: do not try to parse Flow Route when perforing self-check (ExaBGP regression suite)
 
239
 * Compatibility: supervisor was renamed reactor
 
240
 * Compatibility: the word inet4/inet6 are now replaced by ipv4/ipv6
 
241
 * Compatibility: the option exabgp.tcp.block was removed following the networking code change
 
242
 * Compatibility: reload the configuration with SIGUSR1, reload configuration and processes with SIGUSR2
 
243
 * Compatinility: using SIGHUP will now TERMINATE ExaBGP and not reload the configuration
 
244
    reported by: Daniel Bradshaw (issue 32)
 
245
 
 
246
Version 3.1.13 - 6th July 2013
 
247
 * Fix: only clear buffered routes on restart and not reload (bug never reported)
 
248
 * Fix: an issue when parsing EOR
 
249
 * Fix: bug with RD community genration
 
250
    reported by: Parag Jain
 
251
 * Feature: use less memory on route change calculation
 
252
 * Feature: more regression testing
 
253
 * Feature: allow to control which neighbor will get API notification
 
254
    requested by: Parag Jain
 
255
 * Feature: allow to control which neighbors will get API notification
 
256
    requested by: Petr Lapukhov
 
257
 * Feature: allow delayed connections
 
258
    requested by: David Freeman
 
259
 * Feature: block on busy socket for performance testing
 
260
    requested by: David Freeman
 
261
 * Fix/Feature: only announce routes for the negociated family on a connection
 
262
    requested by: Andrew Hoyos
 
263
 
 
264
Version 3.1.12 - 16th May 2013
 
265
 * Fix: could crash when a family safi was not defined in the peer family group instead of exiting with an error
 
266
 * Fix: a bug in the generation of extended community (target and origin)
 
267
 
 
268
Version 3.1.11 - 2nd of May 2013
 
269
 * Fix/Feature: prevent exabgp api command to block the main loop if very long (issue 29)
 
270
 * Feature: better sharing of available time between api and peers
 
271
 * Fix: a bug when trying to stop exabgp and a worker process is unstable
 
272
 * Feature: count how many time a worker crashed and stop the application it is unstable (5 restart in 64 seconds)
 
273
 
 
274
Version 3.1.10 - 2nd of May 2013
 
275
 * Change: the JSON format of ASPath
 
276
 
 
277
Version 3.1.10 - 8th of April 2013
 
278
 * Change: relax a rule and let MED propagate on IBGP
 
279
 
6
280
Version 3.1.9 - 27th of March 2013
7
281
 * Fix: bug in logging
8
282
 * Fix: typo in neighbor printing
57
331
Version 3.1.2 - 10th of January 2013
58
332
 * Copyright: updated all copyright notice (welcome to 2013)
59
333
 * Change: tidy process command name (keeping compatibility)
60
 
 * Improvement: pass raw update message to the API
61
 
 * Improvement: better control of the API message passed
62
 
 * Improvement: allow/make work a global process for multiples peers (partial compatibility kept)
 
334
 * Feature: pass raw update message to the API
 
335
 * Feature: better control of the API message passed
 
336
 * Feature: allow/make work a global process for multiples peers (partial compatibility kept)
63
337
 
64
338
Version 3.1.1 - 6th of January 2013
65
339
 * Complete Fix: watchdog feature (issue 13)
66
 
 * Improvement: JSON API 1.0, flowspec untested (issue 17)
67
 
 * Improvement: allow to remove routes by only providing the nlri and next hop (issue 16)
 
340
 * Feature: JSON API 1.0, flowspec untested (issue 17)
 
341
 * Feature: allow to remove routes by only providing the nlri and next hop (issue 16)
68
342
 
69
343
Version 3.1.0 - 2nd of January 2013
70
344
 * Partial Fix: watchdog feature
72
346
 * Fix: problem with SIGHUP when deleting peer
73
347
    patch by: Justin Azoff (thank you)
74
348
 * Fix: cluster-list attribute was not passed to api correctly
75
 
 * Improvement: MD5 support on FreeBSD (issue 14)
 
349
 * Feature: MD5 support on FreeBSD (issue 14)
76
350
    patch by: Ryan Steinmetz (thank you)
77
 
 * Improvement: caching of Community and Next-Hop
 
351
 * Feature: caching of Community and Next-Hop
78
352
    requested by: Justin Azoff (with benchmarking gains report,thank you)
79
 
 * Improvement: Store routes in neighbor as set and not list, so removal are O(1)
 
353
 * Feature: Store routes in neighbor as set and not list, so removal are O(1)
80
354
    patch by: Justin Azoff (thank you)
81
 
 * Improvement: (experimental) Limit the memory used for parsed route caching
82
 
 * Improvement: (experimental) json encoding on the API (issue 17) not tested with flow routes or complex routes
 
355
 * Feature: (experimental) Limit the memory used for parsed route caching
 
356
 * Feature: (experimental) json encoding on the API (issue 17) not tested with flow routes or complex routes
83
357
 
84
358
Version 3.0.11 - 21st of November 2012
85
359
 * Fix: add support for IPv6 MD5SUM
86
360
    reported by: Eiichiro Watanabe (with a patch, thank you)
87
361
 * Fix: RFC compliance, supporting keepalive timer of zero
88
362
 * Fix: parsing an invalid community string could cause a program crash
89
 
 * Improvement: add possibility to disable route attribute caching to reduce memory usage
 
363
 * Feature: add possibility to disable route attribute caching to reduce memory usage
90
364
               (over a few hundred Mb saved per full routing tables)
91
365
    requested by Daniel Piekacz
92
366
 
103
377
 * Fix: bug in printing neighbor objects
104
378
 * Fix: the first route of any MultiProtocol Update did not get its attributes set
105
379
 * Fix: safi on extensive route printing
106
 
 * Improvement: change the packet dump format to be cisco like
 
380
 * Feature: change the packet dump format to be cisco like
107
381
 * Change: added configuration self-checking (-t, --test)
108
 
 * Improvement: added parsing of raw update in command line (--decode)
109
 
 * Improvement: add a capability to disable asn4 support (useful when decoding routes)
 
382
 * Feature: added parsing of raw update in command line (--decode)
 
383
 * Feature: add a capability to disable asn4 support (useful when decoding routes)
110
384
 
111
385
Version 3.0.7 - 19th of August 2012
112
386
 * Fix: parser had a bug with multiple flow routes
118
392
 * Fix: withdrawing routes via helper program (issue 5)
119
393
 
120
394
Version 3.0.5 - 22 of July 2012
121
 
 * Improvement: suppor for systemd
 
395
 * Feature: suppor for systemd
122
396
    patch by: Sébastien Luttringer
123
397
 * Fix: some unexpected verbosity when use the exabgp shell script on some OSes
124
398
    patch by: Sébastien Luttringer
144
418
 * Fix: do not run our forked program as the caller but the suid user (fix bug when daemonizing too)
145
419
 * Fix: bug when daemonizing and not using syslog
146
420
 * Fix: handle gracefully ^C during configuration load/reload
147
 
 * Improvement: prevent SIGINT to reach the forked programs
148
 
 * Improvement: allow multiple configuration files, which forks multiple main loops
149
 
 * Improvement: send a "shutdown" message before terminating the worker processes
150
 
 * Improvement: group-updates option in neighbor which group routes with the same attributes in one update
151
 
 * Improvement: announce to helpers the start and end of update
 
421
 * Feature: prevent SIGINT to reach the forked programs
 
422
 * Feature: allow multiple configuration files, which forks multiple main loops
 
423
 * Feature: send a "shutdown" message before terminating the worker processes
 
424
 * Feature: group-updates option in neighbor which group routes with the same attributes in one update
 
425
 * Feature: announce to helpers the start and end of update
152
426
 
153
427
Version 3.0.3 - 17 of July 2012 (unreleased experimental version)
154
428
 * Fix: bug in ASN4 path reconstruction
157
431
 * Fix: massive CPU saving - only check for new route to announce when we have some
158
432
 * Fix: route buffering when sending many routes over slow connection/to slow routers was broken
159
433
    reported by Simon Woodhead (thank you for the testbed to debug it)
160
 
 * Improvement: in the way we store route in memory for the route delta on config change
161
 
 * Improvement: better reporting of message buffering
 
434
 * Feature: in the way we store route in memory for the route delta on config change
 
435
 * Feature: better reporting of message buffering
162
436
 * CHANGE: The way the routes as-path is printed/parsed (final for the 3.x.x)
163
437
 
164
438
Version 3.0.2 - 16 of July 2012 (unreleased experimental version)
171
445
 * CHANGE: restructuration of file hierarchy
172
446
 
173
447
Version 3.0.1 - 14 of July 2012 (unreleased experimental version)
174
 
 * Improvement: caching of parsed attributes of route received (saving memory and CPU)
175
 
 * Improvement: do not generate complex string with packet data if not printed
176
 
 * Improvement: all objects are storing data in the wire format when possible
177
 
 * Improvement: add AGGREGATOR and AS4_AGGREGATOR support
 
448
 * Feature: caching of parsed attributes of route received (saving memory and CPU)
 
449
 * Feature: do not generate complex string with packet data if not printed
 
450
 * Feature: all objects are storing data in the wire format when possible
 
451
 * Feature: add AGGREGATOR and AS4_AGGREGATOR support
178
452
    requested by: Rishabh Goel <rgoel@internap.com>
179
 
 * Improvement: add ATOMIC_AGGREGATE support
 
453
 * Feature: add ATOMIC_AGGREGATE support
180
454
    requested by Rishabh Goel
181
 
 * Improvement: faster configuration parsing
182
 
 * Improvement: bring compatibility mode for option with 2.0.x
183
 
 * Improvement: support for RFC 4659 BGP-MPLS IP VPN Extension for IPv6 VPN
 
455
 * Feature: faster configuration parsing
 
456
 * Feature: bring compatibility mode for option with 2.0.x
 
457
 * Feature: support for RFC 4659 BGP-MPLS IP VPN Extension for IPv6 VPN
184
458
 * Fix: harmless bug in the EOR generation
185
459
 * Fix: missing family announcement in open when autogenerated with option "all"
186
460
 * Fix: silly bug in profiling
221
495
 * Fix: bug when trying to daemonise ExaBGP, caused by unclosed FD
222
496
    reported by Ryan Lane (with a patch, thank you)
223
497
 * Fix: parse correctly routes with empty AS-SET or AS-SEQUENCE
224
 
 * Improvement: hidden option to change BGP select timeout (use at your own risk - do not ask me where it is - it is hidden)
225
 
 * Improvement: announce EOR even if Graceful-Restart was not negotiated but only MultiProtocol
226
 
 * Improvement: implementation of draft-ietf-idr-bgp-multisession-06
 
498
 * Feature: hidden option to change BGP select timeout (use at your own risk - do not ask me where it is - it is hidden)
 
499
 * Feature: announce EOR even if Graceful-Restart was not negotiated but only MultiProtocol
 
500
 * Feature: implementation of draft-ietf-idr-bgp-multisession-06
227
501
    use capability 131 (and not 68) for multisession to achieve interop with Cisco
228
 
 * Improvement: following RFC 6608 new notification codes
229
 
 * Improvement: to the logging code and message filtering
230
 
 * Improvement: support RFC 3765 (NOPEER community)
231
 
 * Improvement: support for draft-ietf-idr-add-paths-07 (even IPv6 even if it is not supported by anyone)
 
502
 * Feature: following RFC 6608 new notification codes
 
503
 * Feature: to the logging code and message filtering
 
504
 * Feature: support RFC 3765 (NOPEER community)
 
505
 * Feature: support for draft-ietf-idr-add-paths-07 (even IPv6 even if it is not supported by anyone)
232
506
    requested by: Rishabh Goel (Thank you for giving me a BGP session to an XR)
233
 
 * Improvement: support for RFC 4456 (BGP Route Reflection: An Alternative to Full Mesh Internal BGP (IBGP))
 
507
 * Feature: support for RFC 4456 (BGP Route Reflection: An Alternative to Full Mesh Internal BGP (IBGP))
234
508
    more exactly the generation and parsing of originator-id and cluster-list attributes
235
509
    requested by Rishabh Goel
236
 
 * Improvement: add tcp timeout control for connection over very slow ebgp multihop (dangerous, use with care)
237
 
 * Improvement: control of the MP families announced in the OPEN message
238
 
 * Improvement: support for RFC 3107 and 4364 (Carrying Label Information in BGP-4)
239
 
 * Improvement: selfcheck, allow to check if the routes we generate pass our own parser
 
510
 * Feature: add tcp timeout control for connection over very slow ebgp multihop (dangerous, use with care)
 
511
 * Feature: control of the MP families announced in the OPEN message
 
512
 * Feature: support for RFC 3107 and 4364 (Carrying Label Information in BGP-4)
 
513
 * Feature: selfcheck, allow to check if the routes we generate pass our own parser
240
514
 
241
515
Version 2.0.8 - 31 of March 2012 (stable version)
242
516
 * Fix: the update grouping could cause message up to "header size" bigger than allowed.
247
521
 * Note: Only released for debian (again :p)
248
522
 
249
523
Version 2.0.6 - 28 of Febuary 2012 (stable version)
250
 
 * Improvement: update grouping up to 4096 bytes
 
524
 * Feature: update grouping up to 4096 bytes
251
525
 * Fix: debian packaging issue
252
526
 
253
527
Version 2.0.5 - 10 of Febuary 2012
254
 
 * Improvement: allow named community
 
528
 * Feature: allow named community
255
529
 * Fix: bad flowspec component size calculation for large flow routes
256
530
 * Fix: bad attribute generation for attributes bigger than 256 chars
257
531
 * Fix: allows to pass arguments to the helper programs
261
535
 * Fix: sending any signal stoped the program instead of reloading
262
536
 
263
537
Version 2.0.3 - 1st of Febuary 2012
264
 
 * Improvement: now sending help "neighbor <ip> up" when a neighbor goes up
 
538
 * Feature: now sending help "neighbor <ip> up" when a neighbor goes up
265
539
 * Fix: now sending correctly "neighbor <ip> down" when a neighbor goes down
266
540
 * Fix: a bug when parsing "split" configuration
267
541
 * Fix: sending routes faster than a router can accept does not cause the BGP session to go down
268
542
    problem found by Eric Nghia Nguyen Duy (thank you for giving me access to his lab to fix the issue)
269
 
 * Improvement: Buffering message we can not send if sockets return a transient failure
270
 
 * Improvement: Limiting how long and how deep the buffer are kept before we kill the session
 
543
 * Feature: Buffering message we can not send if sockets return a transient failure
 
544
 * Feature: Limiting how long and how deep the buffer are kept before we kill the session
271
545
 * Fix: under load we could receive partial messages, read until we have it all
272
546
 * Fix: we were not always sending the 'down' message to handlers
273
547
 * Fix: handle signal during select
274
548
 * Internal Change: how we read from socket
275
549
 * User Change: new DEBUG_CORE option (alias for DEBUG_SUPERVISOR, DEBUG_DAEMON, DEBUG_PROCESS, DEBUG_MESSAGE, DEBUG_TIMER, DEBUG_ROUTE)
276
550
 * User Change: DEBUG_ROUTES is deprecated please use DEBUG_ROUTE (2.0.x release with have both values)
277
 
 * Improvement: Parsing AS4_PATH message and merging AS_PATH when required
 
551
 * Feature: Parsing AS4_PATH message and merging AS_PATH when required
278
552
 * Fix: possible problem with session establishment
279
 
 * Improvement: extendeded community are available in the configuration file
280
 
 * Improvement: printed routes now include extended community information
 
553
 * Feature: extendeded community are available in the configuration file
 
554
 * Feature: printed routes now include extended community information
281
555
 * Fix: bad route generation for OLD BGP speakers, previously not including 2 bytes ASN in the AS4_PATH
282
556
 
283
557
Version 2.0.2 - 1st of January 2012
298
572
    (issue 3) reported by  Sebastien Luttringer
299
573
 
300
574
Version 2.0.0 - 3rd of December 2011 (experimental version)
301
 
 * Improvement: can set flowspec communities
 
575
 * Feature: can set flowspec communities
302
576
    requested by Yiming Gong
303
 
 * Improvement: incoming route parsing for processing by an external application
 
577
 * Feature: incoming route parsing for processing by an external application
304
578
    requested by Daniel Piekacz (and others)
305
579
 * Improvment: Add profiling features to find bottlenecks
306
580
 * Improvment: Code speedup following profiling
311
585
 * User Change : move all external processes in the exabgp configuration folder
312
586
 
313
587
Version 1.3.4 - 21th of September 2011 (stable version)
314
 
 * Improvement: added support for asdot/asdot+
 
588
 * Feature: added support for asdot/asdot+
315
589
    requested by jonlooney (with a patch - thank you)
316
590
 * Fix: when the pid file could not be written, the daemon was crashing on exit
317
591
 
318
592
Version 1.3.3 - 25th of June 2011
319
 
 * Improvement: massive speed improvement when reloading with many routes (60 to 2 seconds with 10k routes)
 
593
 * Feature: massive speed improvement when reloading with many routes (60 to 2 seconds with 10k routes)
320
594
    reported by Martin Baum (with proof of concept patch)
321
595
 
322
596
Version 1.3.2 - 23rd of June 2011
325
599
 
326
600
Version 1.3.1 - 3rd of May 2011
327
601
 * Fix bug in configuration parsing introduce just before 1.3.0
328
 
 * Improvement: make tcp-server implement all the internal API available
 
602
 * Feature: make tcp-server implement all the internal API available
329
603
 
330
604
Version 1.3.0 - 2nd of May 2011
331
 
 * Improvement: reduce likelyness of route update recalculation causing us to not send keepalive in time
 
605
 * Feature: reduce likelyness of route update recalculation causing us to not send keepalive in time
332
606
 * Fix: introduced a bug in neighbor printing
333
607
 * Fix: we were trying to send a KEEPALIVE after the initial routes, but it was not going
334
608
 * Fix: a work around a python bug with TCP was not implemented everywhere
335
 
 * Improvement: adding a 'ttl-security' to allow to explicit setup of TCP TTL
336
 
 * Improvement: better handling of BGP timer for keepalive
337
 
 * Improvement: refuse to run as root, try to run as nobody automatically, uid/gid set to the user defined by env USER otherwise
 
609
 * Feature: adding a 'ttl-security' to allow to explicit setup of TCP TTL
 
610
 * Feature: better handling of BGP timer for keepalive
 
611
 * Feature: refuse to run as root, try to run as nobody automatically, uid/gid set to the user defined by env USER otherwise
338
612
 * Removed: the old wiki documentation
339
 
 * Improvement: Debian Packaging (author and maintainer: Henry-Nicolas Tourneur - thank you)
 
613
 * Feature: Debian Packaging (author and maintainer: Henry-Nicolas Tourneur - thank you)
340
614
 * Change: renamed env variable DAEMON to DAEMONIZE (to prevent name clash with Debian)
341
 
 * Improvement: added env variable PDB if set the program will call pdb, the python debugger, on program fault
342
 
 * Improvement: it is now possible to get some routes withdrawn from an external process (see watchdog example conf.)
 
615
 * Feature: added env variable PDB if set the program will call pdb, the python debugger, on program fault
 
616
 * Feature: it is now possible to get some routes withdrawn from an external process (see watchdog example conf.)
343
617
    warning: this code is not yet considered production ready, expect some bugs for complex configurations
344
 
 * Improvement: it is now possible to modify the configuration without reload from external proccess (see process example conf.)
 
618
 * Feature: it is now possible to modify the configuration without reload from external proccess (see process example conf.)
345
619
    warning: this code is not yet considered production ready, expect some bugs for complex configurations
346
620
 * Fix: make sure we can setup a session even if no route (ie: AFI/SAFI families for Mulitprotocol) are in the configuration
347
621
 * Fix: many small bug fixes, simple code refactorisation, ...
348
622
 
349
623
Version 1.2.0 - 25th of January 2011
350
 
 * Improvement: Allow to break route in more specific (ie define a /22 and get 4x /24 announced)
 
624
 * Feature: Allow to break route in more specific (ie define a /22 and get 4x /24 announced)
351
625
                This is useful when blackholing traffic to make sure no routes more specific are received from your network peer/transit
352
626
    requested by : Renaud Chaput
353
 
 * Improvement: Save the program PID into a file (set the PID= environment value with the file path)
 
627
 * Feature: Save the program PID into a file (set the PID= environment value with the file path)
354
628
    requested by : Renaud Chaput
355
 
 * Improvement: Add syslog support (env SYSLOG= nothing for local syslog, a file name (auto-rotate) or host:<host> for remote syslog)
356
 
    requested by : Josh Ward
357
 
 * Improvement: Can now daemonise (env DAEMON= detach and send the program in the background)
358
 
    requested by : Josh Ward
359
 
 * Improvement: Selection of what subsystems to log, more readable logs (well, less unreadeable to be exact)
360
 
 * Improvement: Create a new "group" in the configuration to share routes and configuration options between neighbors
 
629
 * Feature: Add syslog support (env SYSLOG= nothing for local syslog, a file name (auto-rotate) or host:<host> for remote syslog)
 
630
    requested by : Josh Ward
 
631
 * Feature: Can now daemonise (env DAEMON= detach and send the program in the background)
 
632
    requested by : Josh Ward
 
633
 * Feature: Selection of what subsystems to log, more readable logs (well, less unreadeable to be exact)
 
634
 * Feature: Create a new "group" in the configuration to share routes and configuration options between neighbors
361
635
    requested by : Multiple people
362
636
 * Fix: non detection of MD5 change on configuration reload
363
 
 * Improvement: support distutil with a setup.py file for easy installation
 
637
 * Feature: support distutil with a setup.py file for easy installation
364
638
 
365
639
Version 1.1.0 - 10th of January 2011
366
 
 * Improvement: Tested and completed TCP MD5 signature
 
640
 * Feature: Tested and completed TCP MD5 signature
367
641
    contribution: MD5 TCP code by David Farrar
368
642
 
369
643
Version 1.0.4 - 8th of January 2011
370
 
 * Improvement: can now toggle debuging using environment values (DEBUG_CONFIGURATION, DEBUG_SUPERVISOR, DEBUG_WIRE)
 
644
 * Feature: can now toggle debuging using environment values (DEBUG_CONFIGURATION, DEBUG_SUPERVISOR, DEBUG_WIRE)
371
645
 * Fix: some change to the AS_PATH generation code (some routers did not accept empty AS_PATH as it was encoded before)
372
646
    reported by: R.P. Aditya
373
647
 * Fix: some interoperability issue with openbgpd (could not parse their OPEN message)
376
650
 
377
651
Version 1.0.3 - 6th of January 2011
378
652
 * Fix: missing default localpref on IBGP session if not specified on the route
379
 
 * Improvement: more verbose messages in case of OPEN negociation issue
 
653
 * Feature: more verbose messages in case of OPEN negociation issue
380
654
 * Fix: typo preventing 4 Bytes ASN to work
381
655
 
382
656
Version 1.0.2 - 22nd of October 2010
383
 
 * Improvement: only try to generate UPDATE messages if the configuration was changed (save quite some CPU as the algorithm is really naive)
 
657
 * Feature: only try to generate UPDATE messages if the configuration was changed (save quite some CPU as the algorithm is really naive)
384
658
 * Fix : a neighbor configuration change could have been undetected on SIGHUP/SIGALRM
385
659
    reported by: Yann Berthier
386
660
 * Fix : reloading the configuration did not detect the removed routes