コード例 #1
0
    def runTest(self):
        self.hnd = spoolss.openprinter(self.uncname)

        # Everyone should have getprinter levels 0-3

        for i in (0, 1, 2, 3):
            info = self.hnd.getprinter(level=i)
            try:
                stf.dict_check(self.sample_info[i], info)
            except ValueError, msg:
                raise "info%d: %s" % (i, msg)
コード例 #2
0
ファイル: spoolss.py プロジェクト: 0x24bin/winexe-1
    def runTest(self):
        self.hnd = spoolss.openprinter(self.uncname)

        # Everyone should have getprinter levels 0-3

        for i in (0, 1, 2, 3):
            info = self.hnd.getprinter(level = i)
            try:
                stf.dict_check(self.sample_info[i], info)
            except ValueError, msg:
                raise "info%d: %s" % (i, msg)
コード例 #3
0
 def __init__(self, host, key, creds, access):
     self.hnd = spoolss.openprinter(host, creds, access)
     self.key = key
コード例 #4
0
ファイル: psec.py プロジェクト: 23171580/padavan
import sys, re, string
from samba import spoolss

if len(sys.argv) != 3:
    print "Usage: psec.py getsec|setsec printername"
    sys.exit(1)

op = sys.argv[1]
printername = sys.argv[2]

# Display security descriptor

if op == "getsec":

    try:
        hnd = spoolss.openprinter(printername)
    except:
        print "error opening printer %s" % printername
        sys.exit(1)

    secdesc = hnd.getprinter(level=3)["security_descriptor"]

    print secdesc["owner_sid"]
    print secdesc["group_sid"]

    for acl in secdesc["dacl"]["ace_list"]:
        print "%d %d 0x%08x %s" % (acl["type"], acl["flags"], acl["mask"],
                                   acl["trustee"])

    spoolss.closeprinter(hnd)
コード例 #5
0
 def __init__(self, host, creds={}, access=0x02000000):
     # For read access, use MAXIMUM_ALLOWED_ACCESS = 0x02000000
     # For write access, use PRINTER_ACCESS_ADMINISTER = 0x00000004
     self.hnd = spoolss.openprinter(host, creds=creds, access=access)
コード例 #6
0
ファイル: enumprinters.py プロジェクト: AllardJ/Tomato
#

import sys
from samba import spoolss

if len(sys.argv) < 2 or len(sys.argv) > 3:
    print "Usage: enumprinters.py <servername> [infolevel]"
    sys.exit(1)

printserver = sys.argv[1]

level = 1
if len(sys.argv) == 3:
    level = int(sys.argv[2])
        
# Get list of printers

try:
    printer_list = spoolss.enumprinters("\\\\%s" % printserver)
except:
    print "error enumerating printers on %s" % printserver
    sys.exit(1)

# Display basic info

for printer in printer_list:
    h = spoolss.openprinter("\\\\%s\\%s" % (printserver, printer))
    info = h.getprinter(level = level)
    print "Printer info %d for %s: %s" % (level, printer, info)
    print
コード例 #7
0
ファイル: psec.py プロジェクト: AllardJ/Tomato
import sys, re, string
from samba import spoolss

if len(sys.argv) != 3:
    print "Usage: psec.py getsec|setsec printername"
    sys.exit(1)

op = sys.argv[1]
printername = sys.argv[2]

# Display security descriptor

if op == "getsec":

    try:
        hnd = spoolss.openprinter(printername)
    except:
        print "error opening printer %s" % printername
        sys.exit(1)

    secdesc = hnd.getprinter(level = 3)["security_descriptor"]

    print secdesc["owner_sid"]
    print secdesc["group_sid"]

    for acl in secdesc["dacl"]["ace_list"]:
        print "%d %d 0x%08x %s" % (acl["type"], acl["flags"],
                                   acl["mask"], acl["trustee"])

    spoolss.closeprinter(hnd)
コード例 #8
0
ファイル: spoolss.py プロジェクト: 0x24bin/winexe-1
 def runTest(self):
     hnd = spoolss.openprinter("\\\\%s" % self.server["hostname"])
     spoolss.closeprinter(hnd)
