Fixes #10431.
int main(int argc, char *argv[]) {
int i;
- char command[1024];
- char add[STRING_SIZE];
-
+ char command[STRING_SIZE] = "/var/ipfire/backup/bin/backup.pl";
+ char temp[STRING_SIZE];
+
if (!(initsetuid()))
exit(1);
- snprintf(command, STRING_SIZE, "/var/ipfire/backup/bin/backup.pl");
-
for (i = 1; i < argc; i++) {
- if (strstr(argv[i], "&&")){
- fprintf (stderr, "Bad Argument!\n");
- exit (1);
- }
- else if (strstr(argv[i], "|")){
- fprintf (stderr, "Bad Argument!\n");
- exit (1);
- }
- else if (argc > 3){
- fprintf (stderr, "Too Many Arguments!\n");
- exit (1);
+ if (strstr(argv[i], "&&")){
+ fprintf (stderr, "Bad Argument!\n");
+ exit (1);
+
+ } else if (strstr(argv[i], "|")) {
+ fprintf (stderr, "Bad Argument!\n");
+ exit (1);
+
+ } else if (argc > 3) {
+ fprintf (stderr, "Too Many Arguments!\n");
+ exit (1);
+
+ } else {
+ snprintf(temp, STRING_SIZE, "%s %s", command, argv[i]);
+ snprintf(command, STRING_SIZE, "%s", temp);
}
- else{
- sprintf(add, " %s", argv[i]);
- strcat(command, add);
- }
}
+
return safe_system(command);
}
int main(int argc, char *argv[]) {
int i;
- char command[1024];
- char add[STRING_SIZE];
-
+ char command[STRING_SIZE] = "/opt/pakfire/pakfire";
+ char temp[STRING_SIZE];
+
if (!(initsetuid()))
exit(1);
- snprintf(command, STRING_SIZE, "/opt/pakfire/pakfire");
-
for (i = 1; i < argc; i++) {
- sprintf(add, " %s", argv[i]);
- strcat(command, add);
+ snprintf(temp, STRING_SIZE, "%s %s", command, argv[i]);
+ snprintf(command, STRING_SIZE, "%s", temp);
}
-
+
return safe_system(command);
}
#include <fcntl.h>
#include "setuid.h"
-#define BUFFER_SIZE 1024
-
-char command[BUFFER_SIZE];
-
int main(int argc, char *argv[]) {
-
if (!(initsetuid()))
- exit(1);
+ exit(1);
- if (argc < 2) {
- fprintf(stderr, "\nNo argument given.\n\nsmartctrl <device>\n\n");
- exit(1);
- }
+ if (argc < 2) {
+ fprintf(stderr, "\nNo argument given.\n\nsmartctrl <device>\n\n");
+ exit(1);
+ }
+ char command[STRING_SIZE];
+ snprintf(command, STRING_SIZE, "/var/run/hddshutdown-%s", argv[1]);
- sprintf(command, "/var/run/hddshutdown-%s", argv[1]);
- FILE *fp = fopen(command,"r");
- if( fp ) {
+ FILE *fp = fopen(command, "r");
+ if (fp != NULL) {
fclose(fp);
+
printf("\nDisk %s is in Standby. Do nothing because we won't wakeup\n",argv[1]);
- exit(1);
+ exit(1);
}
- sprintf(command, "smartctl -iHA /dev/%s", argv[1]);
- safe_system(command);
+ snprintf(command, STRING_SIZE, "smartctl -iHA /dev/%s", argv[1]);
+ safe_system(command);
return 0;
}