drsuapi.idl clean up and refactoring

Kamen Mazdrashki kamen.mazdrashki at postpath.com
Thu Mar 4 02:50:13 MST 2010


Hi,
 
While I am looking to refactor drsuapi.idl a little bit, I’ve hit following issue.
Certain call are described with not taking a pointer to request structure.
For example: 
1) WERROR drsuapi_DsReplicaUpdateRefs(..., drsuapi_DsReplicaUpdateRefsRequest req);
 
If I follow the pattern in drsuapi.idl, I should change this to:
2) WERROR drsuapi_DsReplicaUpdateRefs(..., drsuapi_DsReplicaUpdateRefsRequest *req);
 
There is no big difference in NDR code generated between two versions.
Mostly the difference is in the way clients for this method will use it.
 
Usage for case #1:
  struct drsuapi_DsReplicaUpdateRefs r;
  // fill in request structure
  r.in.req…. = …;
 
Usage for case #2:
  struct drsuapi_DsReplicaUpdateRefs r;
  union drsuapi_DsReplicaUpdateRefsRequest req;
  // fill in request structure
  req…. = …;
  r.in.req = &req;
 
 
Perhaps #1 is a little bit more convenient for coding.
But #2 is more consistent with most of the RPC methods description
(plus it is more flexible)
 
So what you think?
Should I leave those simple methods ‘as-is’, or alter them to take a pointer for request structure?
 
-- 
 CU,
 Kamen Mazdrashki
 kamen.mazdrashki at postpath.com
 http://repo.or.cz/w/Samba/kamenim.git
 -------------------------------------
 CISCO SYSTEMS BULGARIA EOOD
 http://www.cisco.com/global/BG/
 



More information about the samba-technical mailing list