Semir Patel e5842cd81a
Make proto-public license MPL (#18531)
* Make proto-public license MPL

* Add proto-public dir to exclusion list in .copywrite.hcl
2023-08-21 12:31:54 -05:00

48 lines
1.1 KiB
Protocol Buffer

// Copyright (c) HashiCorp, Inc.
// SPDX-License-Identifier: MPL-2.0
syntax = "proto3";
package hashicorp.consul.mesh.v1alpha1.pbproxystate;
// Note: it's nice to have this list of header mutations as opposed to configuration similar to Envoy because it
// translates more nicely from GAMMA HTTPRoute, and our existing service router config. Then xds code can handle turning
// it into envoy xds.
message HeaderMutation {
oneof action {
RequestHeaderAdd request_header_add = 1;
RequestHeaderRemove request_header_remove = 2;
ResponseHeaderAdd response_header_add = 3;
ResponseHeaderRemove response_header_remove = 4;
}
}
message RequestHeaderAdd {
Header header = 1;
AppendAction append_action = 2;
}
message RequestHeaderRemove {
repeated string header_keys = 1;
}
message ResponseHeaderAdd {
Header header = 1;
AppendAction append_action = 2;
}
message ResponseHeaderRemove {
repeated string header_keys = 1;
}
message Header {
string key = 1;
string value = 2;
}
enum AppendAction {
// buf:lint:ignore ENUM_ZERO_VALUE_SUFFIX
APPEND_ACTION_APPEND_IF_EXISTS_OR_ADD = 0;
APPEND_ACTION_OVERWRITE_IF_EXISTS_OR_ADD = 1;
}