1 /* platform-specific header file, linux version */
2 
3 #ifndef __OS_H__
4 #define __OS_H__
5 
6 #define UNIX
7 #define LINUX
8 #define OS "Linux"
9 #define dirSepC '/'
10 #define dirSepS "/"
11 #define osDir "linux"
12 #define osTmpDir "/tmp/"
13 
14 extern char *defaults[numIdx];
15 
16 #define numZipFiles 12
17 char *zipFiles[numZipFiles];
18 
19 #define numPrograms 8
20 char *programs[numPrograms];
21 
22 #define numNeededPrograms 2
23 char *neededPrograms[numNeededPrograms];
24 
25 #define numMakeCfgFiles 2
26 tCfgFileMap makeCfgFiles[numMakeCfgFiles];
27 
28 #define numGlobalCfgFiles 7
29 tCfgFileMap globalCfgFiles[numGlobalCfgFiles];
30 
31 
32 // returns 0 if file exists
33 int fexist(char *fname);
34 
35 // returns 0 if directory exists
36 int direxist(char *dname);
37 
38 // returns 0 if successfull
39 int copyFile(char *sourceName, char *destName);
40 
41 // returns 0 if successfull
42 int touchFile(char *fname);
43 
44 // returns 0 if successfull
45 int linkFile(char *source, char *dest);
46 
47 // display a file
48 void showFile(char *fname);
49 
50 // get the contents of a file
51 char *readFile(char *fname);
52 
53 // create directory and parent directories (if needed), returns 0 if
54 // successfull
55 int mkdirp(char *dirname);
56 
57 // unpack archive into current directory
58 // returns 0 if successfull
59 int unpackFile(char *fname);
60 
61 void waitForKey();
62 
63 // checks if all a program is installed, returns 0 if found
64 int checkprogram(char *name);
65 
66 // returns 0 if successfull
67 int createusers();
68 
69 // set access rights
70 void setMode(char *fname, int mode);
71 
72 // set default permission mask
73 void setUmask(int mask);
74 
75 // set user and group
76 void setOwner(char *path, char *userName, char *groupName);
77 
78 // returns 0 if successfull
79 int createUserConfig(char *userName, char *groupName);
80 
81 // returns 0 if successfull
82 int createSystemConfigPrecompile();
83 
84 // returns 0 if successfull
85 int createSystemConfigAfterInstall();
86 
87 // returns 0 if user has root privileges
88 int checkRootAccess();
89 
90 // call a function as the specified user and group
91 int callAsUser(char *userName, char *groupName,
92 	       int func(char *userName, char *groupName) );
93 
94 // returns 0 on success
95 int setVar(char *varName, char *content);
96 
97 char *getVar(char *varName);
98 
99 // returns 0 if successfull
100 int compileNodelists(char *userName, char *groupName);
101 
102 // clear screen
103 void clrscr();
104 
105 // init os-dependent variables, do os-dep. checks
106 int osInit();
107 
108 // free os-dependent variables
109 void osDone();
110 
111 #endif
112 
113