History log of /system/libvintf/include/vintf/parse_string.h
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
3916619e525f6aed4a3ef93881452157ce12d76e 13-Apr-2017 Yifan Hong <elsk@google.com> compatibility-matrix.sepolicy.sepolicy-version format

should be 25.0 or 26.0-3; also there can be multiple
sepolicy-version entries. Change the code to reflect these.

Test: libvintf_test
Bug: 36456394 VINTF: add sepolicy version
Bug: 36737087 We need a way to identify which "platform version"
Change-Id: Iaf660c6326fb42a21b16e8b8129005053a28f01b
/system/libvintf/include/vintf/parse_string.h
57b7f0c0360b2603e348ffa5892438754041a95d 05-Apr-2017 Yifan Hong <elsk@google.com> Add <vndk> entry to framework manifest and device comp-mat.

Bug: 36400653

Test: libvintf_test
Change-Id: Ie727d4806ad74a72511354a901fca09ea9ae67c4
/system/libvintf/include/vintf/parse_string.h
f3a68574718c38ef9445f1cf49104a6130c5b23a 05-Apr-2017 Yifan Hong <elsk@google.com> Add manifest/compatibility-matrix.type attribute

to distinguish device and framework HAL manifest, and
device and framework compatibility matrix.

Add .device / .framework entries to HalManifest and
CompatibilityMatrix class for device-only / fwk-only
entries. Access to these fields should be guarded with
a check to mType.

Test: libvintf_test
Test: boots
Change-Id: Id9c93c1e6bb585234a9ae6d9296f5a10582ef58f
/system/libvintf/include/vintf/parse_string.h
ed095f6ff18b54b62033f68e5aac3c80785d6147 05-Apr-2017 Yifan Hong <elsk@google.com> Remove <impl> tag from ManifestHal.

It is deprecated as suggested by documentation.
Test: libvintf_test

Bug: 36602724

Change-Id: Ifc847f87f654b0c62dba6106ae5b19c9c2d87f30
/system/libvintf/include/vintf/parse_string.h
c54d32cb0b20308a0ecea7864016a2a5dc512f71 08-Mar-2017 Yifan Hong <elsk@google.com> Add bitness info to <transport>.

Only valid for transport == passthrough or toggled.
Example:
<transport>hwbinder</transport>
<transport arch="64">passthrough</transport>
<transport arch="32+64">passthrough</transport>
<transport arch="32">passthrough</transport>

Allow transport tag to be missing (for native HALs like GLES).

Bug: 35966597
Test: libvintf_test
Change-Id: I80928a5d46f3097ed18f2894e46762127b29bd4c
/system/libvintf/include/vintf/parse_string.h
d2b7e64894cd739da60f129ac38d0cf035238206 17-Feb-2017 Yifan Hong <elsk@google.com> vintf: VendorManifest -> HalManifest

VendorManifest is an old name and is changed
to HalManifest long ago in relavant documentation.
It merely consist of a list of "HALs" and doesn't
contain any runtime collectible information.

Test: mma
Test: libvintf_test

Change-Id: Iba78128c194a3efc34371b686943266829d8e33c
/system/libvintf/include/vintf/parse_string.h
a7201e77e0c5221ada625ba5fcf89b25af45c10a 17-Feb-2017 Yifan Hong <elsk@google.com> vintf: KernelInfo -> RuntimeInfo.

There are more runtime information to report to the
OTA server besides kernel information (like avb.meta-version).
Renaming this class to reflect this.

Test: mma
Test: libvintf_test

Change-Id: Ie5863508bdac7a1a378c00528c8fd9853c6c50aa
/system/libvintf/include/vintf/parse_string.h
558380a7b95de37f6c74de683102f78e97e4fbf0 10-Feb-2017 Yifan Hong <elsk@google.com> Implement sepolicy section in compatibility-matrix.

* kernel-sepolicy-version will be checked against
security_policyvers().
* sepolicy-version is not yet defined; put a placeholder
entry so that it parses the compatibility matrix XML
file correctly.

Test: libvintf_test
Change-Id: I41f69623728deedd00c511e6b99f43697c9eeda8
/system/libvintf/include/vintf/parse_string.h
3f5489a519f5f1a7eb8bd7873a3170057502d93b 08-Feb-2017 Yifan Hong <elsk@google.com> Complete definition for CompatibilityMatrix

* Add KernelConfigTypedValue to CompatibilityMatrix
to support KV pair in kernel information. config items
in /proc/config.gz are more than just a string; they have
the format:
CONFIG_FOO=y
CONFIG_BAR=""
CONFIG_BAZ=0x99
etc. Compatibility matrix needs to match the value part
as well.

* Added minlts to each kernel entry. This allows
KernelInfo::checkCompatibility to check if the current
LTS version can support the framework.

Test: libvintf_test

Change-Id: I859829dee8fdee0d856c33c1f5836d8c9c94099a
/system/libvintf/include/vintf/parse_string.h
ccf967b6c8422975d000de558ed3f01456ea44be 18-Jan-2017 Yifan Hong <elsk@google.com> Add API for runtime collectible kernel / sepolicy info.

Also makes a nit change to VendorManifest; clear it
immediately when fetchAllInformation fails.

Test: /system/bin/vintf produces output for
/proc/version and kernel sepolicy version.

Change-Id: If24a5d7de92c674bd2668c5f5f42f61e894335c4
/system/libvintf/include/vintf/parse_string.h
5a06ef717dbc3e417c35dc08543144386a277a6c 25-Jan-2017 Yifan Hong <elsk@google.com> Remove isValid() from public API.

* Remove isValid() from VendorManifest; rather,
add(ManifestHal &&) will do the check.
* Make ManifestHal::isValid() private; its XML Converter
and string parser will do the check.

Test: libvintf_test
Bug: 34620633
Change-Id: I3c8164e5856ac06eb6d79bb34e092ec2dec4e68e
/system/libvintf/include/vintf/parse_string.h
676447acd00ebf93d1023f79fc02b5cbbb86dda2 15-Nov-2016 Yifan Hong <elsk@google.com> VendorManifest and CompatibilityMatrix from and to XML.

Usage:

#include <vintf/VendorManifest.h>
#include <vintf/parse_xml.h>
VendorManifest vm;
// ...
std::string xml = gVendorManifestConverter(vm);
VendorManifest vm2;
bool success = gVendorManifestConverter(&vm2, xml);
if (!success)
ALOGW("%s", gVendorManifestConverter.lastError());

See Vendor Interface Object and Compatibility Matrix Design
document and libvintf_test (test/main.cpp) for details.
(Up to commit 4468534)

Test: libvintf_test

Bug: 32648352

Change-Id: I7e8ee8d2b9e61bf036e77a390712480cbbd452b4
/system/libvintf/include/vintf/parse_string.h