|
|
|
|
@ -21,7 +21,7 @@ |
|
|
|
|
* |
|
|
|
|
* |
|
|
|
|
* IDENTIFICATION |
|
|
|
|
* $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.61 1998/01/29 02:26:25 scrappy Exp $ |
|
|
|
|
* $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.62 1998/01/30 15:03:35 scrappy Exp $ |
|
|
|
|
* |
|
|
|
|
* Modifications - 6/10/96 - dave@bensoft.com - version 1.13.dhb |
|
|
|
|
* |
|
|
|
|
@ -2481,11 +2481,26 @@ dumpTables(FILE *fout, TableInfo *tblinfo, int numTables, |
|
|
|
|
|
|
|
|
|
if (acls) { |
|
|
|
|
ACLlist = ParseACL(tblinfo[i].relacl, &l); |
|
|
|
|
if (ACLlist == (ACL *)NULL) |
|
|
|
|
if (l == 0) |
|
|
|
|
continue; |
|
|
|
|
else { |
|
|
|
|
fprintf(stderr,"Could not parse ACL list for %s...Exiting!\n", |
|
|
|
|
tblinfo[i].relname); |
|
|
|
|
exit_nicely(g_conn); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/* Revoke Default permissions for PUBLIC */ |
|
|
|
|
fprintf(fout, |
|
|
|
|
"REVOKE ALL on %s from PUBLIC;\n", |
|
|
|
|
tblinfo[i].relname); |
|
|
|
|
|
|
|
|
|
for(k = 0; k < l; k++) { |
|
|
|
|
fprintf(fout, |
|
|
|
|
"GRANT %s on %s to %s;\n", |
|
|
|
|
ACLlist[k].privledges, tblinfo[i].relname, |
|
|
|
|
ACLlist[k].user); |
|
|
|
|
if (ACLlist[k].privledges != (char *)NULL) |
|
|
|
|
fprintf(fout, |
|
|
|
|
"GRANT %s on %s to %s;\n", |
|
|
|
|
ACLlist[k].privledges, tblinfo[i].relname, |
|
|
|
|
ACLlist[k].user); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
|