Skip to content

MaskSensitiveData function - valueToReplace is missing Null-conditional operator (?) check #89

Description

@HOPSoftwareLimited

There is a missing Null-conditional operator (?) check on valueToReplace on line 201 in the Gateway.cs. Results in a null reference exception.

See line:

valueToReplace = list.Length > 1 ? valueToReplace?.GetArray<JsonDoc>(list[0]).FirstOrDefault() : valueToReplace.Has(parts[i]) ? valueToReplace?.Get(parts[i]) : null;

Sample xml

<request timestamp=\"20250424075244\" type=\"payer-new\"><merchantid>[MERCHANTID]</merchantid><channel>MOTO</channel><account>internet</account><orderid>[ORDERID]</orderid><payer ref=\"baeb9071-39d3-4f27-aacf-087e77112c35\" type=\"Retail\"><firstname>Expedia</firstname><surname>VirtualCard</surname><address /><phonenumbers /></payer><sha1hash>16c67bc0e070dbdc4153501868ee6db00cda2a51</sha1hash></request>

Image

ie

valueToReplace = list.Length > 1 ? valueToReplace?.GetArray<JsonDoc>(list[0]).FirstOrDefault() : valueToReplace?.Has(parts[i]) ? valueToReplace?.Get(parts[i]) : null;

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions