From 53495225a5e5392a98f1fbc252f0fddf48f0dd77 Mon Sep 17 00:00:00 2001 From: Tim Potter Date: Tue, 3 Sep 2002 01:48:24 +0000 Subject: A printerdata browser I whipped up in about 5 minutes. (-: Usage: gprinterdata //win2kdc1/fooprinter (This used to be commit a3e52367c961070ce80ac3d4bba763ad9ec1007c) --- source3/python/gprinterdata | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100755 source3/python/gprinterdata (limited to 'source3/python/gprinterdata') diff --git a/source3/python/gprinterdata b/source3/python/gprinterdata new file mode 100755 index 0000000000..cd04e6f5a1 --- /dev/null +++ b/source3/python/gprinterdata @@ -0,0 +1,44 @@ +#!/usr/bin/env python + +import sys +from gtkdictbrowser import GtkDictBrowser +import gtk +import spoolss +import string + +class printerdata: + def __init__(self, host): + host = string.replace(host, "/", "\\") + self.hnd = spoolss.openprinter(host) + + def keys(self): + return self.hnd.enumprinterdata().keys() + + def __getitem__(self, key): + return self.hnd.getprinterdata(key)['data'] + +# Initialise printerdata dictionary + +if len(sys.argv) != 2: + print "Usage: gprinterdata " + print "where is a UNC printer name." + sys.exit(1) + +try: + t = printerdata(sys.argv[1]) +except: + print "gprinterdata: error opening %s" % sys.argv[1] + sys.exit(1) + +# Create interface + +db = GtkDictBrowser(t) +db.build_ui('gprinterdata') + +# Override Python's handling of ctrl-c so we can break out of the +# gui from the command line. + +import signal +signal.signal(signal.SIGINT, signal.SIG_DFL) + +gtk.mainloop() -- cgit From 62d6c7f8f836d46e423e4150b7fab1cd7bd61d63 Mon Sep 17 00:00:00 2001 From: Tim Potter Date: Tue, 3 Sep 2002 01:56:05 +0000 Subject: Display printerdata values in hex. (This used to be commit cdd64e0860bf05b115e0d107f6cb2b9e1f6d0e9b) --- source3/python/gprinterdata | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'source3/python/gprinterdata') diff --git a/source3/python/gprinterdata b/source3/python/gprinterdata index cd04e6f5a1..52c6e42719 100755 --- a/source3/python/gprinterdata +++ b/source3/python/gprinterdata @@ -1,7 +1,7 @@ #!/usr/bin/env python import sys -from gtkdictbrowser import GtkDictBrowser +from gtkdictbrowser import GtkDictBrowser, hex_string import gtk import spoolss import string @@ -33,6 +33,7 @@ except: # Create interface db = GtkDictBrowser(t) +db.register_get_value_text_fn("", hex_string) db.build_ui('gprinterdata') # Override Python's handling of ctrl-c so we can break out of the -- cgit From a2327b84858453ff250b7635f423ae94edf2740b Mon Sep 17 00:00:00 2001 From: Tim Potter Date: Fri, 6 Sep 2002 07:34:57 +0000 Subject: Move printerdata dictionary object into it's own file. (This used to be commit c211d2deca1019d3ef9bd08f5a01e76ede2d0191) --- source3/python/gprinterdata | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) (limited to 'source3/python/gprinterdata') diff --git a/source3/python/gprinterdata b/source3/python/gprinterdata index 52c6e42719..f1992db5a5 100755 --- a/source3/python/gprinterdata +++ b/source3/python/gprinterdata @@ -5,18 +5,8 @@ from gtkdictbrowser import GtkDictBrowser, hex_string import gtk import spoolss import string +import printerdata -class printerdata: - def __init__(self, host): - host = string.replace(host, "/", "\\") - self.hnd = spoolss.openprinter(host) - - def keys(self): - return self.hnd.enumprinterdata().keys() - - def __getitem__(self, key): - return self.hnd.getprinterdata(key)['data'] - # Initialise printerdata dictionary if len(sys.argv) != 2: @@ -25,7 +15,8 @@ if len(sys.argv) != 2: sys.exit(1) try: - t = printerdata(sys.argv[1]) + host = string.replace(sys.argv[1], "/", "\\") + t = printerdata.printerdata(host) except: print "gprinterdata: error opening %s" % sys.argv[1] sys.exit(1) -- cgit From c9101c3b01b7a493944b1fec8612289d8dc531e7 Mon Sep 17 00:00:00 2001 From: Tim Potter Date: Fri, 6 Sep 2002 07:44:21 +0000 Subject: Initial version of printerdata_ex browsing. (This used to be commit c201a61a52ffbaf1b1b70e25e0ef2b29a89f921c) --- source3/python/gprinterdata | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) (limited to 'source3/python/gprinterdata') diff --git a/source3/python/gprinterdata b/source3/python/gprinterdata index f1992db5a5..59c5f3c315 100755 --- a/source3/python/gprinterdata +++ b/source3/python/gprinterdata @@ -9,16 +9,19 @@ import printerdata # Initialise printerdata dictionary -if len(sys.argv) != 2: - print "Usage: gprinterdata " +if len(sys.argv) < 2 or len(sys.argv) > 3: + print "Usage: gprinterdata [--ex] " print "where is a UNC printer name." sys.exit(1) try: - host = string.replace(sys.argv[1], "/", "\\") - t = printerdata.printerdata(host) + host = string.replace(sys.argv[len(sys.argv) - 1], "/", "\\") + if sys.argv[1] == "--ex": + t = printerdata.printerdata_ex(host) + else: + t = printerdata.printerdata(host) except: - print "gprinterdata: error opening %s" % sys.argv[1] + print "gprinterdata: error opening %s" % sys.argv[len(sys.argv) - 1] sys.exit(1) # Create interface -- cgit From 18e72f5facd1f87193b5295cc4d081d1d04374f5 Mon Sep 17 00:00:00 2001 From: Tim Potter Date: Wed, 11 Sep 2002 04:50:18 +0000 Subject: Fix imports for printerdata browser. (This used to be commit d36fd6651726ffee059f4b39211da66b5b6d7ec1) --- source3/python/gprinterdata | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'source3/python/gprinterdata') diff --git a/source3/python/gprinterdata b/source3/python/gprinterdata index 59c5f3c315..cd062076c0 100755 --- a/source3/python/gprinterdata +++ b/source3/python/gprinterdata @@ -3,7 +3,7 @@ import sys from gtkdictbrowser import GtkDictBrowser, hex_string import gtk -import spoolss +from samba import spoolss import string import printerdata -- cgit