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