Blame


1 5cdb1798 2005-10-29 devnull /*
2 5cdb1798 2005-10-29 devnull * System dependent header files for research
3 5cdb1798 2005-10-29 devnull */
4 5cdb1798 2005-10-29 devnull
5 5cdb1798 2005-10-29 devnull #include <u.h>
6 5cdb1798 2005-10-29 devnull #include <libc.h>
7 5cdb1798 2005-10-29 devnull #include <regexp.h>
8 5cdb1798 2005-10-29 devnull #include <bio.h>
9 605c0ea1 2006-02-08 devnull #include <libString.h>
10 5cdb1798 2005-10-29 devnull
11 5cdb1798 2005-10-29 devnull /*
12 5cdb1798 2005-10-29 devnull * for the lock routines in libsys.c
13 5cdb1798 2005-10-29 devnull */
14 5cdb1798 2005-10-29 devnull typedef struct Mlock Mlock;
15 5cdb1798 2005-10-29 devnull struct Mlock {
16 5cdb1798 2005-10-29 devnull int fd;
17 5cdb1798 2005-10-29 devnull int pid;
18 5cdb1798 2005-10-29 devnull String *name;
19 5cdb1798 2005-10-29 devnull };
20 5cdb1798 2005-10-29 devnull
21 5cdb1798 2005-10-29 devnull /*
22 605c0ea1 2006-02-08 devnull * from config.c - call upasconfig() before using
23 5cdb1798 2005-10-29 devnull */
24 a79cd783 2006-02-12 devnull extern char *_MAILROOT; /* root of mail system */
25 a79cd783 2006-02-12 devnull extern char *_UPASLOG; /* log directory */
26 a79cd783 2006-02-12 devnull extern char *_UPASLIB; /* upas library directory */
27 a79cd783 2006-02-12 devnull extern char *_UPASBIN; /* upas binary directory */
28 a79cd783 2006-02-12 devnull extern char *_UPASTMP; /* temporary directory */
29 a79cd783 2006-02-12 devnull extern char *_SHELL; /* path name of shell */
30 a79cd783 2006-02-12 devnull extern char *_POST; /* path name of post server addresses */
31 5cdb1798 2005-10-29 devnull extern int MBOXMODE; /* default mailbox protection mode */
32 605c0ea1 2006-02-08 devnull extern void upasconfig(void);
33 5cdb1798 2005-10-29 devnull
34 a79cd783 2006-02-12 devnull /* forgive me */
35 a79cd783 2006-02-12 devnull #define MAILROOT (upasconfig(), _MAILROOT)
36 a79cd783 2006-02-12 devnull #define UPASLOG (upasconfig(), _UPASLOG)
37 a79cd783 2006-02-12 devnull #define UPASLIB (upasconfig(), _UPASLIB)
38 a79cd783 2006-02-12 devnull #define UPASBIN (upasconfig(), _UPASBIN)
39 a79cd783 2006-02-12 devnull #define UPASTMP (upasconfig(), _UPASTMP)
40 a79cd783 2006-02-12 devnull #define SHELL (upasconfig(), _SHELL)
41 a79cd783 2006-02-12 devnull #define POST (upasconfig(), _POST)
42 a79cd783 2006-02-12 devnull
43 5cdb1798 2005-10-29 devnull /*
44 5cdb1798 2005-10-29 devnull * files in libsys.c
45 5cdb1798 2005-10-29 devnull */
46 5cdb1798 2005-10-29 devnull extern char *sysname_read(void);
47 5cdb1798 2005-10-29 devnull extern char *alt_sysname_read(void);
48 5cdb1798 2005-10-29 devnull extern char *domainname_read(void);
49 5cdb1798 2005-10-29 devnull extern char **sysnames_read(void);
50 5cdb1798 2005-10-29 devnull extern char *getlog(void);
51 5cdb1798 2005-10-29 devnull extern char *thedate(void);
52 5cdb1798 2005-10-29 devnull extern Biobuf *sysopen(char*, char*, ulong);
53 5cdb1798 2005-10-29 devnull extern int sysopentty(void);
54 5cdb1798 2005-10-29 devnull extern int sysclose(Biobuf*);
55 5cdb1798 2005-10-29 devnull extern int sysmkdir(char*, ulong);
56 5cdb1798 2005-10-29 devnull extern int syschgrp(char*, char*);
57 5cdb1798 2005-10-29 devnull extern Mlock *syslock(char *);
58 5cdb1798 2005-10-29 devnull extern void sysunlock(Mlock *);
59 5cdb1798 2005-10-29 devnull extern void syslockrefresh(Mlock *);
60 5cdb1798 2005-10-29 devnull extern int e_nonexistent(void);
61 5cdb1798 2005-10-29 devnull extern int e_locked(void);
62 5cdb1798 2005-10-29 devnull extern long sysfilelen(Biobuf*);
63 5cdb1798 2005-10-29 devnull extern int sysremove(char*);
64 5cdb1798 2005-10-29 devnull extern int sysrename(char*, char*);
65 5cdb1798 2005-10-29 devnull extern int sysexist(char*);
66 5cdb1798 2005-10-29 devnull extern int sysisdir(char*);
67 5cdb1798 2005-10-29 devnull extern int syskill(int);
68 5cdb1798 2005-10-29 devnull extern int syskillpg(int);
69 5cdb1798 2005-10-29 devnull extern int syscreate(char*, int, ulong);
70 5cdb1798 2005-10-29 devnull extern Mlock *trylock(char *);
71 5cdb1798 2005-10-29 devnull extern void pipesig(int*);
72 5cdb1798 2005-10-29 devnull extern void pipesigoff(void);
73 5cdb1798 2005-10-29 devnull extern int holdon(void);
74 5cdb1798 2005-10-29 devnull extern void holdoff(int);
75 5cdb1798 2005-10-29 devnull extern int syscreatelocked(char*, int, int);
76 5cdb1798 2005-10-29 devnull extern int sysopenlocked(char*, int);
77 5cdb1798 2005-10-29 devnull extern int sysunlockfile(int);
78 5cdb1798 2005-10-29 devnull extern int sysfiles(void);
79 5cdb1798 2005-10-29 devnull extern int become(char**, char*);
80 5cdb1798 2005-10-29 devnull extern int sysdetach(void);
81 5cdb1798 2005-10-29 devnull extern int sysdirreadall(int, Dir**);
82 5cdb1798 2005-10-29 devnull extern String *username(String*);
83 5cdb1798 2005-10-29 devnull extern char* remoteaddr(int, char*);
84 5cdb1798 2005-10-29 devnull extern int creatembox(char*, char*);
85 5cdb1798 2005-10-29 devnull
86 5cdb1798 2005-10-29 devnull extern String *readlock(String*);
87 5cdb1798 2005-10-29 devnull extern char *homedir(char*);
88 5cdb1798 2005-10-29 devnull extern String *mboxname(char*, String*);
89 5cdb1798 2005-10-29 devnull extern String *deadletter(String*);
90 5cdb1798 2005-10-29 devnull
91 5cdb1798 2005-10-29 devnull /*
92 5cdb1798 2005-10-29 devnull * maximum size for a file path
93 5cdb1798 2005-10-29 devnull */
94 5cdb1798 2005-10-29 devnull #define MAXPATHLEN 128