Bug ID 756356: External datagroups of type string cannot use iRule command 'class match equals' for entries > 32 characters long

Last Modified: Mar 21, 2019

Bug Tracker

Affected Product:  See more info
BIG-IP LTM(all modules)

Known Affected Versions:
14.0.0, 14.0.0.1, 14.0.0.2, 14.0.0.3, 14.0.0.4, 14.1.0, 14.1.0.1, 14.1.0.2, 14.1.0.3

Opened: Jan 23, 2019
Severity: 2-Critical

Symptoms

iRules using the command 'class match' with the 'equals' operator on long entries, as in: my_datagroup: "abcdefghijklmnopqrstuvwxyz0123456" := "value1" class match "abcdefghijklmnopqrstuvwxyz0123456" equals my_datagroup Will fail to return a positive match even if they are in the datagroup.

Impact

iRules will act incorrectly

Conditions

This is encountered when all of the following conditions are met: - Using an external datagroup of type string with keys longer than 32 characters. - Using an iRule with the 'class match' command and the 'equals' operator on the external datagroup. - Trying to match keys > 32 characters.

Workaround

If none of the keys in the datagroup are prefixes of each other, the 'equals' operator can be changed to 'starts_with' or 'ends_with' (if none are suffixes of each other).

Fix Information

None

Behavior Change