diff --git a/src/backend/libpq/hba.c b/src/backend/libpq/hba.c index ed4b2d5530cedb140e866712e4ce8014b0c88cdc..2988ade443004e8f0736a620b6ad8d58a854af5e 100644 --- a/src/backend/libpq/hba.c +++ b/src/backend/libpq/hba.c @@ -10,7 +10,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/libpq/hba.c,v 1.97 2003/04/12 22:28:33 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/libpq/hba.c,v 1.98 2003/04/13 04:07:17 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -69,16 +69,11 @@ static List *tokenize_file(FILE *file); static char *tokenize_inc_file(const char *inc_filename); /* - * Some standard C libraries, including GNU, have an isblank() function. - * Others, including Solaris, do not. So we have our own. Watch out for - * macro-ized versions, too. + * isblank() exists in the ISO C99 spec, but it's not very portable yet, + * so provide our own version. */ -#ifdef isblank -#undef isblank -#endif - static bool -isblank(const char c) +pg_isblank(const char c) { return c == ' ' || c == '\t' || c == '\r'; } @@ -104,7 +99,7 @@ next_token(FILE *fp, char *buf, const int bufsz) bool was_quote = false; /* Move over initial whitespace and commas */ - while ((c = getc(fp)) != EOF && (isblank(c) || c == ',')) + while ((c = getc(fp)) != EOF && (pg_isblank(c) || c == ',')) ; if (c != EOF && c != '\n') @@ -114,7 +109,7 @@ next_token(FILE *fp, char *buf, const int bufsz) * unquoted comma, or unquoted whitespace. */ while (c != EOF && c != '\n' && - (!isblank(c) || in_quote == true)) + (!pg_isblank(c) || in_quote == true)) { /* skip comments to EOL */ if (c == '#' && !in_quote) @@ -141,7 +136,7 @@ next_token(FILE *fp, char *buf, const int bufsz) *buf++ = c; /* We pass back the comma so the caller knows there is more */ - if ((isblank(c) || c == ',') && !in_quote) + if ((pg_isblank(c) || c == ',') && !in_quote) break; /* Literal double-quote is two double-quotes */ @@ -1050,14 +1045,14 @@ interpret_ident_response(char *ident_response, int i; /* Index into *response_type */ cursor++; /* Go over colon */ - while (isblank(*cursor)) + while (pg_isblank(*cursor)) cursor++; /* skip blanks */ i = 0; - while (*cursor != ':' && *cursor != '\r' && !isblank(*cursor) && + while (*cursor != ':' && *cursor != '\r' && !pg_isblank(*cursor) && i < (int) (sizeof(response_type) - 1)) response_type[i++] = *cursor++; response_type[i] = '\0'; - while (isblank(*cursor)) + while (pg_isblank(*cursor)) cursor++; /* skip blanks */ if (strcmp(response_type, "USERID") != 0) return false; @@ -1083,7 +1078,7 @@ interpret_ident_response(char *ident_response, int i; /* Index into *ident_user */ cursor++; /* Go over colon */ - while (isblank(*cursor)) + while (pg_isblank(*cursor)) cursor++; /* skip blanks */ /* Rest of line is user name. Copy it over. */ i = 0;