[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: What operations in store_parsed_open() need the privilege?

From: Da Zheng
Subject: Re: What operations in store_parsed_open() need the privilege?
Date: Wed, 27 Aug 2008 03:48:59 +0200
User-agent: Thunderbird (Macintosh/20080707)

Thomas Bushnell BSG wrote:
On Wed, 2008-08-27 at 01:57 +0200, Da Zheng wrote:
I'm trying to make subhurd work without root's permission, so the first task for me is to find the operations need the privilege.

That's a worthy task.

I have a problem in store_parsed_open().
I believe store_parse_open() calls dev_open() if the filesystem of subhurd is in a disk. The first privilege operation I can find is get_privileged_port() when I look into the code of libstore.

That's right.  To make your project succeed, you'll need to implement a
device master port far more fully than the existing subhurd boot does.

I wrote a proc proxy, so I can track what RPC routines in process.defs are called (but the main purpose of the proc proxy is to give a program the master device port). When I tried to run the subhurd with the normal user, I got the "Permission denied" error when store_parse_open() is called but I didn't see proc_getprivports() was called in the proc proxy.
I wonder where is the privilege operation?

I'm having trouble understanding exactly what you were expecting or
where this error was coming from.
It's impossible for me to find all privilege operations by reading the code, so I try to run subhurd with the normal user and see where the error comes from.
It sounds as if you got EPERM from store_parse_open, but
proc_getprivports is not being called, so you are having trouble
understanding why you got an error message at all.
Yes, exactly.
This will depend much on what the store specification was which was
passed to store_parse_open.  Can you provide more details?
I run subhurd with "boot servers.boot /dev/hd1", so the libstore should read the disk.

Zheng Da

reply via email to

[Prev in Thread] Current Thread [Next in Thread]