Properly close token in sspi authentication
authorMagnus Hagander
Thu, 14 Jan 2016 12:06:03 +0000 (13:06 +0100)
committerMagnus Hagander
Thu, 14 Jan 2016 12:07:20 +0000 (13:07 +0100)
We can never leak more than one token, but we shouldn't do that. We
don't bother closing it in the error paths since the process will
exit shortly anyway.

Christian Ullrich

src/backend/libpq/auth.c

index 1e0277f39f04902497471b546f44f6944e96ecaa..18cffc912c0d8bf3ac9596f5e707e165887599eb 100644 (file)
@@ -1253,6 +1253,8 @@ pg_SSPI_recvauth(Port *port)
                (errmsg_internal("could not get user token: error code %lu",
                                 GetLastError())));
 
+   CloseHandle(token);
+
    if (!LookupAccountSid(NULL, tokenuser->User.Sid, accountname, &accountnamesize,
                          domainname, &domainnamesize, &accountnameuse))
        ereport(ERROR,