The old code is bad for two reasons. First, it has an off-by-one
error. Second, it won't help if you aren't running with assertions
enabled. Per discussion, we want a check here in that case too.
Author: KaiGai Kohei, adjusted by me.
Reviewed-by: Petr Jelinek
Discussion:
56E0D547.
1030101@2ndquadrant.com
100, &ctl, HASH_ELEM);
}
- Assert(strlen(methods->extnodename) <= EXTNODENAME_MAX_LEN);
+ if (strlen(methods->extnodename) >= EXTNODENAME_MAX_LEN)
+ elog(ERROR, "extensible node name is too long");
entry = (ExtensibleNodeEntry *) hash_search(extensible_node_methods,
methods->extnodename,