From b4fb4caf9032875fe50725c9b71b6411538ba85f Mon Sep 17 00:00:00 2001 From: Luke Leighton Date: Mon, 5 Oct 1998 15:41:41 +0000 Subject: rpcclient srvsvc commands. (This used to be commit 1a9a22c657c46648adaa98ac1fe394ce4bce11f0) --- source3/Makefile.in | 2 +- source3/include/proto.h | 8 ++++++++ source3/include/rpc_samr.h | 16 ++++++++-------- source3/libsmb/clientgen.c | 5 ++++- source3/rpcclient/rpcclient.c | 2 -- 5 files changed, 21 insertions(+), 12 deletions(-) diff --git a/source3/Makefile.in b/source3/Makefile.in index 3faa4331d4..fcfcc34b94 100644 --- a/source3/Makefile.in +++ b/source3/Makefile.in @@ -189,10 +189,10 @@ RPCCLIENT_OBJ = rpcclient/rpcclient.o \ rpcclient/cmd_lsarpc.o \ rpcclient/cmd_wkssvc.o \ rpcclient/cmd_samr.o \ + rpcclient/cmd_srvsvc.o \ $(PARAM_OBJ) $(LIBSMB_OBJ) $(UBIQX_OBJ) $(LIB_OBJ) \ $(RPC_CLIENT_OBJ) $(RPC_PARSE_OBJ) $(PASSDB_OBJ) # rpcclient/cmd_netlogon.o \ -# rpcclient/cmd_srvsvc.o SMBWRAPPER_OBJ = smbwrapper/smbw.o smbwrapper/wrapped.o \ smbwrapper/smbw_dir.o smbwrapper/smbw_stat.o \ diff --git a/source3/include/proto.h b/source3/include/proto.h index ce064a307c..19aa51a1b7 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -1864,6 +1864,14 @@ void cmd_sam_query_user(struct client_info *info); void cmd_sam_query_groups(struct client_info *info); void cmd_sam_enum_aliases(struct client_info *info); +/*The following definitions come from rpcclient/cmd_srvsvc.c */ + +void cmd_srv_query_info(struct client_info *info); +void cmd_srv_enum_conn(struct client_info *info); +void cmd_srv_enum_shares(struct client_info *info); +void cmd_srv_enum_sess(struct client_info *info); +void cmd_srv_enum_files(struct client_info *info); + /*The following definitions come from rpcclient/cmd_wkssvc.c */ void cmd_wks_query_info(struct client_info *info); diff --git a/source3/include/rpc_samr.h b/source3/include/rpc_samr.h index 2e569396b9..a314015591 100644 --- a/source3/include/rpc_samr.h +++ b/source3/include/rpc_samr.h @@ -334,13 +334,13 @@ typedef struct sam_unkown_info_2_info pointer is referring to */ - uint32 unknown_4; /* 0x0000 0099, 0x0000 0045 */ + uint32 unknown_4; /* 0x0000 0099 */ uint32 unknown_5; /* 0x0000 0000 */ uint32 unknown_6 ; /* 0x0000 0001 */ uint32 unknown_7 ; /* 0x0000 0003 */ uint32 unknown_8 ; /* 0x0000 0001 */ - uint32 unknown_9 ; /* 0x0000 0008, 0x0000 0006 */ + uint32 unknown_9 ; /* 0x0000 0008 */ uint32 unknown_10; /* 0x0000 0003 */ uint8 padding[16]; /* 16 bytes zeros */ @@ -385,7 +385,7 @@ SAMR_Q_OPEN_DOMAIN - unknown_0 values seen associated with SIDs: /* SAMR_Q_OPEN_DOMAIN */ typedef struct q_samr_open_domain_info { - POLICY_HND connect_pol; /* policy handle */ + POLICY_HND connect_pol; /* policy handle */ uint32 rid; /* 0x2000 0000; 0x0000 0211; 0x0000 0280; 0x0000 0200 - a RID? */ DOM_SID2 dom_sid; /* domain SID */ @@ -395,7 +395,7 @@ typedef struct q_samr_open_domain_info /* SAMR_R_OPEN_DOMAIN - probably an open */ typedef struct r_samr_open_domain_info { - POLICY_HND domain_pol; /* policy handle associated with the SID */ + POLICY_HND domain_pol; /* policy handle associated with the SID */ uint32 status; /* return status */ } SAMR_R_OPEN_DOMAIN; @@ -668,10 +668,10 @@ typedef struct r_samr_query_aliasinfo_info /* uint8[2] padding */ union - { + { ALIAS_INFO3 info3; - } alias; + } alias; uint32 status; @@ -681,7 +681,7 @@ typedef struct r_samr_query_aliasinfo_info /* SAMR_Q_QUERY_USERGROUPS - */ typedef struct q_samr_query_usergroup_info { - POLICY_HND pol; /* policy handle associated with unknown id */ + POLICY_HND pol; /* policy handle associated with unknown id */ } SAMR_Q_QUERY_USERGROUPS; @@ -703,7 +703,7 @@ typedef struct r_samr_query_usergroup_info /* SAMR_Q_QUERY_USERINFO - probably a get sam info */ typedef struct q_samr_query_user_info { - POLICY_HND pol; /* policy handle associated with unknown id */ + POLICY_HND pol; /* policy handle associated with unknown id */ uint16 switch_value; /* 0x0015, 0x0011 or 0x0010 - 16 bit unknown */ } SAMR_Q_QUERY_USERINFO; diff --git a/source3/libsmb/clientgen.c b/source3/libsmb/clientgen.c index e395aa3b15..2d49144695 100644 --- a/source3/libsmb/clientgen.c +++ b/source3/libsmb/clientgen.c @@ -2259,8 +2259,11 @@ void cli_shutdown(struct cli_state *cli) /**************************************************************************** return error codes for the last packet - returns 0 if there was no error and the bext approx of a unix errno + returns 0 if there was no error and the best approx of a unix errno otherwise + + for 32 bit "warnings", a return code of 0 is expected. + ****************************************************************************/ int cli_error(struct cli_state *cli, uint8 *eclass, uint32 *num) { diff --git a/source3/rpcclient/rpcclient.c b/source3/rpcclient/rpcclient.c index 394a749bc3..174cea78ad 100644 --- a/source3/rpcclient/rpcclient.c +++ b/source3/rpcclient/rpcclient.c @@ -107,13 +107,11 @@ struct {"ntlogin", cmd_netlogon_login_test, " NT Domain login test"}, #endif {"wksinfo", cmd_wks_query_info, "DCE/RPC - Workstation Query Info"}, -#if 0 {"srvinfo", cmd_srv_query_info, "DCE/RPC - Server Query Info"}, {"srvsessions",cmd_srv_enum_sess, "DCE/RPC - List sessions on a server"}, {"srvshares", cmd_srv_enum_shares, "DCE/RPC - List shares on a server"}, {"srvconnections",cmd_srv_enum_conn, "DCE/RPC - List connections on a server"}, {"srvfiles", cmd_srv_enum_files, "DCE/RPC - List files on a server"}, -#endif {"lsaquery", cmd_lsa_query_info, "Query Info Policy (domain member or server)"}, {"lookupsids", cmd_lsa_lookup_sids, "Resolve names from SIDs"}, {"enumusers", cmd_sam_enum_users, "SAM User Database Query (experimental!)"}, -- cgit