Re: [master] Introduces rsylogd to anaconda (part of #524980)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 01/08/2010 06:20 PM, Chris Lumens wrote:
+    status = system("/sbin/rsyslogd -c 4n -N1");
+    dup2(stderr_dup, 2); /* restore stderr */
+    if (status<  0 ||
+        !WIFEXITED(status) ||
+        WEXITSTATUS(status)  != 0) {
+        printf("Unable to start syslog daemon due to its configuration file "
+               "being corrupted. Did you pass in a wrong \"syslog=\"?\n");
+        fatal_error(1);

I'm not sure this error message means much to most people - who's really
going to care about the syslog configuration file?  What kind of
malformed syslog= errors are you expecting here, and is it possible to
validate the parameter in getSyslog?


I am worried that the user could pass in a semicolon, whitespace or double quotes which could confuse rsyslog and break logging (even though I can't see a reason why one would do that). Of course we can avoid the test run completely by testing the syslogd parameter to only contain valid address characters (ipv4, ipv6 or a server name). I would do it in getSyslog() as you suggest:

    if (!g_regex_match_simple("^[\\w.:/\\-\\[\\]]*$", addr, 0, 0)) {
        /* the parameter is malformed, disable its use */
        addr[0] = '\0';
printf("The syslog= command line parameter is malformed and will be\n");
        printf("ignored by the installer.\n");
        sleep(5);
    }

(it is also possible to have a loop instead of the regular expression)

If you'll agree with solving it this way I will do one more testing compose to make sure that everything's still fine.

Ales

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/anaconda-devel-list

[Index of Archives]     [Kickstart]     [Fedora Users]     [Fedora Legacy List]     [Fedora Maintainers]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]
  Powered by Linux