Bug #4518
closedInventory with empty CFEngine agent public key cannot be processed by Rudder raising exceptions
Description
When we have:
<CFKEY>-----BEGIN RSA PUBLIC KEY-----
-----END RSA PUBLIC KEY-----</CFKEY>
We get:
java.lang.AssertionError: assertion failed at scala.Predef$.assert(Predef.scala:165) at
com.normation.inventory.domain.PublicKey.<init>(DataTypes.scala:61) at
com.normation.inventory.provisioning.fusion.RudderPublicKeyParsing.apply(RudderParsingRules.scala:185)
This the equivalent of a Null Pointer Exception: Rudder does not correctly handle the case where the actual RSA key is empty.
So the intent of that ticket is JUST to correct that error handling so that we consistently process these case:
- no CFKEY tag,
- CFKEY tag with no content,
- CFKEY tag with a content that does looks like a RSA key (i.e no BEGIN RSA/END RSA)
- CFEKEY with BEGIN RSA/END RSA but with no actual content (that ticket).
IF we want to make CFKEY a mandatory non empty attribute, like UUID is, and what CFKEY is NOT at the moment, it must go into an other ticket (and better look like a new user story). On the same idea, if there is a Fusion bug that leads to the empty RSA key whereas there is, actually, a CF-Key that should have been put here, an other ticket must be open.
Updated by François ARMAND over 10 years ago
- Description updated (diff)
- Status changed from In progress to Pending technical review
- Pull Request set to https://github.com/Normation/ldap-inventory/pull/29
Trivial PR here: https://github.com/Normation/ldap-inventory/pull/29
Updated by François ARMAND over 10 years ago
- Pull Request changed from https://github.com/Normation/ldap-inventory/pull/29 to https://github.com/Normation/ldap-inventory/pull/30
With the actual correct branch target.
Updated by François ARMAND over 10 years ago
- Description updated (diff)
Updating description to be clearer on the intent.
Updated by François ARMAND over 10 years ago
- Assignee changed from François ARMAND to Nicolas CHARLES
Updated by François ARMAND over 10 years ago
- Status changed from Pending technical review to Pending release
- % Done changed from 0 to 100
Applied in changeset ldap-inventory:commit:1968bcd4da9c3b0a1d732cc18973233b2c11133a.
Updated by Nicolas CHARLES over 10 years ago
Applied in changeset ldap-inventory:commit:aac38d3299a8839b924afb3302e1f5c4452a929f.
Updated by Vincent MEMBRÉ over 10 years ago
- Subject changed from Empty RSA key in CFKEY element of inventory leads to an exception to Inventory with empty CFEngine agent public key cannot be processed by Rudder raising exceptions
Updated by Vincent MEMBRÉ over 10 years ago
- Status changed from Pending release to Released
This bug has been fixed in Rudder 2.6.11, which was released today.
Check out:
- The release announcement: http://www.rudder-project.org/pipermail/rudder-announce/2014-March/000077.html
- The full ChangeLog: http://www.rudder-project.org/foswiki/bin/view/System/Documentation:ChangeLog26
- Download information: https://www.rudder-project.org/site/get-rudder/downloads/
Updated by Benoît PECCATTE over 9 years ago
- Category changed from 26 to Web - Nodes & inventories