summaryrefslogtreecommitdiffstats
path: root/source/rpc_parse/parse_dfs.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/rpc_parse/parse_dfs.c')
-rw-r--r--source/rpc_parse/parse_dfs.c80
1 files changed, 56 insertions, 24 deletions
diff --git a/source/rpc_parse/parse_dfs.c b/source/rpc_parse/parse_dfs.c
index 118429e7d2f..88d6135a838 100644
--- a/source/rpc_parse/parse_dfs.c
+++ b/source/rpc_parse/parse_dfs.c
@@ -325,9 +325,13 @@ BOOL netdfs_io_dfs_Info3_d(const char *desc, NETDFS_DFS_INFO3 *v, prs_struct *ps
return False;
if (UNMARSHALLING(ps)) {
- v->stores = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->stores)*v->num_stores);
- if (!v->stores) {
- return False;
+ if (v->num_stores) {
+ v->stores = PRS_ALLOC_MEM(ps,NETDFS_DFS_STORAGEINFO,v->num_stores);
+ if (!v->stores) {
+ return False;
+ }
+ } else {
+ v->stores = NULL;
}
}
for (i_stores_1=0; i_stores_1<v->num_stores;i_stores_1++) {
@@ -450,9 +454,13 @@ BOOL netdfs_io_dfs_Info4_d(const char *desc, NETDFS_DFS_INFO4 *v, prs_struct *ps
return False;
if (UNMARSHALLING(ps)) {
- v->stores = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->stores)*v->num_stores);
- if (!v->stores) {
- return False;
+ if (v->num_stores) {
+ v->stores = PRS_ALLOC_MEM(ps,NETDFS_DFS_STORAGEINFO,v->num_stores);
+ if (!v->stores) {
+ return False;
+ }
+ } else {
+ v->stores = NULL;
}
}
for (i_stores_1=0; i_stores_1<v->num_stores;i_stores_1++) {
@@ -926,9 +934,13 @@ BOOL netdfs_io_dfs_EnumArray1_d(const char *desc, NETDFS_DFS_ENUMARRAY1 *v, prs_
return False;
if (UNMARSHALLING(ps)) {
- v->s = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->s)*v->count);
- if (!v->s) {
- return False;
+ if (v->count) {
+ v->s = PRS_ALLOC_MEM(ps,NETDFS_DFS_INFO1,v->count);
+ if (!v->s) {
+ return False;
+ }
+ } else {
+ v->s = NULL;
}
}
for (i_s_1=0; i_s_1<v->count;i_s_1++) {
@@ -995,9 +1007,13 @@ BOOL netdfs_io_dfs_EnumArray2_d(const char *desc, NETDFS_DFS_ENUMARRAY2 *v, prs_
return False;
if (UNMARSHALLING(ps)) {
- v->s = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->s)*v->count);
- if (!v->s) {
- return False;
+ if (v->count) {
+ v->s = PRS_ALLOC_MEM(ps,NETDFS_DFS_INFO2,v->count);
+ if (!v->s) {
+ return False;
+ }
+ } else {
+ v->s = NULL;
}
}
for (i_s_1=0; i_s_1<v->count;i_s_1++) {
@@ -1064,9 +1080,13 @@ BOOL netdfs_io_dfs_EnumArray3_d(const char *desc, NETDFS_DFS_ENUMARRAY3 *v, prs_
return False;
if (UNMARSHALLING(ps)) {
- v->s = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->s)*v->count);
- if (!v->s) {
- return False;
+ if (v->count) {
+ v->s = PRS_ALLOC_MEM(ps,NETDFS_DFS_INFO3,v->count);
+ if (!v->s) {
+ return False;
+ }
+ } else {
+ v->s = NULL;
}
}
for (i_s_1=0; i_s_1<v->count;i_s_1++) {
@@ -1133,9 +1153,13 @@ BOOL netdfs_io_dfs_EnumArray4_d(const char *desc, NETDFS_DFS_ENUMARRAY4 *v, prs_
return False;
if (UNMARSHALLING(ps)) {
- v->s = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->s)*v->count);
- if (!v->s) {
- return False;
+ if (v->count) {
+ v->s = PRS_ALLOC_MEM(ps,NETDFS_DFS_INFO4,v->count);
+ if (!v->s) {
+ return False;
+ }
+ } else {
+ v->s = NULL;
}
}
for (i_s_1=0; i_s_1<v->count;i_s_1++) {
@@ -1202,9 +1226,13 @@ BOOL netdfs_io_dfs_EnumArray200_d(const char *desc, NETDFS_DFS_ENUMARRAY200 *v,
return False;
if (UNMARSHALLING(ps)) {
- v->s = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->s)*v->count);
- if (!v->s) {
- return False;
+ if (v->count) {
+ v->s = PRS_ALLOC_MEM(ps,NETDFS_DFS_INFO200,v->count);
+ if (!v->s) {
+ return False;
+ }
+ } else {
+ v->s = NULL;
}
}
for (i_s_1=0; i_s_1<v->count;i_s_1++) {
@@ -1271,9 +1299,13 @@ BOOL netdfs_io_dfs_EnumArray300_d(const char *desc, NETDFS_DFS_ENUMARRAY300 *v,
return False;
if (UNMARSHALLING(ps)) {
- v->s = (void *)PRS_ALLOC_MEM_VOID(ps,sizeof(*v->s)*v->count);
- if (!v->s) {
- return False;
+ if (v->count) {
+ v->s = PRS_ALLOC_MEM(ps,NETDFS_DFS_INFO300,v->count);
+ if (!v->s) {
+ return False;
+ }
+ } else {
+ v->s = NULL;
}
}
for (i_s_1=0; i_s_1<v->count;i_s_1++) {