From Craig.Payne@Sun.COM Tue Jun 19 11:50:02 2007
Date: Tue, 19 Jun 2007 11:42:51 -0700
From: Craig Payne <Craig.Payne@Sun.COM>
Subject: Re: Contract for using device allocation interfaces in TJDS
To: Gary Winiger <gww@eng.sun.com>
Cc: lbinchy@Sun.COM, gww@marduk.eng.sun.com, ashish.joshi@Sun.COM
Content-transfer-encoding: 7BIT
User-Agent: Thunderbird 1.5.0.5 (X11/20060925)

Approved.

From Leo.Binchy@Sun.COM Wed Jun 20 01:57:42 2007
Date: Wed, 20 Jun 2007 09:56:44 +0100
From: Leontine Binchy <Leo.Binchy@Sun.COM>
Subject: Re: Contract for using device allocation interfaces in TJDS
To: Gary Winiger <gww@eng.sun.com>
Cc: Craig.Payne@Sun.COM, lbinchy@Sun.COM, gww@marduk.eng.sun.com,
	ashish.joshi@Sun.COM
Content-transfer-encoding: 7BIT
User-Agent: Thunderbird 2.0.0.0 (X11/20070508)


I approve

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	CONTRACT ALLOWING/REQUIRING SPECIAL ARRANGEMENTS FOR INTERFACES

0.  Number:	PSARC/2007/332-01.

1.  This contract is between
	a SUPPLIER of INTERFACES and
	a CONSUMER of those INTERFACES,
    both of whom are entities within Sun Microsystems, Incorporated.

2.  The SUPPLIER (definer and/or implementor) is identified by the following:
    Product or Bundle: Solaris Device Allocation
    Consolidation: ON
    Department or Group: Solaris Security
    Bugster Product/Category/SubCategory: Solaris/c2_bsm/command
    Responsible Manager: Craig Payne

3.  The CONSUMER is identified by the following:
    Product or Bundle: Trusted Extensions
    Consolidation: GNOME
    Department or Group: JDS
    Bugster Product/Category/SubCategory: jds/gnome/trusted-ext
    Responsible Manager: Leo Binchy

4.  The INTERFACES are:
    allocate(1),
    deallocate(1),
    list_devices(1),
    add_allocatable(1M),
    remove_allocatable(1M),
    device_allocate(4),
    device_maps(4),
    device_clean(5).

5.  The ARC controlling these INTERFACES is: PSARC

6.  The CASE describing (Exporting) these INTERFACES is: 2005/691 and 2007/332

7.  The following SPECIAL ARRANGEMENTS are made which modify the rules
    imposed by the stability levels listed in section 4 above:
 
_N_ 7a. Although the stability level doesn't normally restrict it,
        SUPPLIER promises to only modify INTERFACES in an incompatible
	way as follows:

_N_ 7b. Although the stability level doesn't normally allow it, CONSUMER will
        expose INTERFACES to a PARTNER, which is external to Sun, namely:
		Name of Company:
		Name of Department or Group within Company:
		Responsible Manager:

_Y_ 7c. Although the stability level doesn't normally allow it, CONSUMER will
        import INTERFACES from a separate consolidation.

_N_ 7d. If SUPPLIER decides to change (including replace or remove) any
	portion of the INTERFACES, SUPPLIER will notify CONSUMER of the
	proposed new version, no later than the application for ARC
	approval of the new version.
	If SUPPLIER and CONSUMER are contained in the same consolidation,
	they have the option of arranging for simultaneous conversion
	to the new interfaces.  If this is not possible, or if they are
	not in the same consolidation, then SUPPLIER will either make best
	effort to work with CONSUMER so that CONSUMER can detect which
	version of INTERFACES is being supplied, or else SUPPLIER will
	make best effort to supply both old and new versions of
	INTERFACES.
	If SUPPLIER cannot make both versions of INTERFACES available,
	and SUPPLIER and CONSUMER cannot devise a method whereby
	CONSUMER can detect which version of INTERFACES is being
	supplied, and the old version of CONSUMER will not run with the
	new version of SUPPLIER, then either the EOL process must be
	followed by SUPPLIER, or else a major release of SUPPLIER will
	be required, or the change will not be allowed.

8. If CONSUMER requires changes in INTERFACES, SUPPLIER will make
   best effort to accommodate such changes, which shall then be
   treated in accordance with paragraph 7 above.

9. Notwithstanding paragraphs 7 and 8, a change to any portion
   of the INTERFACES shall be regarded as a completely new set of
   INTERFACES which require both ARC approval and execution of
   a new contract.

10. SUPPLIER and CONSUMER agree that evolution of INTERFACES shall be
    handled as follows:

    SUPPLIER will notify CONSUMER of changes that may affect the CONSUMER
    not less than two ON consolidation builds before the changes are
    integrated.
    CONSUMER may request changes to the INTERFACES by filing RFEs using
    the Bugster Product/Category/SubCategory specified in paragraph 2.
    The SUPPLIER will review the CONSUMER's RFEs based on their priority
    and severity and either accept them in the normal queue of work or
    notify the CONSUMER through the normal Bugster process that the request
    has been rejected and rationale for the rejection.

11. SUPPLIER and CONSUMER agree that INTERFACES will be supported as
    follows:

    The CONSUMER may submit bugs against the interfaces using the Bugster
    Product/Category/SubCategory specified in paragraph 2.  The SUPPLIER
    will fix bugs based on their priority and severity.

12. SUPPLIER and CONSUMER agree that INTERFACES will be documented as
    follows:

    Solaris man pages for the interfaces specified in paragraph 4.

13. SUPPLIER and CONSUMER agree that changes to the INTERFACES will be
    tested as follows:

    The SUPPLIER will do initial unit testing.

14. SUPPLIER and CONSUMER agree that this contract can be terminated as
    follows:

    By End-of-Feature process or by agreement of both parties.

15. This contract is not valid until "signed" via agreement from the
    SUPPLIER and CONSUMER, and approved by the ARC CASE referenced by
    this contract.  E-mail agreement to the contract should be archived
    in the mail archive of CASE; verbal agreement to the contract
    should be noted in the meeting minutes.  This contract remains
    valid until superseded or invalidated.

For SUPPLIER:	Craig Payne	Date: 19 June 2007
For CONSUMER:	Leo Binchy	Date: 20 June 2007
For ARC:	Gary Winiger	Date: 20 June 2007

    A copy of this contract shall be deposited in the CASE directory as
    "contract-01" or in a "contracts" subdirectory.

16. (Not to be filled in until superseded or invalidated.)
    This contract was superseded or invalidated by CASE:
    For ARC:			Date:

