From: Daniel J Walsh <dwalsh@redhat.com>
To: Stephen Smalley <sds@tycho.nsa.gov>
Cc: SE Linux <selinux@tycho.nsa.gov>,
Joshua Brindle <jbrindle@tresys.com>,
"Christopher J. PeBenito" <cpebenito@tresys.com>
Subject: Re: Trying to get XAce policy straightened out but our tool chain is too broken to handle it.
Date: Mon, 23 Jun 2008 07:17:15 -0400 [thread overview]
Message-ID: <485F863B.1040603@redhat.com> (raw)
In-Reply-To: <1213625437.15523.71.camel@moss-spartans.epoch.ncsc.mil>
Stephen Smalley wrote:
> On Thu, 2008-06-05 at 11:11 -0400, Daniel J Walsh wrote:
>> The interfaces I want to add are something like
>>
>> template - xserver_common_domain_template(staff)
>> Used to generate types for $1_xserver_t and $1_xrootwindow_t
>>
>> interface - xserver_use(staff, staff, staff_nsplugin_t)
>> xserver_use(xdm, staff, staff_nsplugin_t)
>> All interaction between application and X Server
>>
>> template - xserver_common_user_template(staff, staff_r, staff_t)
>>
>> This generates all of the user types/rules for a user X Sessionps
>> started by the user, Calls out to xserver_common_template
>>
>> interface - xserver_common_app(staff, staff_nsplugin_t)
>>
>> This defines all the common rules for a confined application like
>> nsplugin running in the user domain
>>
>> Then we can begin to write communications between staff and unconfined_t
>> or other user domains.
>>
>> The problem I have is the compiler is too stupid to understand the
>> differences between a gen_requires block defining the required types and
>> the actual type definition.
>>
>> So I end up in a catch 22 where the compiler tells me I need to require
>> $1_rootwindow_t, but if I gen_require type $1_rootwindow_t, it tells me
>> I have a duplicate definition.
>>
>> So if you have a derived type in a gen_requires block the compiler can
>> not handle it.
>
> I'm a little unclear as to why this is required (why do you need to
> require and declare the same symbol again?). However, is there some
> reason we can't just automatically promote a require to a declaration
> upon encountering the latter? Seems like we've talked about this
> before. Not sure whether that should happen within libsepol
> symtab_insert() or in the callers, e.g. declare_type().
>
I don't know, All I know is the compiler complains if it is there and
if it is not there. Catch 22. I end up going to great lengths to hack
around compiler errors...
>>
>> /usr/bin/checkmodule -M -m tmp/staff.tmp -o tmp/staff.mod
>> /usr/bin/checkmodule: loading policy configuration from tmp/staff.tmp
>> policy/modules/roles/staff.te":11:ERROR 'duplicate declaration of
>> type/attribute' at token 'staff_input_xevent_t' on line 66981:
>> #line 11
>> type staff_input_xevent_t;
>> /usr/bin/checkmodule: error(s) encountered while parsing configuration
>> make: *** [tmp/staff.mod] Error 1
>> error: Bad exit status from /var/tmp/rpm-tmp.86849 (%install)
>>
>>
>> RPM build errors:
>> Bad exit status from /var/tmp/rpm-tmp.86849 (%install)
>>
>>
>> Which is complaining about:
>>
>> interface(`xserver_use',`
>> gen_require(`
>> type $1_rootwindow_t;
>> attribute $1_x_domain, $1_input_xevent_type;
>> type $1_xserver_t, $1_xserver_tmpfs_t;
>> type $2_input_xevent_t;
>> ')
>>
>> typeattribute $2_input_xevent_t $1_input_xevent_type;
>>
>> ...
>>
>>
>> --
>> This message was distributed to subscribers of the selinux mailing list.
>> If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
>> the words "unsubscribe selinux" without quotes as the message.
--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.
next prev parent reply other threads:[~2008-06-23 11:17 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-06-05 15:11 Trying to get XAce policy straightened out but our tool chain is too broken to handle it Daniel J Walsh
2008-06-06 23:51 ` Eamon Walsh
2008-06-08 19:36 ` Ted X Toth
2008-06-16 14:10 ` Stephen Smalley
2008-06-23 11:17 ` Daniel J Walsh [this message]
2008-06-23 13:22 ` Christopher J. PeBenito
2008-06-25 18:28 ` Eamon Walsh
2008-06-30 14:40 ` Stephen Smalley
2008-06-30 20:09 ` Joshua Brindle
2008-07-03 15:18 ` Joshua Brindle
2008-07-03 16:12 ` Stephen Smalley
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=485F863B.1040603@redhat.com \
--to=dwalsh@redhat.com \
--cc=cpebenito@tresys.com \
--cc=jbrindle@tresys.com \
--cc=sds@tycho.nsa.gov \
--cc=selinux@tycho.nsa.gov \
/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.