~ubuntu-branches/ubuntu/raring/hplip/raring

« back to all changes in this revision

Viewing changes to pkservice.py

  • Committer: Bazaar Package Importer
  • Author(s): Mark Purcell
  • Date: 2009-12-14 20:08:44 UTC
  • mfrom: (2.1.118 lucid)
  • Revision ID: james.westby@ubuntu.com-20091214200844-z8qhqwgppbu3t7ze
Tags: 3.9.10-4
KBSD patch from KiBi (Closes: #560796)

Show diffs side-by-side

added added

removed removed

Lines of Context:
52
52
mod = module.Module(__mod__, __title__, __version__, __doc__, USAGE,
53
53
                    (INTERACTIVE_MODE, ), run_as_root_ok=True)
54
54
 
55
 
opts, device_uri, printer_name, mode, ui_toolkit, loc = mod.parseStdOpts()
 
55
mod.setUsage(module.USAGE_FLAG_NONE,
 
56
    extra_options=[utils.USAGE_SPACE,
 
57
    ("[OPTIONS] (General)", "", "header", False),
 
58
    ("PolicyKit version:", "-v<version> or --version=<version>", "option", False)])
 
59
 
 
60
opts, device_uri, printer_name, mode, ui_toolkit, loc = \
 
61
    mod.parseStdOpts('v:', ["version="])
 
62
 
 
63
user_pkit_version = None
 
64
 
 
65
for o, a in opts:
 
66
    if o in ('-v', '--version'):
 
67
        try:
 
68
            user_pkit_version = int(a)
 
69
        except:
 
70
            log.error("-v or --version require an integer argument")
 
71
            sys.exit(1)
 
72
        if user_pkit_version < 0 or user_pkit_version > 1:
 
73
            log.error("invalid PolicyKit version...use 0 or 1")
 
74
            sys.exit(1)
56
75
 
57
76
PKIT = utils.to_bool(sys_conf.get('configure', 'policy-kit'))
58
77
if PKIT:
59
78
    try:
60
79
        from base.pkit import *
 
80
        pkit_version = policykit_version()
 
81
        if not user_pkit_version is None:
 
82
            pkit_version = user_pkit_version
61
83
        try:
62
84
            from dbus.mainloop.glib import DBusGMainLoop
63
85
        except ImportError:
76
98
    log.error("You must be root to run this utility.")
77
99
    sys.exit(1)
78
100
 
 
101
log.debug("using PolicyKit version %d" % pkit_version)
 
102
 
79
103
try:
80
 
    BackendService().run()
 
104
    BackendService().run(pkit_version)
81
105
except dbus.DBusException, ex:
82
 
    log.error("Unable to start service...possible configuration file problem")
 
106
    log.error("Unable to start service (%s)" % ex)