compat: Provide a libip_checksum shim

* * In Android T, AOSP moved `libnetutils` to an APEX that is inaccessible
  to the vendor namespace - and it can't be built to vendor in any
  treble-compliant way.

* Our `wfc-pkt-router` blob lives on vendor, and relies on `libnetutils.so`.

* Upon further analysis, we only reply on a few checksum related functions,
  such as the symbol `ipv4_pseudo_header_checksum`, which lives in the (now)
  staticly included dependency of `libnetutils.so`, `libip_checksum`.

* To work around this, we enabled building `libip_checksum` as a stand-alone
  vendor_available library called `libip_checksum_shim.so`, and `patchelf`
  `wfc-pkt-router` to depend on `libipp_checksum_shim.so`.

Change-Id: I7dff9ec6c8ff146f6090e9519ece7844b4a057eb
This commit is contained in:
Nolen Johnson 2022-11-10 15:17:42 -05:00
parent f25f2ec083
commit e4fbaa32d3

View file

@ -297,3 +297,11 @@ cc_library_shared {
],
vendor_available: true,
}
cc_library {
name: "libip_checksum_shim",
whole_static_libs: [
"libip_checksum",
],
vendor_available: true,
}