From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: Nuno Santos <nsantos@edigma.com>
Cc: linux-input@vger.kernel.org
Subject: Re: Interacting with a input kernel driver from user space
Date: Tue, 15 Nov 2011 11:20:58 -0800 [thread overview]
Message-ID: <20111115192058.GA13065@core.coreip.homeip.net> (raw)
In-Reply-To: <4EC2B271.90209@edigma.com>
On Tue, Nov 15, 2011 at 06:41:53PM +0000, Nuno Santos wrote:
> Generally we restrict access to sysfs attributes to root since they
> control behavior for all users, not only one why is changin sysfs
> attribute.
>
>
> Hummm... that leads me to a question. How can I make use of such
> attributes inside an application without having root access? Imagine
> that I open the control panel of the device in a user account, the
> contol panel itself will not have access to the attributes and it will
> not work. How do I overcome this problem?
Applications could register with ConsoleKit to elevate their privileges
if needed if they are running in a context of user logged onto local
console as opposed to someone logging in removely.
>
> Imagine that my device is a soundcard and it has a beautifull control
> panel to control non general parameters. What would be the interface
> used by the control panel to access the kernel driver and modify the
> soundcard parameters?
>
Beautful control panel does not normally even talk to sound card
directly but rather plugs into desktop environment infrastructure which
plugs into sound server inforastructure which in turn knows how to talk
to the hardware. Take a look at the sound mixer applet. As you can see
it actually exports only standard parameters and is pretty bland in this
regard (and this is a good thing - it supposed to work uniformly on all
hardware). The best way if advanved parameters have sensible defaults and
need not to be touched at all.
I guess here you see the difference between Linux and Windows views
because we actually do not want vendor-specific applets/tray
icons/utilities/etc but rather unified interface working for all
hardware in a given class.
Thanks.
--
Dmitry
next prev parent reply other threads:[~2011-11-15 19:21 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-14 12:24 Interacting with a input kernel driver from user space Nuno Santos
2011-11-14 15:37 ` David Herrmann
2011-11-14 16:00 ` Nuno Santos
2011-11-14 16:09 ` David Herrmann
2011-11-14 16:31 ` Nuno Santos
2011-11-14 16:58 ` David Herrmann
2011-11-14 18:24 ` Nuno Santos
2011-11-14 18:57 ` Dmitry Torokhov
2011-11-14 23:17 ` Oliver Neukum
2011-11-14 23:34 ` Dmitry Torokhov
2011-11-15 9:41 ` Nuno Santos
2011-11-15 9:38 ` Nuno Santos
2011-11-15 9:35 ` Nuno Santos
2011-11-15 18:23 ` Dmitry Torokhov
2011-11-15 18:41 ` Nuno Santos
2011-11-15 19:20 ` Dmitry Torokhov [this message]
2011-11-14 17:13 ` Dmitry Torokhov
2011-11-15 10:32 ` Henrik Rydberg
2011-11-15 10:40 ` Nuno Santos
2011-11-15 19:07 ` Chase Douglas
2011-11-16 10:25 ` Nuno Santos
2011-11-16 10:28 ` Nuno Santos
2011-11-16 17:28 ` Nuno Santos
2011-11-16 19:27 ` Dmitry Torokhov
2011-11-17 15:39 ` Nuno Santos
2011-11-17 16:58 ` Nuno Santos
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20111115192058.GA13065@core.coreip.homeip.net \
--to=dmitry.torokhov@gmail.com \
--cc=linux-input@vger.kernel.org \
--cc=nsantos@edigma.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.