summaryrefslogtreecommitdiff
path: root/source3/include
diff options
context:
space:
mode:
authorJim McDonough <jmcd@samba.org>2002-05-31 17:02:09 +0000
committerJim McDonough <jmcd@samba.org>2002-05-31 17:02:09 +0000
commite422b271da0c07f5c5cfd41df01bb2910d484abc (patch)
tree8f856496c72439f343b2469e836fe91fbf99d6c5 /source3/include
parent8787088f2e45f84706f543562c79e0794a2e75ca (diff)
downloadsamba-e422b271da0c07f5c5cfd41df01bb2910d484abc.tar.gz
samba-e422b271da0c07f5c5cfd41df01bb2910d484abc.tar.bz2
samba-e422b271da0c07f5c5cfd41df01bb2910d484abc.zip
Update netfileenum on both client and server sides to do an arbitrary number
of files. This was done to better enable net rpc file. Perhaps we can start giving back real info this way, too. (This used to be commit b3fea72ee9abd2441a49c35442c54819e4ba16ba)
Diffstat (limited to 'source3/include')
-rw-r--r--source3/include/rpc_srvsvc.h30
1 files changed, 12 insertions, 18 deletions
diff --git a/source3/include/rpc_srvsvc.h b/source3/include/rpc_srvsvc.h
index 1aa9abe043..611a5e1d4b 100644
--- a/source3/include/rpc_srvsvc.h
+++ b/source3/include/rpc_srvsvc.h
@@ -583,20 +583,11 @@ typedef struct str_file_info3_info
} FILE_INFO_3_STR;
-/* oops - this is going to take up a *massive* amount of stack. */
-/* the UNISTR2s already have 1024 uint16 chars in them... */
-#define MAX_FILE_ENTRIES 32
-
/* SRV_FILE_INFO_3 */
typedef struct srv_file_info_3
{
- uint32 num_entries_read; /* EntriesRead */
- uint32 ptr_file_info; /* Buffer */
-
- uint32 num_entries_read2; /* EntriesRead */
-
- FILE_INFO_3 info_3 [MAX_FILE_ENTRIES]; /* file entry details */
- FILE_INFO_3_STR info_3_str[MAX_FILE_ENTRIES]; /* file entry strings */
+ FILE_INFO_3 info_3; /* file entry details */
+ FILE_INFO_3_STR info_3_str; /* file entry strings */
} SRV_FILE_INFO_3;
@@ -604,12 +595,15 @@ typedef struct srv_file_info_3
typedef struct srv_file_info_3_info
{
uint32 switch_value; /* switch value */
- uint32 ptr_file_ctr; /* pointer to file info union */
- union
- {
- SRV_FILE_INFO_3 info3; /* file info with 0 entries */
+ uint32 ptr_file_info; /* pointer to file info union */
- } file;
+ uint32 num_entries;
+ uint32 ptr_entries;
+ uint32 num_entries2;
+ union
+ {
+ SRV_FILE_INFO_3 *info3;
+ } file;
} SRV_FILE_INFO_CTR;
@@ -628,7 +622,7 @@ typedef struct q_net_file_enum_info
uint32 file_level; /* file level */
- SRV_FILE_INFO_CTR *ctr;
+ SRV_FILE_INFO_CTR ctr;
uint32 preferred_len; /* preferred maximum length (0xffff ffff) */
ENUM_HND enum_hnd;
@@ -641,7 +635,7 @@ typedef struct r_net_file_enum_info
{
uint32 file_level; /* file level */
- SRV_FILE_INFO_CTR *ctr;
+ SRV_FILE_INFO_CTR ctr;
uint32 total_entries; /* total number of files */
ENUM_HND enum_hnd;