From 3db52feb1f3b2c07ce0b06ad4a7099fa6efe3fc7 Mon Sep 17 00:00:00 2001 From: Andrew Tridgell Date: Mon, 13 Dec 1999 13:27:58 +0000 Subject: first pass at updating head branch to be to be the same as the SAMBA_2_0 branch (This used to be commit 453a822a76780063dff23526c35408866d0c0154) --- source3/include/rpc_srvsvc.h | 193 ++++++++++++++----------------------------- 1 file changed, 64 insertions(+), 129 deletions(-) (limited to 'source3/include/rpc_srvsvc.h') diff --git a/source3/include/rpc_srvsvc.h b/source3/include/rpc_srvsvc.h index 25be11d199..78949a7a7d 100644 --- a/source3/include/rpc_srvsvc.h +++ b/source3/include/rpc_srvsvc.h @@ -26,14 +26,14 @@ /* srvsvc pipe */ -#define SRV_NETCONNENUM 0x08 -#define SRV_NETFILEENUM 0x09 -#define SRV_NETSESSENUM 0x0c -#define SRV_NETSHAREENUM 0x0f -#define SRV_NETTRANSPORTENUM 0x1a -#define SRV_NET_SRV_GET_INFO 0x15 -#define SRV_NET_SRV_SET_INFO 0x16 -#define SRV_NET_REMOTE_TOD 0x1c +#define SRV_NETCONNENUM 0x08 +#define SRV_NETFILEENUM 0x09 +#define SRV_NETSESSENUM 0x0c +#define SRV_NETSHAREENUM 0x0f +#define SRV_NET_SHARE_GET_INFO 0x10 +#define SRV_NET_SRV_GET_INFO 0x15 +#define SRV_NET_SRV_SET_INFO 0x16 +#define SRV_NET_REMOTE_TOD 0x1c /* SESS_INFO_0 (pointers to level 0 session info strings) */ typedef struct ptr_sess_info0 @@ -104,11 +104,11 @@ typedef struct srv_sess_info_ctr_info uint32 switch_value; /* switch value */ uint32 ptr_sess_ctr; /* pointer to sess info union */ union - { + { SRV_SESS_INFO_0 info0; /* session info level 0 */ SRV_SESS_INFO_1 info1; /* session info level 1 */ - } sess; + } sess; } SRV_SESS_INFO_CTR; @@ -122,9 +122,6 @@ typedef struct q_net_sess_enum_info uint32 ptr_qual_name; /* pointer (to qualifier name) */ UNISTR2 uni_qual_name; /* qualifier name "\\qualifier" */ - uint32 ptr_user_name; /* pointer (to user name) */ - UNISTR2 uni_user_name; /* user name */ - uint32 sess_level; /* session level */ SRV_SESS_INFO_CTR *ctr; @@ -210,11 +207,11 @@ typedef struct srv_conn_info_ctr_info uint32 switch_value; /* switch value */ uint32 ptr_conn_ctr; /* pointer to conn info union */ union - { + { SRV_CONN_INFO_0 info0; /* connection info level 0 */ SRV_CONN_INFO_1 info1; /* connection info level 1 */ - } conn; + } conn; } SRV_CONN_INFO_CTR; @@ -251,89 +248,6 @@ typedef struct r_net_conn_enum_info } SRV_R_NET_CONN_ENUM; -/* oops - this is going to take up a *massive* amount of stack. */ -/* the UNISTR2s already have 1024 uint16 chars in them... */ -#define MAX_TPRT_ENTRIES 32 - -/* TPRT_INFO_0 (pointers to level 0 transport info strings) */ -typedef struct ptr_tprt_info0 -{ - uint32 num_vcs; /* number of clients using transport */ - uint32 ptr_trans_name; /* pointer to transport name. */ - uint32 ptr_trans_addr; /* pointer to transport address */ - uint32 trans_addr_len; /* length of transport address */ - uint32 ptr_addr_name; /* pointer to network address name. */ - -} TPRT_INFO_0; - -/* TPRT_INFO_0_STR (level 0 transport info strings) */ -typedef struct str_tprt_info0 -{ - UNISTR2 uni_trans_name; /* unicode string of transport */ - BUFFER4 buf_trans_addr; /* buffer for transport address */ - UNISTR2 uni_addr_name; /* unicode string of network address */ - -} TPRT_INFO_0_STR; - -/* SRV_TPRT_INFO_0 */ -typedef struct srv_tprt_info_0_info -{ - uint32 num_entries_read; /* EntriesRead */ - uint32 ptr_tprt_info; /* Buffer */ - uint32 num_entries_read2; /* EntriesRead */ - - TPRT_INFO_0 *info_0; /* transport entry pointers */ - TPRT_INFO_0_STR *info_0_str; /* transport entry strings */ - -} SRV_TPRT_INFO_0; - -/* SRV_TPRT_INFO_CTR */ -typedef struct srv_tprt_info_ctr_info -{ - uint32 switch_value; /* switch value */ - uint32 ptr_tprt_ctr; /* pointer to tprt info union */ - union - { - SRV_TPRT_INFO_0 info0; /* transport info level 0 */ - - } tprt; - -} SRV_TPRT_INFO_CTR; - - -/* SRV_Q_NET_TPRT_ENUM */ -typedef struct q_net_tprt_enum_info -{ - uint32 ptr_srv_name; /* pointer (to server name) */ - UNISTR2 uni_srv_name; /* server name "\\server" */ - - uint32 tprt_level; /* transport level */ - - SRV_TPRT_INFO_CTR *ctr; - - uint32 preferred_len; /* preferred maximum length (0xffff ffff) */ - ENUM_HND enum_hnd; - -} SRV_Q_NET_TPRT_ENUM; - -/* SRV_R_NET_TPRT_ENUM */ -typedef struct r_net_tprt_enum_info -{ - uint32 tprt_level; /* share level */ - - SRV_TPRT_INFO_CTR *ctr; - - uint32 total_entries; /* total number of entries */ - ENUM_HND enum_hnd; - - uint32 status; /* return status */ - -} SRV_R_NET_TPRT_ENUM; - -/* oops - this is going to take up a *massive* amount of stack. */ -/* the UNISTR2s already have 1024 uint16 chars in them... */ -#define MAX_SHARE_ENTRIES 128 - /* SH_INFO_1 (pointers to level 1 share info strings) */ typedef struct ptr_share_info1 { @@ -354,12 +268,8 @@ typedef struct str_share_info1 /* SRV_SHARE_INFO_1 */ typedef struct share_info_1_info { - uint32 num_entries_read; /* EntriesRead */ - uint32 ptr_share_info; /* Buffer */ - uint32 num_entries_read2; /* EntriesRead */ - - SH_INFO_1 info_1 [MAX_SHARE_ENTRIES]; /* share entry pointers */ - SH_INFO_1_STR info_1_str[MAX_SHARE_ENTRIES]; /* share entry strings */ + SH_INFO_1 info_1; + SH_INFO_1_STR info_1_str; } SRV_SHARE_INFO_1; @@ -390,24 +300,26 @@ typedef struct str_share_info2 /* SRV_SHARE_INFO_2 */ typedef struct share_info_2_info { - uint32 num_entries_read; /* EntriesRead */ - uint32 ptr_share_info; /* Buffer */ - uint32 num_entries_read2; /* EntriesRead */ - - SH_INFO_2 info_2 [MAX_SHARE_ENTRIES]; /* share entry pointers */ - SH_INFO_2_STR info_2_str[MAX_SHARE_ENTRIES]; /* share entry strings */ + SH_INFO_2 info_2; + SH_INFO_2_STR info_2_str; } SRV_SHARE_INFO_2; /* SRV_SHARE_INFO_CTR */ -typedef struct srv_share_info_1_info +typedef struct srv_share_info_ctr_info { - uint32 switch_value; /* switch value */ - uint32 ptr_share_ctr; /* pointer to share info union */ - union - { - SRV_SHARE_INFO_1 info1; /* share info level 1 */ - SRV_SHARE_INFO_2 info2; /* share info level 2 */ + uint32 info_level; + uint32 switch_value; + uint32 ptr_share_info; + + uint32 num_entries; + uint32 ptr_entries; + uint32 num_entries2; + + union { + SRV_SHARE_INFO_1 *info1; /* share info level 1 */ + SRV_SHARE_INFO_2 *info2; /* share info level 2 */ + void *info; } share; @@ -419,9 +331,7 @@ typedef struct q_net_share_enum_info uint32 ptr_srv_name; /* pointer (to server name?) */ UNISTR2 uni_srv_name; /* server name */ - uint32 share_level; /* share level */ - - SRV_SHARE_INFO_CTR *ctr; /* share info container */ + SRV_SHARE_INFO_CTR ctr; /* share info container */ uint32 preferred_len; /* preferred maximum length (0xffff ffff) */ @@ -433,8 +343,7 @@ typedef struct q_net_share_enum_info /* SRV_R_NET_SHARE_ENUM */ typedef struct r_net_share_enum_info { - uint32 share_level; /* share level */ - SRV_SHARE_INFO_CTR *ctr; /* share info container */ + SRV_SHARE_INFO_CTR ctr; /* share info container */ uint32 total_entries; /* total number of entries */ ENUM_HND enum_hnd; @@ -443,6 +352,35 @@ typedef struct r_net_share_enum_info } SRV_R_NET_SHARE_ENUM; + +/* SRV_Q_NET_SHARE_GET_INFO */ +typedef struct q_net_share_get_info_info +{ + uint32 ptr_srv_name; + UNISTR2 uni_srv_name; + + UNISTR2 uni_share_name; + uint32 info_level; + +} SRV_Q_NET_SHARE_GET_INFO; + +/* SRV_R_NET_SHARE_GET_INFO */ +typedef struct r_net_share_get_info_info +{ + uint32 switch_value; + uint32 ptr_share_ctr; + + union { + SRV_SHARE_INFO_1 info1; + SRV_SHARE_INFO_2 info2; + + } share; + + uint32 status; + +} SRV_R_NET_SHARE_GET_INFO; + + /* FILE_INFO_3 (level 3 file info strings) */ typedef struct file_info3_info { @@ -485,10 +423,10 @@ 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 */ - } file; + } file; } SRV_FILE_INFO_CTR; @@ -502,8 +440,6 @@ typedef struct q_net_file_enum_info uint32 ptr_qual_name; /* pointer (to qualifier name) */ UNISTR2 uni_qual_name; /* qualifier name "\\qualifier" */ - uint32 file_id; /* file id */ - uint32 file_level; /* file level */ SRV_FILE_INFO_CTR *ctr; @@ -573,11 +509,11 @@ typedef struct srv_info_ctr_info uint32 switch_value; /* switch value */ uint32 ptr_srv_ctr; /* pointer to server info */ union - { + { SRV_INFO_102 sv102; /* server info level 102 */ SRV_INFO_101 sv101; /* server info level 101 */ - } srv; + } srv; } SRV_INFO_CTR; @@ -658,4 +594,3 @@ typedef struct r_net_remote_tod #endif /* _RPC_SRVSVC_H */ - -- cgit