There was a problem in the rpm-post-install.sh script
that ran as part of the CentOS7 rpm installation where
a link was being created called libcurl.so which pointed
to libcurl.so.4. If the link could not be created because
it already existed, the script would quit before finishing
and never place hirs-provisioner-tpm2 in a directory on
the PATH.
The proper solution was to link hirs-provisioner against
libcurl.so.4 so that it is clear which version of the API
was compiled against. This was not happening because
we were linking against a version of curl build by the CPR
project which was not properly embedding the SONAME in the
shared object file. By linking instead against the shared
object file distributed in the development package of
libcurl, hirs-provisioner-tpm2 now looks for libcurl.so.4
rather than the generic libcurl.so. This will prevent our
executable from breaking if libcurl.so gets updated to point
to a newer version of libcurl that uses a different API.
Closes#78.
A couple of variables had conflicting names and the inner scope was
shadowing the outer. Style checker was complaining. Deleted one inner
definition and renamed another variable.
* Added System Tests.
* Cleaned up scripts
* Cleaned up system tests.
* Cleaned up system tests.
* Cleaned up system tests.
* Updated system tests.
* Code review updates.
* [#46] Ensure Travis mounts repository rather than clones it in Docker
* [#46] Containerize HIRS ACA and prep ACA container for Integration Tests
* [#46] Containerize HIRS TPM2Provisioner and prep TPM2Provisioner container for Integration Tests
* [#46] Replace localinstall with install
* [#46] Prevent rebuilding of packages unnecessarily
* [#46] Finish initial docker compose setup for integration tests
* [#46] Allow for detection of complete Integration Environment Setup
* [#46] Fix Travis CI to allow for detecting Integ Test Environ Stand-Up
* [#46] Fix Initial Integration Test Script
* [#46] Troubleshoot Integration Test script
* Added the ACA Users Guide
* Updated the installation notes on the ACA portal help page
* changed format of user guide from pdf to doc
* [#54] Edit ACA Users Guide
* Updated the ACA Install and User Guide
* Added the ACA Users Guide.
Updated the ACA install Notes and added the ACA User Guide.
* This change adds in additional information about the certificate, which include the public key and signature algoritms and their sizes, the key usage and extended key usage, the certificate version number for EK and CA certs and the issuer section expanded with Auth Key Id and Auth Info Access.
* Made some fixes to the platform class print out. Needs to print out string representation of the value.
* Additional changes for the certificate details page. Going over the spec determining what should be shown and what should be hidden if no information is specified.
* This change adds in additional information about the certificate, which include the public key and signature algoritms and their sizes, the key usage and extended key usage, the certificate version number for EK and CA certs and the issuer section expanded with Auth Key Id and Auth Info Access.
Made some fixes to the platform class print out. Needs to print out string representation of the value.
Additional changes for the certificate details page. Going over the spec determining what should be shown and what should be hidden if no information is specified.
Small updates to code commits and statements
* Stashing changes.
* Correcting some unit test fail instances. The PC Test fails because the tested cert is not updated to new (constantly changing) specs. Not just on the value but also on the value type.
* Fixing git merge meta data.
* Updates to include the Authority Key information as a set rather than just one item. Using a bouncy castle defined class.
* Reversed the type of variable the public key value returns so that the unit test for it doesn't have to change. The type wasn't important, it was a convenience decision.
* Adding changes based on review comments from @apldev3.
* Made changes based on github review comments.
* Additional changes for github comments
* Updated the code for the public key size on CA and EK certificates. There was a previous issue with 4 additional bytes being included in the size.
* Some more changes for Github comments
Added unit test for TPMBaseline.isEmpty(). Change exception type thrown in generator class
Added unit tests to account for both an empty and a non-empty baseline object
Checkstyle changes
DBPolicyManager's getPolicy(appraiser, device) has historically
returned the default policy for an appraiser if none is defined
in the device group that the given device belongs to. However,
this behavior does not in fact support the current use of devices,
groups, and policies; in the case where a group has no policy
assigned for a type of appraiser, the system is in a state
where that type of appraisal will not occur for devices in
a given group. To better reflect desired behavior, the method
now returns null if a policy is not explicitly set for
the given (appraiser, device group) pair.
Closes#49.
ImaAcceptableRecordBaseline and its subclasses have been updated to include
a containsHashes method to be able to match IMA measurement records
based solely on their hashes. Supporting classes have been
updated or created as necessary.
Additionally, the set of path equivalencies as specified in the IMA
policy have been updated to include additional entries.
Closes#33.
The CentOS7 package selinux-policy-targeted does not allow Tomcat
to use port 3306, which is the default MySQL port. This commit
changes the ACA RPM to modify the SELinux policy to grant that
permission on fresh installs. This makes the ACA RPM now require
the policycoreutils package to be installed.
Added an additional null check for a platform supply validation. Added a mapping object for platform credential to the associated attributes during validations.
Added an additional null check for a platform supply validation. Added a mapping object for platform credential to the associated attributes during validations. Missed import statement.