Fix incorrect tracking of session authorization in the presence of ACLs
that contain rights granted by non-owners. Per bug report from Nishad Prakash.
This commit is contained in:
parent
8459b2d472
commit
465edca3ec
@ -15,7 +15,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_archiver.c,v 1.88 2004/07/13 03:00:17 momjian Exp $
|
||||
* $PostgreSQL: pgsql/src/bin/pg_dump/pg_backup_archiver.c,v 1.89 2004/07/19 21:02:17 tgl Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -2391,6 +2391,17 @@ _printTocEntry(ArchiveHandle *AH, TocEntry *te, RestoreOptions *ropt, bool isDat
|
||||
_printTocHeader(AH, te, ropt, isData);
|
||||
}
|
||||
|
||||
/*
|
||||
* If it's an ACL entry, it might contain SET SESSION AUTHORIZATION
|
||||
* commands, so we can no longer assume we know the current auth setting.
|
||||
*/
|
||||
if (strncmp(te->desc, "ACL", 3) == 0)
|
||||
{
|
||||
if (AH->currUser)
|
||||
free(AH->currUser);
|
||||
AH->currUser = NULL;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user