thunderbolt: honor boltd's AuthMode property
boltd 0.2 gained a property that indicates if it is authorizing devices or not. If it indeed is not authorizing then we wont try to enroll new devices because that would otherwise lead to and error.
This commit is contained in:
parent
cccfc7faca
commit
190a31dd5f
@ -17,6 +17,7 @@ const PanelMenu = imports.ui.panelMenu;
|
|||||||
const BoltClientInterface = '<node> \
|
const BoltClientInterface = '<node> \
|
||||||
<interface name="org.freedesktop.bolt1.Manager"> \
|
<interface name="org.freedesktop.bolt1.Manager"> \
|
||||||
<property name="Probing" type="b" access="read"></property> \
|
<property name="Probing" type="b" access="read"></property> \
|
||||||
|
<property name="AuthMode" type="s" access="readwrite"></property> \
|
||||||
<method name="EnrollDevice"> \
|
<method name="EnrollDevice"> \
|
||||||
<arg type="s" name="uid" direction="in"> </arg> \
|
<arg type="s" name="uid" direction="in"> </arg> \
|
||||||
<arg type="s" name="policy" direction="in"> </arg> \
|
<arg type="s" name="policy" direction="in"> </arg> \
|
||||||
@ -73,6 +74,9 @@ var AuthFlags = {
|
|||||||
NONE: 'none',
|
NONE: 'none',
|
||||||
};
|
};
|
||||||
|
|
||||||
|
var AuthMode = {
|
||||||
|
DISABLED: 'disabled',
|
||||||
|
ENABLED: 'enabled'
|
||||||
};
|
};
|
||||||
|
|
||||||
const BOLT_DBUS_NAME = 'org.freedesktop.bolt';
|
const BOLT_DBUS_NAME = 'org.freedesktop.bolt';
|
||||||
@ -150,6 +154,10 @@ var Client = new Lang.Class({
|
|||||||
path);
|
path);
|
||||||
callback(device, null);
|
callback(device, null);
|
||||||
});
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
get authMode () {
|
||||||
|
return this._proxy.AuthMode;
|
||||||
}
|
}
|
||||||
|
|
||||||
});
|
});
|
||||||
@ -183,6 +191,14 @@ var AuthRobot = new Lang.Class({
|
|||||||
if (dev.Status !== Status.CONNECTED)
|
if (dev.Status !== Status.CONNECTED)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
/* check if authorization is enabled in the daemon. if not
|
||||||
|
* we won't even bother authorizing, because we will only
|
||||||
|
* get an error back. The exact contents of AuthMode might
|
||||||
|
* change in the future, but must contain AuthMode.ENABLED
|
||||||
|
* if it is enabled. */
|
||||||
|
if (!cli.authMode.split('|').includes(AuthMode.ENABLED))
|
||||||
|
return;
|
||||||
|
|
||||||
/* check if we should enroll the device */
|
/* check if we should enroll the device */
|
||||||
let res = [false];
|
let res = [false];
|
||||||
this.emit('enroll-device', dev, res);
|
this.emit('enroll-device', dev, res);
|
||||||
|
Loading…
Reference in New Issue
Block a user