vtpmmgr: Fix owner_auth & srk_auth parsing

Argument parsing only matches to before ':' and then the string with
leading ':' is passed to parse_auth_string which fails to parse.  Extend
the length to include the seperator in the match.

While here, switch the seperator to "=".  The man page documented "="
and the other tpm.* arguments already use "=".  Since it didn't work
before, we don't need to worry about backwards compatibility.

Signed-off-by: Jason Andryuk <jandryuk@gmail.com>
Reviewed-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Reviewed-by: Daniel P. Smith <dpsmith@apertussolutions.com>
This commit is contained in:
Jason Andryuk authored and Andrew Cooper committed 2021-05-10 14:50:33 +01:00
1 parent 7f4276fad8
commit c8d8a1e2e6
1 file changed
+4 -4
+4 -4
View File
@@ -289,16 +289,16 @@ int parse_cmdline_opts(int argc, char** argv, struct Opts* opts)
memcpy(vtpm_globals.srk_auth, WELLKNOWN_AUTH, sizeof(TPM_AUTHDATA));
for(i = 1; i < argc; ++i) {
if(!strncmp(argv[i], "owner_auth:", 10)) {
if((rc = parse_auth_string(argv[i] + 10, vtpm_globals.owner_auth)) < 0) {
if(!strncmp(argv[i], "owner_auth=", 11)) {
if((rc = parse_auth_string(argv[i] + 11, vtpm_globals.owner_auth)) < 0) {
goto err_invalid;
}
if(rc == 1) {
opts->gen_owner_auth = 1;
}
}
else if(!strncmp(argv[i], "srk_auth:", 8)) {
if((rc = parse_auth_string(argv[i] + 8, vtpm_globals.srk_auth)) != 0) {
else if(!strncmp(argv[i], "srk_auth=", 9)) {
if((rc = parse_auth_string(argv[i] + 9, vtpm_globals.srk_auth)) != 0) {
goto err_invalid;
}
}
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.