mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-01-12 18:34:36 +08:00
Second try at avoiding conflicts with system isblank().
This commit is contained in:
parent
ff5456feae
commit
3fd5faed5b
@ -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;
|
||||
|
Loading…
Reference in New Issue
Block a user