|
11 | 11 | * |
12 | 12 | * |
13 | 13 | * IDENTIFICATION |
14 | | - * $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.207 2001/02/11 23:12:28 tgl Exp $ |
| 14 | + * $Header: /cvsroot/pgsql/src/backend/postmaster/postmaster.c,v 1.208 2001/02/20 01:34:40 tgl Exp $ |
15 | 15 | * |
16 | 16 | * NOTES |
17 | 17 | * |
@@ -1123,6 +1123,14 @@ readStartupPacket(void *arg, PacketLen len, void *pkt) |
1123 | 1123 | if (port->database[0]=='\0') |
1124 | 1124 | StrNCpy(port->database,si->user,sizeof(port->database)); |
1125 | 1125 |
|
| 1126 | +/* Truncate given database and user names to length of a Postgres name. */ |
| 1127 | +/* This avoids lookup failures when overlength names are given. */ |
| 1128 | + |
| 1129 | +if ((int)sizeof(port->database) >=NAMEDATALEN) |
| 1130 | +port->database[NAMEDATALEN-1]='\0'; |
| 1131 | +if ((int)sizeof(port->user) >=NAMEDATALEN) |
| 1132 | +port->user[NAMEDATALEN-1]='\0'; |
| 1133 | + |
1126 | 1134 | /* Check a user name was given. */ |
1127 | 1135 |
|
1128 | 1136 | if (port->user[0]=='\0') |
|