コード例 #9
0
 def __init__(self, host, creds={}):
     self.hnd = spoolss.openprinter(host, creds=creds)
コード例 #10
0
ファイル: enumprinters.py プロジェクト: 23171580/padavan
#

import sys
from samba import spoolss

if len(sys.argv) < 2 or len(sys.argv) > 3:
    print "Usage: enumprinters.py <servername> [infolevel]"
    sys.exit(1)

printserver = sys.argv[1]

level = 1
if len(sys.argv) == 3:
    level = int(sys.argv[2])

# Get list of printers

try:
    printer_list = spoolss.enumprinters("\\\\%s" % printserver)
except:
    print "error enumerating printers on %s" % printserver
    sys.exit(1)

# Display basic info

for printer in printer_list:
    h = spoolss.openprinter("\\\\%s\\%s" % (printserver, printer))
    info = h.getprinter(level=level)
    print "Printer info %d for %s: %s" % (level, printer, info)
    print
コード例 #11
0
ファイル: spoolss.py プロジェクト: 0x24bin/winexe-1
 def runTestArg(self, creds):
     spoolss.openprinter(self.uncname, creds = creds)
コード例 #12
0
 def runTest(self):
     hnd = spoolss.openprinter(self.uncname)
     spoolss.closeprinter(hnd)
コード例 #13
0
 def runTest(self):
     hnd = spoolss.openprinter("\\\\%s" % self.server["hostname"])
     spoolss.closeprinter(hnd)
コード例 #14
0
 def runTestArg(self, creds):
     spoolss.openprinter(self.uncname, creds=creds)
コード例 #15
0
 def runTestArg(self, unc):
     spoolss.openprinter(unc)
コード例 #16
0
ファイル: printerdata.py プロジェクト: AllardJ/Tomato
 def __init__(self, host, key, creds, access):
     self.hnd = spoolss.openprinter(host, creds, access)
     self.key = key
コード例 #17
0
ファイル: printerdata.py プロジェクト: AllardJ/Tomato
    def __init__(self, host, creds = {}, access = 0x02000000):
	# For read access, use MAXIMUM_ALLOWED_ACCESS = 0x02000000
	# For write access, use PRINTER_ACCESS_ADMINISTER = 0x00000004
        self.hnd = spoolss.openprinter(host, creds = creds, access = access)
コード例 #18
0
 def __init__(self, host, key):
     self.hnd = spoolss.openprinter(host)
     self.key = key
コード例 #19
0
ファイル: spoolss.py プロジェクト: 0x24bin/winexe-1
 def runTestArg(self, unc):
     spoolss.openprinter(unc)
コード例 #20
0
 def __init__(self, host, creds = {}):
     self.hnd = spoolss.openprinter(host, creds = creds)
コード例 #21
0
ファイル: spoolss.py プロジェクト: 0x24bin/winexe-1
 def runTest(self):
     hnd = spoolss.openprinter(self.uncname)
     spoolss.closeprinter(hnd)
コード例 #22
0
 def __init__(self, host, key):
     self.hnd = spoolss.openprinter(host)
     self.key = key
コード例 #23
0
ファイル: spoolss.py プロジェクト: runt18/samba
 def runTest(self):
     hnd = spoolss.openprinter("\\\\{0!s}".format(self.server["hostname"]))
     spoolss.closeprinter(hnd)
コード例 #24
0
# Sample usage:
#
#     changeid.py '\\win2kdc1\magpie'
#

import sys
from samba import spoolss

if len(sys.argv) == 1:
    print "Usage: changeid.py <printername>"
    sys.exit(1)

for printer in sys.argv[1:]:

    # Open printer handle

    try:
        hnd = spoolss.openprinter(printer)
    except:
        print "error opening printer %s" % printer
        sys.exit(1)

    # Fetch and display changeid

    info = hnd.getprinter(level = 0)
    print info["change_id"]

    # Clean up

    spoolss.closeprinter(hnd)