Merge branch 'v3-2-test' of git://git.samba.org/samba into v3-2-test
[ira/wip.git] / testsuite / printing / psec.c
index 9d38b9b10aed60273077bc460d2bfb1cbba5bc66..33a45e89d03d097280f04212e77398ce4f2b1118 100644 (file)
@@ -8,7 +8,7 @@
    
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
+   the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
    
    This program is distributed in the hope that it will be useful,
@@ -17,8 +17,7 @@
    GNU General Public License for more details.
    
    You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
 
 /* This program can get or set NT printer security permissions from the 
@@ -195,8 +194,11 @@ int psec_getsec(char *printer)
        if (tdb_prs_fetch(tdb, keystr, &ps, mem_ctx) != 0) {
                printf("error fetching descriptor for printer %s\n",
                       printer);
-               result = 1;
-               goto done;
+               /* cannot do a prs_mem_free() when tdb_prs_fetch fails */
+               /* as the prs structure has not been initialized */
+               tdb_close(tdb);
+               talloc_destroy(mem_ctx);
+               return 1;
        }
 
        /* Unpack into security descriptor buffer */