summaryrefslogtreecommitdiffstats
path: root/source3/rpcclient
diff options
context:
space:
mode:
authorRobin Hack <hack.robin@gmail.com>2015-01-30 13:18:20 +0100
committerAndreas Schneider <asn@cryptomilk.org>2015-02-17 15:41:10 +0100
commitbcbdc74b2618bdddb920feecf3e8bd7d11f12441 (patch)
treea291034edfa0041b6290b53fe50b5a614c572647 /source3/rpcclient
parent76c7918e01205fb38534170e56fc68553c3abf79 (diff)
downloadsamba-bcbdc74b2618bdddb920feecf3e8bd7d11f12441.tar.gz
samba-bcbdc74b2618bdddb920feecf3e8bd7d11f12441.tar.xz
samba-bcbdc74b2618bdddb920feecf3e8bd7d11f12441.zip
rpcclient: Fix and enhance rpcclient output
BUG: https://bugzilla.samba.org/show_bug.cgi?id=11085 When rpcclient is called like: $ rpcclient -c "getdata . Osversion" at end of output is added one nonsense line OsVersion: Osversion: This patch removes this line and adds more human friendly ouput: OsMajor: num OsMinor: num OsBuild: num for OsVersion query. For OsVersionEx two more lines are added: OsMajor: num OsMinor: num OsBuild: num ServicePackMajor: num ServicePackMinor: num Signed-off-by: Robin Hack <hack.robin@gmail.com> Reviewed-by: Andreas Schneider <asn@samba.org> Signed-off-by: David Disseldorp <ddiss@samba.org> Reviewed-by: Guenther Deschner <gd@samba.org>
Diffstat (limited to 'source3/rpcclient')
-rw-r--r--source3/rpcclient/cmd_spoolss.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/source3/rpcclient/cmd_spoolss.c b/source3/rpcclient/cmd_spoolss.c
index c2b1e3d5e4..e2b9fc4668 100644
--- a/source3/rpcclient/cmd_spoolss.c
+++ b/source3/rpcclient/cmd_spoolss.c
@@ -863,13 +863,17 @@ static void display_printer_data(const char *v,
}
TALLOC_FREE(hex);
putchar('\n');
+ putchar('\n');
if (strequal(v, "OsVersion")) {
struct spoolss_OSVersion os;
ndr_err = ndr_pull_struct_blob(&blob, talloc_tos(), &os,
(ndr_pull_flags_fn_t)ndr_pull_spoolss_OSVersion);
if (NDR_ERR_CODE_IS_SUCCESS(ndr_err)) {
- printf("%s: OsVersion:\n", v);
+ // add output here;
+ printf("OsMajor: %u\n", os.major);
+ printf("OsMinor: %u\n", os.minor);
+ printf("OsBuild: %u\n", os.build);
NDR_PRINT_DEBUG(spoolss_OSVersion, &os);
}
}
@@ -878,7 +882,11 @@ static void display_printer_data(const char *v,
ndr_err = ndr_pull_struct_blob(&blob, talloc_tos(), &os,
(ndr_pull_flags_fn_t)ndr_pull_spoolss_OSVersionEx);
if (NDR_ERR_CODE_IS_SUCCESS(ndr_err)) {
- printf("%s: OsVersionEx:\n", v);
+ printf("OsMajor: %u\n", os.major);
+ printf("OsMinor: %u\n", os.minor);
+ printf("OsBuild: %u\n", os.build);
+ printf("ServicePackMajor: %u\n", os.service_pack_major);
+ printf("ServicePackMinor: %u\n", os.service_pack_minor);
NDR_PRINT_DEBUG(spoolss_OSVersionEx, &os);
}
}