summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHerb Lewis <herb@samba.org>2004-01-14 23:00:06 +0000
committerHerb Lewis <herb@samba.org>2004-01-14 23:00:06 +0000
commita68e3446d0140be9f1b0b538986ee2c6a7c7c2cc (patch)
treef6e08e4f04ab4e6e2544951e4620b0044f4a42c2
parent742fbfcaba5c0ffe53ece547982b361f7c9d7b8a (diff)
downloadsamba-a68e3446d0140be9f1b0b538986ee2c6a7c7c2cc.tar.gz
samba-a68e3446d0140be9f1b0b538986ee2c6a7c7c2cc.tar.bz2
samba-a68e3446d0140be9f1b0b538986ee2c6a7c7c2cc.zip
source/rpc_parse/parse_prs.c ZERO_STRUCTP(ps) not needed as it is done
in prs_init now testsuite/printing/psec.c cannot do a prs_mem_free() when tdb_prs_fetch fails as the prs structure has not been initialized (This used to be commit 6289d7b842819fb31bec93119f15b3823e02b49e)
-rw-r--r--source3/rpc_parse/parse_prs.c1
-rw-r--r--testsuite/printing/psec.c7
2 files changed, 5 insertions, 3 deletions
diff --git a/source3/rpc_parse/parse_prs.c b/source3/rpc_parse/parse_prs.c
index 58652fa0c5..0e5a25fe8c 100644
--- a/source3/rpc_parse/parse_prs.c
+++ b/source3/rpc_parse/parse_prs.c
@@ -1307,7 +1307,6 @@ int tdb_prs_fetch(TDB_CONTEXT *tdb, char *keystr, prs_struct *ps, TALLOC_CTX *me
if (!dbuf.dptr)
return -1;
- ZERO_STRUCTP(ps);
prs_init(ps, 0, mem_ctx, UNMARSHALL);
prs_give_memory(ps, dbuf.dptr, dbuf.dsize, True);
diff --git a/testsuite/printing/psec.c b/testsuite/printing/psec.c
index 9d38b9b10a..7ba40b18a3 100644
--- a/testsuite/printing/psec.c
+++ b/testsuite/printing/psec.c
@@ -195,8 +195,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 */