aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>1998-09-20 03:18:43 +0000
committerBruce Momjian <bruce@momjian.us>1998-09-20 03:18:43 +0000
commit3ac9688ae80ec6bcbb9bdafa8ef30eadc8c6dd6e (patch)
treec621f94a9ababac8773d1940cde7ddd8312d3de1 /src
parent087eb4cd1a1faba95699b642883ba588bf709157 (diff)
downloadpostgresql-3ac9688ae80ec6bcbb9bdafa8ef30eadc8c6dd6e.tar.gz
postgresql-3ac9688ae80ec6bcbb9bdafa8ef30eadc8c6dd6e.zip
I also noticed that pg_dump contains a copy of the same
prompt_for_password code that psql does. We fixed psql a month or two back to permit usernames and passwords longer than 8 characters. I propagated the same fix into pg_dump. Tom Lane
Diffstat (limited to 'src')
-rw-r--r--src/bin/pg_dump/common.c22
-rw-r--r--src/bin/pg_dump/pg_dump.c23
2 files changed, 33 insertions, 12 deletions
diff --git a/src/bin/pg_dump/common.c b/src/bin/pg_dump/common.c
index 62ba98793c1..c9a806f10a6 100644
--- a/src/bin/pg_dump/common.c
+++ b/src/bin/pg_dump/common.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/bin/pg_dump/common.c,v 1.24 1998/09/01 04:33:43 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/bin/pg_dump/common.c,v 1.25 1998/09/20 03:18:42 momjian Exp $
*
* Modifications - 6/12/96 - dave@bensoft.com - version 1.13.dhb.2
*
@@ -116,7 +116,8 @@ findParentsByOid(TableInfo *tblinfo, int numTables,
{
int i,
j;
- int parentInd;
+ int parentInd,
+ selfInd;
char **result;
int numParents;
@@ -139,6 +140,16 @@ findParentsByOid(TableInfo *tblinfo, int numTables,
{
parentInd = findTableByOid(tblinfo, numTables,
inhinfo[i].inhparent);
+ if (parentInd < 0)
+ {
+ selfInd = findTableByOid(tblinfo, numTables, oid);
+ fprintf(stderr,
+ "failed sanity check, parent oid %s of table %s (oid %s) was not found\n",
+ inhinfo[i].inhparent,
+ (selfInd >= 0) ? tblinfo[selfInd].relname : "",
+ oid);
+ exit(2);
+ }
result[j++] = tblinfo[parentInd].relname;
}
}
@@ -387,6 +398,13 @@ flagInhAttrs(TableInfo *tblinfo, int numTables,
{
parentInd = findTableByName(tblinfo, numTables,
tblinfo[i].parentRels[k]);
+ if (parentInd < 0)
+ {
+ /* shouldn't happen unless findParentsByOid is broken */
+ fprintf(stderr, "failed sanity check, table %s not found by flagInhAttrs\n",
+ tblinfo[i].parentRels[k]);
+ exit(2);
+ }
for (j = 0; j < tblinfo[i].numatts; j++)
{
if (strInArray(tblinfo[i].attnames[j],
diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c
index 746f2af2166..24f8c4e36ed 100644
--- a/src/bin/pg_dump/pg_dump.c
+++ b/src/bin/pg_dump/pg_dump.c
@@ -21,7 +21,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.84 1998/09/03 02:10:36 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.85 1998/09/20 03:18:43 momjian Exp $
*
* Modifications - 6/10/96 - dave@bensoft.com - version 1.13.dhb
*
@@ -472,6 +472,7 @@ dumpClasses(const TableInfo *tblinfo, const int numTables, FILE *fout,
static void
prompt_for_password(char *username, char *password)
{
+ char buf[512];
int length;
#ifdef HAVE_TERMIOS_H
@@ -481,13 +482,11 @@ prompt_for_password(char *username, char *password)
#endif
printf("Username: ");
- fgets(username, 9, stdin);
+ fgets(username, 100, stdin);
length = strlen(username);
/* skip rest of the line */
if (length > 0 && username[length - 1] != '\n')
{
- static char buf[512];
-
do
{
fgets(buf, 512, stdin);
@@ -503,7 +502,7 @@ prompt_for_password(char *username, char *password)
t.c_lflag &= ~ECHO;
tcsetattr(0, TCSADRAIN, &t);
#endif
- fgets(password, 9, stdin);
+ fgets(password, 100, stdin);
#ifdef HAVE_TERMIOS_H
tcsetattr(0, TCSADRAIN, &t_orig);
#endif
@@ -512,8 +511,6 @@ prompt_for_password(char *username, char *password)
/* skip rest of the line */
if (length > 0 && password[length - 1] != '\n')
{
- static char buf[512];
-
do
{
fgets(buf, 512, stdin);
@@ -541,8 +538,8 @@ main(int argc, char **argv)
int numTables;
char connect_string[512] = "";
char tmp_string[128];
- char username[64];
- char password[64];
+ char username[100];
+ char password[100];
int use_password = 0;
g_verbose = false;
@@ -2584,7 +2581,13 @@ dumpIndices(FILE *fout, IndInfo *indinfo, int numIndices,
for (i = 0; i < numIndices; i++)
{
tableInd = findTableByName(tblinfo, numTables,
- (indinfo[i].indrelname));
+ indinfo[i].indrelname);
+ if (tableInd < 0)
+ {
+ fprintf(stderr, "failed sanity check, table %s was not found\n",
+ indinfo[i].indrelname);
+ exit(2);
+ }
if (strcmp(indinfo[i].indproc, "0") == 0)
funcname = NULL;