svn commit: samba r10230 - in trunk/source: include rpc_parse rpc_server

jerry at samba.org jerry at samba.org
Wed Sep 14 22:20:05 GMT 2005


Author: jerry
Date: 2005-09-14 22:20:05 +0000 (Wed, 14 Sep 2005)
New Revision: 10230

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=10230

Log:
add another stub server ntsvcs function (NTSVCS_VALIDATE_DEVICE_INSTANCE)
Modified:
   trunk/source/include/rpc_ntsvcs.h
   trunk/source/rpc_parse/parse_ntsvcs.c
   trunk/source/rpc_server/srv_ntsvcs.c
   trunk/source/rpc_server/srv_ntsvcs_nt.c


Changeset:
Modified: trunk/source/include/rpc_ntsvcs.h
===================================================================
--- trunk/source/include/rpc_ntsvcs.h	2005-09-14 22:04:43 UTC (rev 10229)
+++ trunk/source/include/rpc_ntsvcs.h	2005-09-14 22:20:05 UTC (rev 10230)
@@ -77,7 +77,7 @@
 /**************************/
 
 typedef struct {
-	UNISTR2 *devicepath;
+	UNISTR2 devicepath;
 	uint32 flags;
 } NTSVCS_Q_VALIDATE_DEVICE_INSTANCE;
 

Modified: trunk/source/rpc_parse/parse_ntsvcs.c
===================================================================
--- trunk/source/rpc_parse/parse_ntsvcs.c	2005-09-14 22:04:43 UTC (rev 10229)
+++ trunk/source/rpc_parse/parse_ntsvcs.c	2005-09-14 22:20:05 UTC (rev 10230)
@@ -169,5 +169,49 @@
 	return True;
 }
 
+/*******************************************************************
+********************************************************************/
 
+BOOL ntsvcs_io_q_validate_device_instance(const char *desc, NTSVCS_Q_VALIDATE_DEVICE_INSTANCE *q_u, prs_struct *ps, int depth)
+{
+	if (q_u == NULL)
+		return False;
 
+	prs_debug(ps, depth, desc, "ntsvcs_io_q_validate_device_instance");
+	depth++;
+	
+	if(!prs_align(ps))
+		return False;
+
+	if ( !prs_io_unistr2("devicepath", ps, depth, &q_u->devicepath) )
+		return False;
+	if( !prs_align(ps) )
+		return False;
+		
+	if ( !prs_uint32("flags", ps, depth, &q_u->flags) )
+		return False;
+	
+	return True;
+
+}
+
+/*******************************************************************
+********************************************************************/
+
+BOOL ntsvcs_io_r_validate_device_instance(const char *desc, NTSVCS_R_VALIDATE_DEVICE_INSTANCE *r_u, prs_struct *ps, int depth)
+{
+	if ( !r_u )
+		return False;
+
+	prs_debug(ps, depth, desc, "ntsvcs_io_r_validate_device_instance");
+	depth++;
+
+	if(!prs_werror("status", ps, depth, &r_u->status))
+		return False;
+
+	return True;
+}
+
+
+
+

Modified: trunk/source/rpc_server/srv_ntsvcs.c
===================================================================
--- trunk/source/rpc_server/srv_ntsvcs.c	2005-09-14 22:04:43 UTC (rev 10229)
+++ trunk/source/rpc_server/srv_ntsvcs.c	2005-09-14 22:20:05 UTC (rev 10230)
@@ -95,7 +95,31 @@
 	return True;
 }
 
+/*******************************************************************
+ ********************************************************************/
 
+static BOOL api_ntsvcs_validate_device_instance(pipes_struct *p)
+{
+	NTSVCS_Q_VALIDATE_DEVICE_INSTANCE q_u;
+	NTSVCS_R_VALIDATE_DEVICE_INSTANCE r_u;
+	prs_struct *data = &p->in_data.data;
+	prs_struct *rdata = &p->out_data.rdata;
+
+	ZERO_STRUCT(q_u);
+	ZERO_STRUCT(r_u);
+
+	if(!ntsvcs_io_q_validate_device_instance("", &q_u, data, 0))
+		return False;
+
+	r_u.status = _ntsvcs_validate_device_instance(p, &q_u, &r_u);
+
+	if(!ntsvcs_io_r_validate_device_instance("", &r_u, rdata, 0))
+		return False;
+
+	return True;
+}
+
+
 /*******************************************************************
  \PIPE\svcctl commands
  ********************************************************************/
@@ -104,7 +128,8 @@
 {
       { "NTSVCS_GET_VERSION"              , NTSVCS_GET_VERSION              , api_ntsvcs_get_version },
       { "NTSVCS_GET_DEVICE_LIST_SIZE"     , NTSVCS_GET_DEVICE_LIST_SIZE     , api_ntsvcs_get_device_list_size },
-      { "NTSVCS_GET_DEVICE_LIST"          , NTSVCS_GET_DEVICE_LIST          , api_ntsvcs_get_device_list }
+      { "NTSVCS_GET_DEVICE_LIST"          , NTSVCS_GET_DEVICE_LIST          , api_ntsvcs_get_device_list },
+      { "NTSVCS_VALIDATE_DEVICE_INSTANCE" , NTSVCS_VALIDATE_DEVICE_INSTANCE , api_ntsvcs_validate_device_instance }
 };
 
 

Modified: trunk/source/rpc_server/srv_ntsvcs_nt.c
===================================================================
--- trunk/source/rpc_server/srv_ntsvcs_nt.c	2005-09-14 22:04:43 UTC (rev 10229)
+++ trunk/source/rpc_server/srv_ntsvcs_nt.c	2005-09-14 22:20:05 UTC (rev 10230)
@@ -90,3 +90,12 @@
 	return WERR_OK;
 }
 
+/********************************************************************
+********************************************************************/
+
+WERROR _ntsvcs_validate_device_instance( pipes_struct *p, NTSVCS_Q_VALIDATE_DEVICE_INSTANCE *q_u, NTSVCS_R_VALIDATE_DEVICE_INSTANCE *r_u )
+{
+	/* whatever dude */
+	return WERR_OK;
+}
+



More information about the samba-cvs mailing list