added curfreq check and started laying down the main loop
This commit is contained in:
parent
2cd6dd4b71
commit
58c0d9f503
|
@ -88,6 +88,17 @@ int countblanks(char line[]){
|
||||||
return j;
|
return j;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void newlinetonullbyte(char string[]){
|
||||||
|
int i = 0;
|
||||||
|
while (string[i] != '\0'){
|
||||||
|
if (string[i] == '\n'){
|
||||||
|
string[i] = '\0';
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
int main(int argc, char** argv){
|
int main(int argc, char** argv){
|
||||||
/* check for no arguments or help */
|
/* check for no arguments or help */
|
||||||
if (argc == 1 || comparestrings(argv[1], "-h") == 0
|
if (argc == 1 || comparestrings(argv[1], "-h") == 0
|
||||||
|
@ -153,13 +164,53 @@ int main(int argc, char** argv){
|
||||||
/* free memory and close file */
|
/* free memory and close file */
|
||||||
free(freqsfilec);
|
free(freqsfilec);
|
||||||
fclose(freqsfile);
|
fclose(freqsfile);
|
||||||
|
/* try to open scaling_maximum_frequency, exit on fail */
|
||||||
|
FILE* curmaxfile = fopen(MAXSPDPATH, "r");
|
||||||
|
if (curmaxfile == NULL){
|
||||||
|
fprintf(stderr, "error: couldn't open scaling_maximum_frequency\n");
|
||||||
|
fprintf(stderr, " check that you have support for cpufreq\n");
|
||||||
|
fprintf(stderr, " in your kernel and that the program is\n");
|
||||||
|
fprintf(stderr, " running as root\n");
|
||||||
|
return 5;
|
||||||
|
}
|
||||||
|
/* assign content of curmaxfile to a temporary char array */
|
||||||
|
char *curmaxfreq = malloc(sizeof(char) * 20);
|
||||||
|
getfilec(curmaxfile, curmaxfreq);
|
||||||
|
newlinetonullbyte(curmaxfreq);
|
||||||
|
/* figure out what step we're on */
|
||||||
|
int curstep = -1;
|
||||||
|
for(i = 0; i < stepc; i++){
|
||||||
|
if (comparestrings(steps[i], curmaxfreq) == 0){
|
||||||
|
curstep = i;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/* free memory and close file */
|
||||||
|
free(curmaxfreq);
|
||||||
|
fclose(curmaxfile);
|
||||||
|
/* check if we didn't find our current step, exit on fail */
|
||||||
|
if (curstep == -1){
|
||||||
|
fprintf(stderr, "error: couldn't figure out the current frequency\n");
|
||||||
|
fprintf(stderr, " check that you have support for cpufreq\n");
|
||||||
|
fprintf(stderr, " in your kernel and that the program is\n");
|
||||||
|
fprintf(stderr, " running as root\n");
|
||||||
|
return 6;
|
||||||
|
}
|
||||||
|
FILE* curtempfile;
|
||||||
/* from here onwards an infinite while loop should start */
|
/* from here onwards an infinite while loop should start */
|
||||||
|
while((curtempfile = fopen(CURTEMPPATH, "r")) != NULL){
|
||||||
|
char* temperature = malloc(sizeof(char) * 8);
|
||||||
|
getfilec(curtempfile, temperature);
|
||||||
|
newlinetonullbyte(temperature);
|
||||||
|
if (stringtoint(temperature, stringlength(temperature)) >= maxtemp
|
||||||
|
&& curstep <= stepc){
|
||||||
|
}
|
||||||
|
free(temperature);
|
||||||
|
fclose(curtempfile);
|
||||||
|
}
|
||||||
/* cleanup for graceful exit */
|
/* cleanup for graceful exit */
|
||||||
free(steps);
|
free(steps);
|
||||||
FILE* curmaxfile = fopen(MAXSPDPATH, "r");
|
FILE* setspeedfile = fopen(SETSPDPATH, "w");
|
||||||
FILE* setspeedfile = fopen(SETSPDPATH, "r");
|
|
||||||
FILE* curtempfile = fopen(CURTEMPPATH, "r");
|
|
||||||
fclose(curmaxfile);
|
|
||||||
fclose(setspeedfile);
|
fclose(setspeedfile);
|
||||||
fclose(curtempfile);
|
fclose(curtempfile);
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Reference in New Issue