summaryrefslogtreecommitdiff
path: root/server/TetherController.cpp
diff options
context:
space:
mode:
authorMaciej Żenczykowski <maze@google.com>2020-05-04 20:02:14 -0700
committerMaciej Żenczykowski <maze@google.com>2020-05-23 13:32:44 -0700
commitbb3abe5adc08453acecf0fe79d1e494e84de27fa (patch)
treed278a7ceeb102d5f63756afaf96632a5ed8dbb79 /server/TetherController.cpp
parenta1049cbacc39b12ca60ca8bba78b7ce329e55ed0 (diff)
TetherIngressValue - add output path/route mtu field
This doesn't actually change anything, since we initialize it with 1500 default just like we blindly assume it always is today. Tested: builds Signed-off-by: Maciej Żenczykowski <maze@google.com> Change-Id: Ie448a988c3a769be07f895621711fe4e59d4535c
Diffstat (limited to 'server/TetherController.cpp')
-rw-r--r--server/TetherController.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/server/TetherController.cpp b/server/TetherController.cpp
index 560a01cf..50ae9661 100644
--- a/server/TetherController.cpp
+++ b/server/TetherController.cpp
@@ -870,8 +870,9 @@ Result<void> TetherController::addOffloadRule(const TetherOffloadRuleParcel& rul
};
TetherIngressValue value = {
- static_cast<uint32_t>(rule.outputInterfaceIndex),
- hdr,
+ .oif = static_cast<uint32_t>(rule.outputInterfaceIndex),
+ .macHeader = hdr,
+ .pmtu = 1500, // TODO: don't just blindly use this default
};
return mBpfIngressMap.writeValue(key, value, BPF_ANY);
@@ -1185,7 +1186,7 @@ void TetherController::dumpBpf(DumpWriter& dw) {
return;
}
- dw.println("BPF ingress map: iif v6addr -> oif srcmac dstmac ethertype");
+ dw.println("BPF ingress map: iif v6addr -> oif srcmac dstmac ethertype [pmtu]");
const auto printIngressMap = [&dw](const TetherIngressKey& key, const TetherIngressValue& value,
const BpfMap<TetherIngressKey, TetherIngressValue>&) {
char addr[INET6_ADDRSTRLEN];
@@ -1193,8 +1194,8 @@ void TetherController::dumpBpf(DumpWriter& dw) {
std::string dst = l2ToString(value.macHeader.h_dest, sizeof(value.macHeader.h_dest));
inet_ntop(AF_INET6, &key.neigh6, addr, sizeof(addr));
- dw.println("%u %s -> %u %s %s %04x", key.iif, addr, value.oif, src.c_str(), dst.c_str(),
- ntohs(value.macHeader.h_proto));
+ dw.println("%u %s -> %u %s %s %04x [%u]", key.iif, addr, value.oif, src.c_str(),
+ dst.c_str(), ntohs(value.macHeader.h_proto), value.pmtu);
return Result<void>();
};