From 92708e3945cf294b3cb8d946200f8a7bf5d1def6 Mon Sep 17 00:00:00 2001 From: Gerald Carter Date: Fri, 21 Jul 2000 19:59:51 +0000 Subject: Added EnumPorts() and fixed up some problems with the other spoolss client calls. Also cleaned up output for 'help' command. jerry (This used to be commit 56ce247977c05ef37888c2572e679c44346e5568) --- source3/rpcclient/display_spool.c | 68 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) (limited to 'source3/rpcclient/display_spool.c') diff --git a/source3/rpcclient/display_spool.c b/source3/rpcclient/display_spool.c index 713b70ccbf..f2e9deccbd 100644 --- a/source3/rpcclient/display_spool.c +++ b/source3/rpcclient/display_spool.c @@ -295,6 +295,74 @@ void display_printer_info_ctr(FILE *out_hnd, enum action_type action, uint32 lev } } +/**************************************************************************** +connection info level 3 container display function +****************************************************************************/ +static void display_port_info_2_ctr(FILE *out_hnd, enum action_type action, + uint32 count, PORT_INFO_CTR *ctr) +{ + uint32 i = 0; + switch (action) + { + case ACTION_HEADER: + report(out_hnd, "Port Info Level 2:\n"); + break; + case ACTION_ENUMERATE: + for (i=0; iport.info_2[i]); + break; + case ACTION_FOOTER: + report(out_hnd, "\n"); + break; + } +} + +/**************************************************************************** +connection info container display function +****************************************************************************/ +void display_port_info_ctr(FILE *out_hnd, enum action_type action, uint32 level, + uint32 count, PORT_INFO_CTR *ctr) +{ + switch (level) { + case 2: + display_port_info_2_ctr(out_hnd, action, count, ctr); + break; + default: + report(out_hnd, "display_port_info_ctr: Unknown Info Level\n"); + break; + } +} + + +/**************************************************************************** +connection info container display function +****************************************************************************/ +void display_port_info_2(FILE *out_hnd, enum action_type action, PORT_INFO_2 *i2) +{ + fstring buffer; + + switch (action) + { + case ACTION_HEADER: + report(out_hnd, "Port:\n"); + break; + case ACTION_ENUMERATE: + unistr_to_ascii(buffer, i2->port_name.buffer, sizeof(buffer)-1); + fprintf (out_hnd, "\tPort Name:\t[%s]\n", buffer); + unistr_to_ascii(buffer, i2->monitor_name.buffer, sizeof(buffer)-1); + fprintf (out_hnd, "\tMonitor Name:\t[%s]\n", buffer); + unistr_to_ascii(buffer, i2->description.buffer, sizeof(buffer)-1); + fprintf (out_hnd, "\tDescription:\t[%s]\n", buffer); + fprintf (out_hnd, "\tPort Type:\t[%d]\n", i2->port_type); + fprintf (out_hnd, "\tReserved:\t[%d]\n", i2->reserved); + fprintf (out_hnd, "\n"); + break; + case ACTION_FOOTER: + report(out_hnd, "\n"); + break; + } +} + /**************************************************************************** connection info container display function ****************************************************************************/ -- cgit