Proto commits in p4lang/behavioral-model

These 6 commits are when the Protocol Buffers files have changed:

Commit:e6ae102
Author:Radostin Stoyanov
Committer:GitHub

Move dataplane_interface.proto in services/ (#994) The p4::bm::DataplaneInterface service was introduced with commit 2877c05 (Support for injecting / receiving pkts with gRPC). It was initially added under simple_switch_grpc as this is the first BMv2 target to support P4Runtime. However, this service is not target dependent and it could be reused with other targets (e.g., psa_switch). Signed-off-by: Radostin Stoyanov <rstoyanov@fedoraproject.org>

The documentation is generated from this commit.

Commit:68eae8b
Author:Antonin Bas
Committer:Antonin Bas

Added new id field to PacketStreamRequest and PacketStreamResponse messages in dataplane_interface.proto

Commit:cf7ad70
Author:Antonin Bas
Committer:Antonin Bas

Remove dependency on empty.proto in simple_switch_grpc Fixes #545. I do not observe a linking error on my system, where google::protobuf::Empty is part of libprotobuf. It is possible that it is not the case on other systems or with different versions (more recent?) of protobuf.

Commit:e146a4c
Author:Dushyant Arora
Committer:Antonin Bas

Style fix: The first value in enum should be labeled unspecified to avoid breaking clients if the desired default behavior changes.

Commit:cb2a7b1
Author:Antonin Bas
Committer:Antonin Bas

Add a one-way SetPortOperStatus RPC to DataplaneInterface gRPC service It is useful to simulate port-down / port-up events.

Commit:2877c05
Author:Antonin Bas
Committer:Antonin Bas

Support for injecting / receiving pkts with gRPC We define a new p4::bm::DataplaneInterface gRPC service which can be used to inject and receive packets. We add a DevMgrIface implementation to simple_switch_grpc which handles this gRPC service. simple_switch_grpc users can choose to use this DevMgrIface implementation by providing a gRPC server address with the new `--dp-grpc-server-addr` command-line option. In this commit, we also start using GTest for unit-testing simple_switch_grpc. For now we only have tests for the new gRPC packet injection / reception feature. The legacy tests will be converted to GTest in a future commit.