|
Lines 101-106
void setStateToDefaults() {
Link Here
|
| 101 |
} |
101 |
} |
| 102 |
|
102 |
|
| 103 |
bool loadConfig() { |
103 |
bool loadConfig() { |
|
|
104 |
uid_t euid; |
| 105 |
gid_t egid; |
| 104 |
setStateToDefaults(); |
106 |
setStateToDefaults(); |
| 105 |
windX=10; |
107 |
windX=10; |
| 106 |
windY=30; |
108 |
windY=30; |
|
Lines 114-119
bool loadConfig() {
Link Here
|
| 114 |
struct passwd *passWord = getpwuid(getuid()); |
116 |
struct passwd *passWord = getpwuid(getuid()); |
| 115 |
if (passWord == 0) return false; |
117 |
if (passWord == 0) return false; |
| 116 |
|
118 |
|
|
|
119 |
// drop privileges prior to creating file. |
| 120 |
euid = geteuid(); |
| 121 |
egid = getegid(); |
| 122 |
|
| 123 |
setuid(getuid()); |
| 124 |
setgid(getgid()); |
| 125 |
|
| 117 |
char *fileName = new char[strlen(passWord->pw_dir) + 20]; |
126 |
char *fileName = new char[strlen(passWord->pw_dir) + 20]; |
| 118 |
strcpy(fileName,passWord->pw_dir); |
127 |
strcpy(fileName,passWord->pw_dir); |
| 119 |
strcat(fileName,"/.synaesthesia"); |
128 |
strcat(fileName,"/.synaesthesia"); |
|
Lines 144-149
bool loadConfig() {
Link Here
|
| 144 |
} |
153 |
} |
| 145 |
fclose(f); |
154 |
fclose(f); |
| 146 |
|
155 |
|
|
|
156 |
setuid(euid); |
| 157 |
setgid(egid); |
| 158 |
|
| 147 |
if (windWidth < 1) |
159 |
if (windWidth < 1) |
| 148 |
windWidth = DefaultWidth; |
160 |
windWidth = DefaultWidth; |
| 149 |
if (windHeight < 1) |
161 |
if (windHeight < 1) |