From 5455e9d77d9375a34a6e82b386fbceeb38a5233a Mon Sep 17 00:00:00 2001 From: Günther Deschner Date: Tue, 4 May 2010 15:22:36 +0200 Subject: rap: add IDL for (undocumented) NetPrintDestEnum. Guenther --- librpc/idl/rap.idl | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/librpc/idl/rap.idl b/librpc/idl/rap.idl index 2265f7077d..af7a59b6d6 100644 --- a/librpc/idl/rap.idl +++ b/librpc/idl/rap.idl @@ -676,6 +676,64 @@ interface rap [out] uint16 convert ); + /* all not documented in MS-RAP */ + + typedef struct { + [charset(DOS)] uint8 PrintDestName[9]; + } rap_PrintDest0; + + typedef struct { + [charset(DOS)] uint8 PrintDestName[9]; + [charset(DOS)] uint8 UserName[21]; + uint16 JobId; + uint16 Status; + [relative_short] astring *StatusStringName; + uint16 PrintQueueNameHigh; + uint16 Time; + } rap_PrintDest1; + + typedef struct { + [relative_short] astring *PrinterName; + uint16 PrinterNameHigh; + } rap_PrintDest2; + + typedef struct { + [relative_short] astring *PrinterName; + uint16 PrinterNameHigh; + [relative_short] astring *UserName; + uint16 UserNameHigh; + [relative_short] astring *LogAddr; + uint16 LogAddrHigh; + uint16 JobId; + uint16 Status; + [relative_short] astring *StatusStringName; + uint16 PrintQueueNameHigh; + [relative_short] astring *Comment; + uint16 CommentHigh; + [relative_short] astring *Drivers; + uint16 DriversHigh; + uint16 Time; + uint16 Pad1; + } rap_PrintDest3; + + typedef [public,nodiscriminant] union { + [case(0)] rap_PrintDest0 info0; + [case(1)] rap_PrintDest1 info1; + [case(2)] rap_PrintDest2 info2; + [case(3)] rap_PrintDest3 info3; + } rap_printdest_info; + + /* not documented in MS-RAP */ + [public] void rap_NetPrintDestEnum( + [in] uint16 level, + [in] uint16 bufsize, + [out] rap_status status, + [out] uint16 convert, + [out] uint16 count, + [out] uint16 available, + [out,switch_is(level)] rap_printdest_info info[count] + ); + /* Parameter description strings for RAP calls */ /* Names are defined name for RAP call with _REQ */ /* appended to end. */ -- cgit