From 58c326809a816703dc516c3022c9c4dbb9d09445 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Fri, 3 Dec 2004 06:24:38 +0000 Subject: r4052: fixed a bunch of code to use the type safe _p allocation macros (This used to be commit 80d15fa3402a9d1183467463f6b21c0b674bc442) --- source4/rpc_server/dcerpc_server.c | 4 ++-- source4/rpc_server/spoolss/dcesrv_spoolss.c | 6 +++--- source4/rpc_server/srvsvc/dcesrv_srvsvc.c | 20 +++++++++++++++----- 3 files changed, 20 insertions(+), 10 deletions(-) (limited to 'source4/rpc_server') diff --git a/source4/rpc_server/dcerpc_server.c b/source4/rpc_server/dcerpc_server.c index 3d34a7e1c0..d11d5dddd8 100644 --- a/source4/rpc_server/dcerpc_server.c +++ b/source4/rpc_server/dcerpc_server.c @@ -1086,7 +1086,7 @@ static void dcesrv_exit(struct server_service *service, const char *reason) /* the list of currently registered DCERPC endpoint servers. */ -static struct { +static struct ep_server { struct dcesrv_endpoint_server *ep_server; } *ep_servers = NULL; static int num_ep_servers; @@ -1110,7 +1110,7 @@ NTSTATUS dcerpc_register_ep_server(const void *_ep_server) return NT_STATUS_OBJECT_NAME_COLLISION; } - ep_servers = Realloc(ep_servers, sizeof(ep_servers[0]) * (num_ep_servers+1)); + ep_servers = realloc_p(ep_servers, struct ep_server, num_ep_servers+1); if (!ep_servers) { smb_panic("out of memory in dcerpc_register"); } diff --git a/source4/rpc_server/spoolss/dcesrv_spoolss.c b/source4/rpc_server/spoolss/dcesrv_spoolss.c index 028471a715..17c23dcba8 100644 --- a/source4/rpc_server/spoolss/dcesrv_spoolss.c +++ b/source4/rpc_server/spoolss/dcesrv_spoolss.c @@ -33,7 +33,7 @@ static WERROR spoolss_EnumPrinters1(TALLOC_CTX *mem_ctx, struct spoolss_PrinterInfo1 *info; int i; - info = talloc(mem_ctx, num_msgs * sizeof(struct spoolss_PrinterInfo1)); + info = talloc_array_p(mem_ctx, struct spoolss_PrinterInfo1, num_msgs); if (!info) return WERR_NOMEM; @@ -59,7 +59,7 @@ static WERROR spoolss_EnumPrinters2(TALLOC_CTX *mem_ctx, struct spoolss_PrinterInfo2 *info; int i; - info = talloc(mem_ctx, num_msgs * sizeof(struct spoolss_PrinterInfo1)); + info = talloc_array_p(mem_ctx, struct spoolss_PrinterInfo2, num_msgs); if (!info) return WERR_NOMEM; @@ -102,7 +102,7 @@ static WERROR spoolss_EnumPrinters5(TALLOC_CTX *mem_ctx, struct spoolss_PrinterInfo5 *info; int i; - info = talloc(mem_ctx, num_msgs * sizeof(struct spoolss_PrinterInfo1)); + info = talloc_array_p(mem_ctx, struct spoolss_PrinterInfo5, num_msgs); if (!info) return WERR_NOMEM; diff --git a/source4/rpc_server/srvsvc/dcesrv_srvsvc.c b/source4/rpc_server/srvsvc/dcesrv_srvsvc.c index d5ecd84f1a..0679ac6e42 100644 --- a/source4/rpc_server/srvsvc/dcesrv_srvsvc.c +++ b/source4/rpc_server/srvsvc/dcesrv_srvsvc.c @@ -904,7 +904,9 @@ static WERROR srvsvc_NetShareEnum(struct dcesrv_call_state *dce_call, TALLOC_CTX if (r->out.ctr.ctr0->count == 0) break; - r->out.ctr.ctr0->array = talloc(mem_ctx, r->out.ctr.ctr0->count*sizeof(struct srvsvc_NetShareInfo0)); + r->out.ctr.ctr0->array = talloc_array_p(mem_ctx, + struct srvsvc_NetShareInfo0, + r->out.ctr.ctr0->count); WERR_TALLOC_CHECK(r->out.ctr.ctr0->array); for (i=0;iout.ctr.ctr0->count;i++) { @@ -926,7 +928,9 @@ static WERROR srvsvc_NetShareEnum(struct dcesrv_call_state *dce_call, TALLOC_CTX if (r->out.ctr.ctr1->count == 0) break; - r->out.ctr.ctr1->array = talloc(mem_ctx, r->out.ctr.ctr1->count*sizeof(struct srvsvc_NetShareInfo1)); + r->out.ctr.ctr1->array = talloc_array_p(mem_ctx, + struct srvsvc_NetShareInfo1, + r->out.ctr.ctr1->count); WERR_TALLOC_CHECK(r->out.ctr.ctr1->array); for (i=0;iout.ctr.ctr1->count;i++) { @@ -949,7 +953,9 @@ static WERROR srvsvc_NetShareEnum(struct dcesrv_call_state *dce_call, TALLOC_CTX if (r->out.ctr.ctr2->count == 0) break; - r->out.ctr.ctr2->array = talloc(mem_ctx, r->out.ctr.ctr2->count*sizeof(struct srvsvc_NetShareInfo2)); + r->out.ctr.ctr2->array = talloc_array_p(mem_ctx, + struct srvsvc_NetShareInfo2, + r->out.ctr.ctr2->count); WERR_TALLOC_CHECK(r->out.ctr.ctr2->array); for (i=0;iout.ctr.ctr2->count;i++) { @@ -977,7 +983,9 @@ static WERROR srvsvc_NetShareEnum(struct dcesrv_call_state *dce_call, TALLOC_CTX if (r->out.ctr.ctr501->count == 0) break; - r->out.ctr.ctr501->array = talloc(mem_ctx, r->out.ctr.ctr501->count*sizeof(struct srvsvc_NetShareInfo501)); + r->out.ctr.ctr501->array = talloc_array_p(mem_ctx, + struct srvsvc_NetShareInfo501, + r->out.ctr.ctr501->count); WERR_TALLOC_CHECK(r->out.ctr.ctr501->array); for (i=0;iout.ctr.ctr501->count;i++) { @@ -1001,7 +1009,9 @@ static WERROR srvsvc_NetShareEnum(struct dcesrv_call_state *dce_call, TALLOC_CTX if (r->out.ctr.ctr502->count == 0) break; - r->out.ctr.ctr502->array = talloc(mem_ctx, r->out.ctr.ctr502->count*sizeof(struct srvsvc_NetShareInfo502)); + r->out.ctr.ctr502->array = talloc_array_p(mem_ctx, + struct srvsvc_NetShareInfo502, + r->out.ctr.ctr502->count); WERR_TALLOC_CHECK(r->out.ctr.ctr502->array); for (i=0;iout.ctr.ctr502->count;i++) { -- cgit