mirror of
https://github.com/SEPPDROID/DR-DOS-OpenDOS.git
synced 2025-10-22 07:54:28 +00:00
152 lines
5.2 KiB
C
152 lines
5.2 KiB
C
/*
|
|
; File : $Workfile$
|
|
;
|
|
; Description :
|
|
;
|
|
; Original Author : DIGITAL RESEARCH
|
|
;
|
|
; Last Edited By : $CALDERA$
|
|
;
|
|
;-----------------------------------------------------------------------;
|
|
; Copyright Work of Caldera, Inc. All Rights Reserved.
|
|
;
|
|
; THIS WORK IS A COPYRIGHT WORK AND CONTAINS CONFIDENTIAL,
|
|
; PROPRIETARY AND TRADE SECRET INFORMATION OF CALDERA, INC.
|
|
; ACCESS TO THIS WORK IS RESTRICTED TO (I) CALDERA, INC. EMPLOYEES
|
|
; WHO HAVE A NEED TO KNOW TO PERFORM TASKS WITHIN THE SCOPE OF
|
|
; THEIR ASSIGNMENTS AND (II) ENTITIES OTHER THAN CALDERA, INC. WHO
|
|
; HAVE ACCEPTED THE CALDERA OPENDOS SOURCE LICENSE OR OTHER CALDERA LICENSE
|
|
; AGREEMENTS. EXCEPT UNDER THE EXPRESS TERMS OF THE CALDERA LICENSE
|
|
; AGREEMENT NO PART OF THIS WORK MAY BE USED, PRACTICED, PERFORMED,
|
|
; COPIED, DISTRIBUTED, REVISED, MODIFIED, TRANSLATED, ABRIDGED,
|
|
; CONDENSED, EXPANDED, COLLECTED, COMPILED, LINKED, RECAST,
|
|
; TRANSFORMED OR ADAPTED WITHOUT THE PRIOR WRITTEN CONSENT OF
|
|
; CALDERA, INC. ANY USE OR EXPLOITATION OF THIS WORK WITHOUT
|
|
; AUTHORIZATION COULD SUBJECT THE PERPETRATOR TO CRIMINAL AND
|
|
; CIVIL LIABILITY.
|
|
;-----------------------------------------------------------------------;
|
|
;
|
|
; *** Current Edit History ***
|
|
; *** End of Current Edit History ***
|
|
;
|
|
; $Log$
|
|
;
|
|
; ENDLOG
|
|
*/
|
|
|
|
/* the following constants are in alphabetical order */
|
|
#define ABORT_CODE 0
|
|
#define CR 0xd
|
|
#define CMNT_LGTH 32
|
|
#define DAY_LGTH 4
|
|
#define ENABLED 0xff
|
|
#define EOF_CHAR 0x1a
|
|
#define ENTER 0xd
|
|
#define FLAGS 0x0056 /* addr. Flag Table */
|
|
#define FNAME_LEN 12
|
|
#define LDATE_LGTH 11
|
|
#define LF 0xa
|
|
#define MAX_LINE 128
|
|
#define MXWIDTH 19
|
|
#define OKAY 0
|
|
#define PROCNAME_LGTH 12
|
|
#define ROOT_DIR "\\"
|
|
#define SEEK_END 2
|
|
#define STIME_LGTH 8
|
|
#define SUPERUSER 0
|
|
#define SUPERUSERSTR "0000"
|
|
#define TYPE_PAGE (flags & 1)
|
|
#define TIME_LGTH 8
|
|
#define USERID_LGTH 4
|
|
|
|
#define OWN_PROT_READ 0x0008 /* Owner */
|
|
#define OWN_PROT_WRITE 0x0004
|
|
#define OWN_PROT_EXEC 0x0002
|
|
#define OWN_PROT_DEL 0x0001
|
|
|
|
#define GRP_PROT_READ 0x0080 /* Group */
|
|
#define GRP_PROT_WRITE 0x0040
|
|
#define GRP_PROT_EXEC 0x0020
|
|
#define GRP_PROT_DEL 0x0010
|
|
|
|
#define WOR_PROT_READ 0x0800 /* World */
|
|
#define WOR_PROT_WRITE 0x0400
|
|
#define WOR_PROT_EXEC 0x0200
|
|
#define WOR_PROT_DEL 0x0100
|
|
|
|
#define ALL_PROT_READ 0x0888 /* Owner + Group + World */
|
|
#define ALL_PROT_WRITE 0x0444
|
|
#define ALL_PROT_EXEC 0x0222
|
|
#define ALL_PROT_DEL 0x0111
|
|
|
|
#define ALL_PROT 0x0FFF /* all groups, all access modes */
|
|
|
|
|
|
#define AUTOEXEC_BAT "AUTOEXEC.BAT"
|
|
|
|
EXTERN USER_INF_ENTRY user_info;
|
|
EXTERN UWORD station; /* station number */
|
|
|
|
EXTERN UBYTE login_enabled(VOID); /* LOGIN.C */
|
|
EXTERN VOID login_station(VOID); /* LOGIN.C */
|
|
EXTERN VOID login_consoles(VOID); /* LOGIN.C */
|
|
EXTERN VOID lock_station(VOID); /* LOGIN.C */
|
|
EXTERN WORD get_user_info(UWORD); /* LOGIN.C */
|
|
EXTERN VOID time_stamp(UBYTE**,UBYTE*,UBYTE*); /* LOGIN.C */
|
|
EXTERN VOID wait_for_enter(BOOLEAN); /* LOGIN.C */
|
|
EXTERN WORD logout_user(VOID); /* LOGIN.C */
|
|
EXTERN VOID login_save_initial_state(VOID); /* LOGIN.C */
|
|
EXTERN BOOLEAN chk_mail(VOID); /* LOGIN.C */
|
|
EXTERN UWORD aschextobin(BYTE*); /* LOGIN.C */
|
|
EXTERN WORD sysnamecmp(UBYTE*,UBYTE*); /* LOGIN.C */
|
|
EXTERN VOID logout(VOID); /* LOGIN.C */
|
|
EXTERN VOID lock(VOID); /* LOGIN.C */
|
|
EXTERN VOID cmd_logout(VOID); /* LOGIN.C */
|
|
EXTERN VOID cmd_lock(VOID); /* LOGIN.C */
|
|
EXTERN VOID logevent(UBYTE*,WORD); /* LOGIN.C */
|
|
EXTERN BOOLEAN logged_in(VOID); /* LOGIN.C */
|
|
EXTERN BOOLEAN waiting_on_login(VOID); /* LOGIN.C */
|
|
EXTERN UWORD get_user_on_station(VOID); /* LOGIN.C */
|
|
EXTERN BOOLEAN lock_requested(VOID); /* LOGIN.C */
|
|
|
|
|
|
EXTERN VOID error_code(UWORD); /* COM.C */
|
|
EXTERN VOID show_file(UWORD, BOOLEAN); /* COMINT.C */
|
|
EXTERN VOID CDECL cmd_set(BYTE *); /* COMINT.C */
|
|
EXTERN VOID CDECL cmd_cd(BYTE *); /* COMINT.C */
|
|
EXTERN VOID CDECL cmd_exit(BYTE *); /* COMINT.C */
|
|
|
|
EXTERN BOOLEAN CDECL ansi_screen(VOID); /* LOGINASM.ASM */
|
|
EXTERN VOID CDECL get_sys_path(UBYTE*); /* LOGINASM.ASM */
|
|
EXTERN UBYTE CDECL background_proc(VOID); /* LOGINASM.ASM */
|
|
EXTERN VOID CDECL disable_vc_switch(); /* LOGINASM.ASM */
|
|
EXTERN VOID CDECL enable_vc_switch(); /* LOGINASM.ASM */
|
|
EXTERN VOID CDECL disable(VOID); /* LOGINASM.ASM */
|
|
EXTERN VOID CDECL enable(VOID); /* LOGINASM.ASM */
|
|
EXTERN UWORD CDECL s_memory(UWORD); /* LOGINASM.ASM */
|
|
|
|
EXTERN UWORD CDECL heap_size(VOID); /* CSUP.ASM */
|
|
|
|
EXTERN PD FAR * CDECL pd; /* Far pointer to Current PD */
|
|
EXTERN UWORD CDECL sysdat_seg; /* System Data Page */
|
|
EXTERN UWORD _psp; /* PSP Segment */
|
|
|
|
struct qpb {
|
|
UWORD internal0;
|
|
UWORD id;
|
|
UWORD internal1;
|
|
UWORD *buffer;
|
|
UBYTE name[9];
|
|
} ;
|
|
|
|
struct apd {
|
|
UWORD pd; /* PD address */
|
|
UWORD term; /* Process termination Code */
|
|
UWORD cns; /* Console Number and Zero field*/
|
|
BYTE name[PROCNAME_LGTH+1]; /* Process Name */
|
|
};
|
|
|
|
|
|
|
|
|