#2553 [MAN] PKI : Pki cli behavior when --ignore-cert-status is added
Closed: migrated by dmoluguw. Opened by gkapoor.

man pki says about "--ignore-cert-status" but i tried using it I always get
"Caused by: java.lang.NoSuchFieldException: "

Steps to Reproduce:

pki -v -d /opt/rhqa_pki/certdb/ -h pki1.example.com -c Secret123 -p 25080
--ignore-cert-status "TPS_AgentV" -n "TPS_AgentV"  tps-token-find
PKI options: -v -d /opt/rhqa_pki/certdb/
PKI command: pki1.example.com -h pki1.example.com -c Secret123 -p 25080
--ignore-cert-status TPS_AgentV -n TPS_AgentV tps-token-find
Java command: /usr/lib/jvm/jre-1.8.0-openjdk/bin/java
-Djava.ext.dirs=/usr/share/pki/lib
-Djava.util.logging.config.file=/usr/share/pki/etc/logging.properties
com.netscape.cmstools.cli.MainCLI -d /opt/rhqa_pki/certdb/ --verbose -h
pki1.example.com -c Secret123 -p 25080 --ignore-cert-status TPS_AgentV -n
TPS_AgentV tps-token-find
Server URI: http://pki1.example.com:25080
java.lang.Error: Invalid cert status "TPS_AgentV".
        at
com.netscape.cmstools.cli.MainCLI.convertCertStatusList(MainCLI.java:461)
        at com.netscape.cmstools.cli.MainCLI.parseOptions(MainCLI.java:439)
        at com.netscape.cmstools.cli.MainCLI.execute(MainCLI.java:540)
        at com.netscape.cmstools.cli.MainCLI.main(MainCLI.java:574)
Caused by: java.lang.NoSuchFieldException: TPS_AgentV
        at java.lang.Class.getField(Class.java:1703)
        at
com.netscape.cmstools.cli.MainCLI.convertCertStatusList(MainCLI.java:457)
        ... 3 more
ERROR: Command '[u'/usr/lib/jvm/jre-1.8.0-openjdk/bin/java',
u'-Djava.ext.dirs=/usr/share/pki/lib',
u'-Djava.util.logging.config.file=/usr/share/pki/etc/logging.properties',
'com.netscape.cmstools.cli.MainCLI', '-d', '/opt/rhqa_pki/certdb/',
'--verbose', '-h', 'pki1.example.com', '-c', 'Secret123', '-p', '25080',
'--ignore-cert-status', 'TPS_AgentV', '-n', 'TPS_AgentV', 'tps-token-find']'
returned non-zero exit status 25

The --reject-cert-status and --ignore-cert-status parameters should actually be followed by a list of statuses to reject/ignore. The possible values are defined in ValidityStatus class in JSS:

  • EXPIRED_CERTIFICATE
  • REVOKED_CERTIFICATE
  • INADEQUATE_KEY_USAGE
  • INADEQUATE_CERT_TYPE
  • UNTRUSTED_CERT
  • CERT_STATUS_SERVER_ERROR
  • UNKNOWN_ISSUER
  • UNTRUSTED_ISSUER
  • CERT_NOT_IN_NAME_SPACE
  • CA_CERT_INVALID
  • PATH_LEN_CONSTRAINT_INVALID
  • BAD_KEY
  • BAD_SIGNATURE
  • EXPIRED_ISSUER_CERTIFICATE
  • INVALID_TIME
  • UNKNOWN_SIGNER
  • SEC_ERROR_CRL_EXPIRED
  • SEC_ERROR_CRL_BAD_SIGNATURE
  • SEC_ERROR_CRL_INVALID
  • CERT_BAD_ACCESS_LOCATION
  • OCSP_UNKNOWN_RESPONSE_TYPE
  • OCSP_BAD_HTTP_RESPONSE
  • OCSP_MALFORMED_REQUEST
  • OCSP_SERVER_ERROR
  • OCSP_TRY_SERVER_LATER
  • OCSP_REQUEST_NEEDS_SIG
  • OCSP_UNAUTHORIZED_REQUEST
  • OCSP_UNKNOWN_RESPONSE_STATUS
  • OCSP_UNKNOWN_CERT
  • OCSP_NOT_ENABLED
  • OCSP_NO_DEFAULT_RESPONDER
  • OCSP_MALFORMED_RESPONSE
  • OCSP_UNAUTHORIZED_RESPONSE
  • OCSP_FUTURE_RESPONSE
  • OCSP_OLD_RESPONSE
  • BAD_CERT_DOMAIN

Since there are quite a few possible values, it should be documented in the pki man page (instead of CLI help message). The CLI itself is already generating the proper error message:

Error: Invalid cert status "TPS_AgentV"

Seems like a quick fix.

+1 for priority and milestone

Replying to [comment:4 vakwetu]:

Seems like a quick fix.

+1 for priority and milestone

per offline triage: 10.3 - major; clearing proposed priority/milestone

Per PKI Bug Council of 02/09/2017: 10.3 => 10.4

Metadata Update from @gkapoor:
- Issue set to the milestone: 10.4

Metadata Update from @mharmsen:
- Custom field feature adjusted to ''
- Custom field proposedmilestone adjusted to ''
- Custom field proposedpriority adjusted to ''
- Custom field reviewer adjusted to ''
- Custom field version adjusted to ''
- Issue close_status updated to: None
- Issue set to the milestone: 10.5 (was: 10.4)

Metadata Update from @mharmsen:
- Issue priority set to: critical (was: major)

Metadata Update from @mharmsen:
- Issue priority set to: major (was: critical)

[20171025] - Offline Triage ==> 10.6

Metadata Update from @mharmsen:
- Issue set to the milestone: 10.6 (was: 10.5)

Dogtag PKI is moving from Pagure issues to GitHub issues. This means that existing or new
issues will be reported and tracked through Dogtag PKI's GitHub Issue tracker.

This issue has been cloned to GitHub and is available here:
https://github.com/dogtagpki/pki/issues/2673

If you want to receive further updates on the issue, please navigate to the
GitHub issue and click on Subscribe button.

Thank you for understanding, and we apologize for any inconvenience.

Metadata Update from @dmoluguw:
- Issue close_status updated to: migrated
- Issue status updated to: Closed (was: Open)

Metadata