Skip to content

Conversation

@zhaofengli
Copy link

In Bird 2.0, BGP protocol lines have --- as the table name, as the actual table names are defined in the respective channels. This commit fixes the regex to take this into account.

Parsing of the key-value section is also changed so that we don't mistake the states of individual channels as the protocol state. In the future, we should distinguish between different channels instead of parsing the key-value section blindly.

Example:

xxx1_4     BGP        ---        up     2018-08-21 08:44:30  Established
  Description:    iBGP xxx1 v4
  BGP state:          Established
  <snip>
  Channel ipv4
    State:          UP
    Table:          master4
  <snip>

  • Expected state: up
  • Parsed state: UP (from the ipv4 channel)

  • Expected state_changed: 2018-08-21 08:44:30
  • Parsed state_changed: Not parsed

In Bird 2.0, BGP protocol lines have `---` as the table name, as the actual
table names are defined in the respective channels. This commit fixes the
regex to take this into account.

Parsing of the key-value section is also changed so that we don't mistake
the states of individual channels as the protocol state. In the future, we
should distinguish between different channels instead of parsing the key-value
section blindly.

Example:

```
xxx1_4     BGP        ---        up     2018-08-21 08:44:30  Established
  Description:    iBGP xxx1 v4
  BGP state:          Established
  <snip>
  Channel ipv4
    State:          UP
    Table:          master4
  <snip>
```

- Expected `state`: `up`
- Parsed `state`: `UP` (from the ipv4 channel)

- Expected `state_changed`: `2018-08-21 08:44:30`
- Parsed `state_changed`: Not parsed
@hellerve
Copy link
Member

We might have to think about backward compatibility here (because including this PR as is would break BIRD 1.X)! This isn’t trivial, because we don’t want to make it too brittle and switch-heavy (I think).

In other news, @mhannig (the current maintainer) is currently not available, so it will probably take a while before he’ll respond to this!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants