home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gold Fish 2
/
goldfish_vol2_cd1.bin
/
files
/
util
/
misc
/
multiuser
/
src
/
library
/
config.h
< prev
next >
Wrap
C/C++ Source or Header
|
1994-03-07
|
3KB
|
114 lines
/************************************************************
* MultiUser - MultiUser Task/File Support System *
* --------------------------------------------------------- *
* Configuration *
* --------------------------------------------------------- *
* © Copyright 1993-1994 Geert Uytterhoeven *
* All Rights Reserved. *
************************************************************/
#include "multiuser.h"
/*
* DosType for the MultiUserFileSystem
*/
#define ID_MUFS_DISK (0x6D754653) /* 'muFS' */
/*
* MultiUserFileSystem Volumes
*/
struct muVolume {
struct muVolume *Next;
struct DosList *DosList; /* DosList for this muFS Volume */
struct MsgPort *Process; /* Process for this muFS Volume */
};
/*
* MultiUser Configuration
*/
struct muConfig {
ULONG Flags; /* See definitions below */
ULONG LogFlags; /* See definitions below */
UWORD PasswduidLevel; /* Lowest uid for users who can */
/* change their passwords */
UWORD PasswdgidLevel; /* Lowest gid for users who can */
/* change their passwords */
};
#define muCFGB_LimitDOSSetProtection (0) /* LimitDOSSetProtection */
#define muCFGB_Profile (1) /* Execute the .profile */
#define muCFGB_LastLoginReq (2) /* Display the lastlogin date */
#define muLogB_Startup (0) /* Startup Information */
#define muLogB_Login (1) /* Log successful Login/Logout */
#define muLogB_LoginFail (2) /* Log unsuccessful Login/Logout */
#define muLogB_Passwd (3) /* Log successful Passwd */
#define muLogB_PasswdFail (4) /* Log unsuccessful Passwd */
#define muLogB_CheckPasswd (5) /* Log successful CheckPasswd */
#define muLogB_CheckPasswdFail (6) /* Log unsuccessful CheckPasswd */
#define muCFGF_LimitDOSSetProtection (1<<muCFGB_LimitDOSSetProtection)
#define muCFGF_Profile (1<<muCFGB_Profile)
#define muCFGF_LastLoginReq (1<<muCFGB_LastLoginReq)
#define muLogF_Startup (1<<muLogB_Startup)
#define muLogF_Login (1<<muLogB_Login)
#define muLogF_LoginFail (1<<muLogB_LoginFail)
#define muLogF_Passwd (1<<muLogB_Passwd)
#define muLogF_PasswdFail (1<<muLogB_PasswdFail)
#define muLogF_CheckPasswd (1<<muLogB_CheckPasswd)
#define muLogF_CheckPasswdFail (1<<muLogB_CheckPasswdFail)
/*
* Private User Definition Entry
*/
struct muUserDef {
struct muUserDef *Next;
STRPTR UserID;
STRPTR Password;
UWORD uid;
UWORD gid;
STRPTR UserName;
STRPTR HomeDir;
STRPTR Shell;
UWORD NumSecGroups;
UWORD *SecGroups;
};
/*
* Private Group Definition Entry
*/
struct muGroupDef {
struct muGroupDef *Next;
STRPTR GroupID;
UWORD gid;
UWORD MgrUid;
STRPTR GroupName;
};
/*
* Function Prototypes
*/
extern struct muUserDef *GetUserDefs(void);
extern struct muGroupDef *GetGroupDefs(void);
extern void FreeDefs(void);
extern BOOL UpdateUserDefs(void);
extern BOOL InitVolumes(void);
extern void FreeVolumes(void);
extern BOOL CheckmuFSVolume(struct MsgPort *port);
extern void VLogF(STRPTR fmt, LONG *argv);