diff --git a/src/backend/libpq/hba.c b/src/backend/libpq/hba.c index 1a65ec87bd2..0129dd24d05 100644 --- a/src/backend/libpq/hba.c +++ b/src/backend/libpq/hba.c @@ -2218,10 +2218,12 @@ load_hba(void) /* * This macro specifies the maximum number of authentication options * that are possible with any given authentication method that is supported. - * Currently LDAP supports 10, so the macro value is well above the most any - * method needs. + * Currently LDAP supports 11, and there are 3 that are not dependent on + * the auth method here. It may not actually be possible to set all of them + * at the same time, but we'll set the macro value high enough to be + * conservative and avoid warnings from static analysis tools. */ -#define MAX_HBA_OPTIONS 12 +#define MAX_HBA_OPTIONS 14 /* * Create a text array listing the options specified in the HBA line. @@ -2327,6 +2329,7 @@ gethba_options(HbaLine *hba) CStringGetTextDatum(psprintf("radiusports=%s", hba->radiusports_s)); } + /* If you add more options, consider increasing MAX_HBA_OPTIONS. */ Assert(noptions <= MAX_HBA_OPTIONS); if (noptions > 0)