Net2/usr/src/contrib/isode/others/lookup/lookup.ry

-- lookup.ry - the ISODE password lookup demo

-- $Header: /f/osi/others/lookup/RCS/lookup.ry,v 7.1 91/02/22 09:27:33 mrose Interim $
--
--
-- $Log:	lookup.ry,v $
-- Revision 7.1  91/02/22  09:27:33  mrose
-- Interim 6.8
-- 
-- Revision 7.0  89/11/23  22:56:37  mrose
-- Release 6.0
-- 

--
--				  NOTICE
--
--    Acquisition, use, and distribution of this module and related
--    materials are subject to the restrictions of a license agreement.
--    Consult the Preface in the User's Manual for the full terms of
--    this agreement.
--
--


PasswordLookup DEFINITIONS ::=

BEGIN

-- operations

			-- given a user name, return a Passwd type
lookupUser OPERATION
	ARGUMENT	UserName
	RESULT		Passwd
	ERRORS		{ noSuchUser, congested }
	::=		0

			-- given a user ID, return a Passwd type
lookupUID OPERATION
	ARGUMENT	UserID
	RESULT		Passwd
	ERRORS		{ noSuchUser, congested }
	::=		1


-- errors

			-- no matching user in the database
noSuchUser ERROR
	::=		0

			-- congestion at responder
congested ERROR
	::=		1


-- types

			-- similar to an entry in <pwd.h>
Passwd ::=
    [APPLICATION 1]
	IMPLICIT SEQUENCE {
	    name[0]
		IMPLICIT UserName,

	    passwd[1]
		IMPLICIT IA5String
		OPTIONAL,

	    uid[2]
		IMPLICIT UserID,

	    gid[3]
		IMPLICIT GroupID,

	    quota[4]
		IMPLICIT INTEGER
		DEFAULT 0,
	    
	    comment[5]
		IMPLICIT IA5String
		OPTIONAL,

	    gecos[6]
		IMPLICIT IA5String
		OPTIONAL,

	    dir[7]
		IMPLICIT IA5String
		OPTIONAL,

	    shell[8]
		IMPLICIT IA5String
		OPTIONAL
	}

UserName ::=
    [APPLICATION 2]
	IMPLICIT GraphicString

UserID ::=
    [APPLICATION 3]
	IMPLICIT INTEGER

GroupID ::=
    [APPLICATION 4]
	IMPLICIT INTEGER

END