On Wed, 4 Dec 2013 17:38:23 +0100 Sebastian Wick <sebast...@sebastianwick.net> wrote:
> This patch adds a screenshooter section with the "restrict-access" > setting which is on by default and is the current behavior of weston. > When turning it off, all clients can use the screenshooter protocol. > This makes screen capturing for clients easier because they don't > have to be started by weston. > --- > man/weston.ini.man | 6 ++++++ > src/screenshooter.c | 8 +++++++- > weston.ini.in | 3 +++ > 3 files changed, 16 insertions(+), 1 deletion(-) > > diff --git a/man/weston.ini.man b/man/weston.ini.man > index 6be90bf..b94ac3d 100644 > --- a/man/weston.ini.man > +++ b/man/weston.ini.man > @@ -408,6 +408,12 @@ The terminal shell (string). Sets the $TERM > variable. sets the path to the xserver to run (string). > .RE > .RE > +.SH "SCREENSHOOTER SECTION" > +.TP 7 > +.BI "restrict-access=" true > +only allow authenticated clients to take screenshots (boolean). > +.RE > +.RE > .SH "SEE ALSO" > .BR weston (1), > .BR weston-launch (1), > diff --git a/src/screenshooter.c b/src/screenshooter.c > index 0c657bc..65b6c09 100644 > --- a/src/screenshooter.c > +++ b/src/screenshooter.c > @@ -224,11 +224,17 @@ bind_shooter(struct wl_client *client, > { > struct screenshooter *shooter = data; > struct wl_resource *resource; > + struct weston_config_section *section; > + int restrict_access; > > resource = wl_resource_create(client, > &screenshooter_interface, 1, > id); > - if (client != shooter->client) { > + section = weston_config_get_section(shooter->ec->config, > "screenshooter", NULL, NULL); > + weston_config_section_get_bool(section, > + "restrict-access", &restrict_access, > 1); + > + if (restrict_access && client != shooter->client) { > wl_resource_post_error(resource, > WL_DISPLAY_ERROR_INVALID_OBJECT, "screenshooter failed: permission > denied"); wl_resource_destroy(resource); > diff --git a/weston.ini.in b/weston.ini.in > index 5181a9e..bc32567 100644 > --- a/weston.ini.in > +++ b/weston.ini.in > @@ -65,3 +65,6 @@ path=@libexecdir@/weston-keyboard > #constant_accel_factor = 50 > #min_accel_factor = 0.16 > #max_accel_factor = 1.0 > + > +#[screenshooter] > +#restrict-access=false This looks ok to me. Thanks, pq _______________________________________________ wayland-devel mailing list wayland-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/wayland-devel