home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Micro R&D 1
/
MicroRD-CD-ROM-Vol1-1994.iso
/
disktools
/
misc
/
mufs.lha
/
muFS
/
devel
/
multiuser.h
< prev
next >
Wrap
C/C++ Source or Header
|
1993-02-16
|
3KB
|
107 lines
#ifndef LIBRARIES_MULTIUSER_H
#define LIBRARIES_MULTIUSER_H
/*
** $Filename: libraries/multiuser.h $
** $Release: 0.2ß $
** $Revision: 39.0 $
**
** multiuser.library definitions
**
** (C) Copyright 1993 Geert Uytterhoeven
** All Rights Reserved
*/
#ifndef EXEC_TYPES_H
#include <exec/types.h>
#endif /* EXEC_TYPES_H */
#ifndef EXEC_LISTS_H
#include <exec/lists.h>
#endif /* EXEC_LISTS_H */
#ifndef EXEC_LIBRARIES_H
#include <exec/libraries.h>
#endif /* EXEC_LIBRARIES_H */
#ifndef LIBRARIES_DOS_H
#include <libraries/dos.h>
#endif /* LIBRARIES_DOS_H */
#ifndef GRAPHICS_TEXT_H
#include <graphics/text.h>
#endif /* GRAPHICS_TEXT_H */
#ifndef UTILITY_TAGITEM_H
#include <utility/tagitem.h>
#endif /* UTILITY_TAGITEM_H */
#define MULTIUSERNAME "multiuser.library"
#define MULTIUSERVERSION 39
#define muUSERIDSIZE (32) /* Maximum size for a UserID */
#define muPASSWORDSIZE (32) /* Maximum size for a Password */
#define muUSERNAMESIZE (220) /* Maximum size for a User Name */
#define muHOMEDIRSIZE (256) /* Maximum size for a Home Directory */
/*
* Reserved users/groups
*
* WARNING: a uid may NOT be zero, a gid may be zero
*/
#define muOWNER_NOBODY (0x00000000) /* no rights */
#define muOWNER_SYSTEM (0xffffffff) /* always owner */
#define muMASK_UID (0xffff0000) /* Mask for uid bits */
#define muMASK_GID (0x0000ffff) /* Mask for gid bits */
/*
* Tags for muLogoutA()/muLoginA()
*/
#define muT_Input (TAG_USER+1) /* filehandle - default is Input() */
#define muT_Output (TAG_USER+2) /* filehandle - default is Output() */
#define muT_Graphical (TAG_USER+3) /* boolean - default is FALSE */
#define muT_PubScrName (TAG_USER+4) /* name of public screen */
#define muT_Task (TAG_USER+5) /* name of a task */
#define muT_Own (TAG_USER+6) /* make a task of this user */
#define muT_Global (TAG_USER+7) /* change it for all tasks on the */
/* same level as this one */
#define muT_Quiet (TAG_USER+8) /* For muLogOutA(), don't give a */
/* login prompt, simply logout */
/*
* User Information Structure
*
* For future compatibility, you should ALWAYS use muAllocUserInfo()
* to allocate this structure. NEVER do it by yourself!!
*/
struct muUserInfo {
char UserID[muUSERIDSIZE];
UWORD uid;
UWORD gid;
char UserName[muUSERNAMESIZE];
char HomeDir[muHOMEDIRSIZE];
};
/*
* KeyTypes for muGetUserInfo
*/
#define muKeyType_First 0
#define muKeyType_Next 1
#define muKeyType_UserID 2 /* Case-sensitive */
#define muKeyType_uid 3
#define muKeyType_gid 4
#define muKeyType_gidNext 5
#define muKeyType_UserName 6 /* Case-insensitive */
#endif /* LIBRARIES_MULTIUSER_H */