rpcclient "Service Control Manager" svcenum [-i] command.
[samba.git] / source / include / proto.h
index 95307f433451d1eb04579493122b4d50b75377d4..15ed9a50af48d12a1a4116e6a6def6efb394e8bd 100644 (file)
@@ -6,7 +6,7 @@
 /*The following definitions come from  client/client.c  */
 
 void do_list(const char *mask,uint16 attribute,void (*fn)(file_info *),BOOL rec, BOOL dirs);
-struct cli_state *do_connect(char *server, char *share);
+struct cli_state *do_connect(char *server, char *share, int smb_port);
 
 /*The following definitions come from  client/clitar.c  */
 
@@ -172,6 +172,7 @@ void reopen_logs( void );
 void force_check_log_size( void );
 void dbgflush( void );
 BOOL dbghdr( int level, char *file, char *func, int line );
+dbg_Token dbg_char2token( dbg_Token *state, int c );
 
 /*The following definitions come from  lib/domain_namemap.c  */
 
@@ -574,6 +575,7 @@ int unistrcpy(char *dst, char *src);
 
 /*The following definitions come from  libsmb/clientgen.c  */
 
+int cli_set_port(struct cli_state *cli, int port);
 char *cli_errstr(struct cli_state *cli);
 BOOL cli_api_pipe(struct cli_state *cli, char *pipe_name, int pipe_name_len,
                   uint16 *setup, uint32 setup_count, uint32 max_setup_count,
@@ -1374,13 +1376,14 @@ BOOL pm_process( char *FileName,
 
 /*The following definitions come from  passdb/ldap.c  */
 
-BOOL ldap_open_connection(BOOL modify);
-void ldap_close_connection(void);
+BOOL ldap_connect(void);
+void ldap_disconnect(void);
 BOOL ldap_search_for(char *filter);
 BOOL ldap_search_by_name(const char *user);
 BOOL ldap_search_by_uid(int uid);
 BOOL ldap_get_attribute(char *attribute, char *value);
 struct smb_passwd *ldap_getpw(void);
+BOOL ldap_allocaterid(uint32 *rid);
 struct smb_passdb_ops *ldap_initialise_password_db(void);
 
 /*The following definitions come from  passdb/nispass.c  */
@@ -1549,12 +1552,14 @@ BOOL lsa_lookup_names(struct cli_state *cli, uint16 fnum,
                        int num_names,
                        const char **names,
                        DOM_SID **sids,
+                       uint8 **types,
                        int *num_sids);
 BOOL lsa_lookup_sids(struct cli_state *cli, uint16 fnum,
                        POLICY_HND *hnd,
                        int num_sids,
                        DOM_SID **sids,
                        char ***names,
+                       uint8 **types,
                        int *num_names);
 BOOL lsa_query_info_pol(struct cli_state *cli, uint16 fnum,
                        POLICY_HND *hnd, uint16 info_class,
@@ -1773,16 +1778,26 @@ BOOL do_srv_net_srv_get_info(struct cli_state *cli, uint16 fnum,
 
 /*The following definitions come from  rpc_client/cli_svcctl.c  */
 
-BOOL do_svc_open_sc_man(struct cli_state *cli, uint16 fnum, 
+BOOL svc_open_sc_man(struct cli_state *cli, uint16 fnum, 
                                char *srv_name, char *db_name,
                                uint32 des_access,
                                POLICY_HND *hnd);
-BOOL do_svc_enum_svcs(struct cli_state *cli, uint16 fnum, 
+BOOL svc_open_service(struct cli_state *cli, uint16 fnum, 
+                               POLICY_HND *scm_hnd,
+                               char *srv_name,
+                               uint32 des_access,
+                               POLICY_HND *hnd);
+BOOL svc_enum_svcs(struct cli_state *cli, uint16 fnum, 
                                POLICY_HND *hnd,
                                uint32 services_type, uint32 services_state,
-                               uint32 buf_size, uint32 *resume_hnd,
-                               ENUM_SRVC_STATUS **svcs);
-BOOL do_svc_close(struct cli_state *cli, uint16 fnum, POLICY_HND *hnd);
+                               uint32 *buf_size, uint32 *resume_hnd,
+                               uint32 *dos_error,
+                               ENUM_SRVC_STATUS **svcs, uint32 *num_svcs);
+BOOL svc_query_svc_cfg(struct cli_state *cli, uint16 fnum,
+                               POLICY_HND *hnd,
+                               QUERY_SERVICE_CONFIG *cfg,
+                               uint32 *buf_size);
+BOOL svc_close(struct cli_state *cli, uint16 fnum, POLICY_HND *hnd);
 
 /*The following definitions come from  rpc_client/cli_wkssvc.c  */
 
@@ -2518,7 +2533,7 @@ void make_svc_query_svc_cfg(QUERY_SERVICE_CONFIG *q_u,
                                char* bin_path_name, char* load_order_grp, 
                                uint32 tag_id,
                                char* dependencies, char* service_start_name,
-                               char* display_name);
+                               char* disp_name);
 void svc_io_query_svc_cfg(char *desc, QUERY_SERVICE_CONFIG *q_u, prs_struct *ps, int depth);
 void make_svc_q_enum_svcs_status(SVC_Q_ENUM_SVCS_STATUS *q_c, POLICY_HND *hnd,
                                uint32 service_type, uint32 service_state,
@@ -2530,6 +2545,13 @@ void make_svc_r_enum_svcs_status(SVC_R_ENUM_SVCS_STATUS *r_c,
                                uint32 dos_status);
 void svc_io_r_enum_svcs_status(char *desc, SVC_R_ENUM_SVCS_STATUS *svc, prs_struct *ps, int depth);
 void svc_io_svc_status(char *desc,  SVC_STATUS *svc, prs_struct *ps, int depth);
+void make_svc_q_query_svc_config(SVC_Q_QUERY_SVC_CONFIG *q_c, POLICY_HND *hnd,
+                               uint32 buf_size);
+void svc_io_q_query_svc_config(char *desc,  SVC_Q_QUERY_SVC_CONFIG *q_u, prs_struct *ps, int depth);
+void make_svc_r_query_svc_config(SVC_R_QUERY_SVC_CONFIG *r_c, 
+                               QUERY_SERVICE_CONFIG *cfg,
+                               uint32 buf_size);
+void svc_io_r_query_svc_config(char *desc,  SVC_R_QUERY_SVC_CONFIG *r_u, prs_struct *ps, int depth);
 void make_svc_q_close(SVC_Q_CLOSE *q_c, POLICY_HND *hnd);
 void svc_io_q_close(char *desc,  SVC_Q_CLOSE *q_u, prs_struct *ps, int depth);
 void svc_io_r_close(char *desc,  SVC_R_CLOSE *r_u, prs_struct *ps, int depth);
@@ -2757,6 +2779,9 @@ void display_reg_value_info(FILE *out_hnd, enum action_type action,
                                char *val_name, uint32 val_type, BUFFER2 *value);
 void display_reg_key_info(FILE *out_hnd, enum action_type action,
                                char *key_name, time_t key_mod_time);
+void display_query_svc_cfg(FILE *out_hnd, enum action_type action,
+                               QUERY_SERVICE_CONFIG *cfg);
+void display_svc_info(FILE *out_hnd, enum action_type action, ENUM_SRVC_STATUS *svc);
 
 /*The following definitions come from  rpcclient/rpcclient.c  */