librc: Do not output error messages from within the library.

This fixes a compile issue. Also, it is cleaner to have the client
output error messages as opposed to having the library do this.

Reported-by: Ewoud Kohl van Wijngaarden <gentoo@kohlvanwijngaarden.nl>
X-Gentoo-Bug: 409743
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=409743
This commit is contained in:
William Hubbs 2012-03-26 15:04:40 -05:00
parent f9162438bc
commit 300c03203d
2 changed files with 10 additions and 9 deletions

View File

@ -29,7 +29,6 @@
*/ */
#include "librc.h" #include "librc.h"
#include "einfo.h"
bool bool
rc_yesno(const char *value) rc_yesno(const char *value)
@ -139,15 +138,13 @@ rc_proc_getent(const char *ent)
if (!exists("/proc/cmdline")) if (!exists("/proc/cmdline"))
return NULL; return NULL;
if (!(fp = fopen("/proc/cmdline", "r"))) { if (!(fp = fopen("/proc/cmdline", "r")))
eerror("failed to open `/proc/cmdline': %s", strerror(errno));
return NULL; return NULL;
}
proc = NULL; proc = NULL;
i = 0; i = 0;
if (rc_getline(&proc, &i, fp) == -1 || proc == NULL) if (rc_getline(&proc, &i, fp) == -1 || proc == NULL)
eerror("rc_getline: %s", strerror(errno)); return NULL;
if (proc != NULL) { if (proc != NULL) {
len = strlen(ent); len = strlen(ent);
@ -394,13 +391,10 @@ rc_conf_value(const char *setting)
atexit(_free_rc_conf); atexit(_free_rc_conf);
#endif #endif
/* Support old configs, but complain about it. */ /* Support old configs. */
if (exists(RC_CONF_OLD)) { if (exists(RC_CONF_OLD)) {
old = rc_config_load(RC_CONF_OLD); old = rc_config_load(RC_CONF_OLD);
TAILQ_CONCAT(rc_conf, old, entries); TAILQ_CONCAT(rc_conf, old, entries);
ewarn("Your system still has %s", RC_CONF_OLD);
ewarn("Please migrate to the appropriate settings in %s", RC_CONF);
ewarn("and delete %s.", RC_CONF_OLD);
#ifdef DEBUG_MEMORY #ifdef DEBUG_MEMORY
free(old); free(old);
#endif #endif

View File

@ -793,6 +793,13 @@ main(int argc, char **argv)
env_filter(); env_filter();
env_config(); env_config();
/* complain about old configuration settings if they exist */
if (exists(RC_CONF_OLD)) {
ewarn("%s still exists on your system and should be removed.",
RC_CONF_OLD);
ewarn("Please migrate to the appropriate settings in %s", RC_CONF);
}
argc++; argc++;
argv--; argv--;
while ((opt = getopt_long(argc, argv, getoptstring, while ((opt = getopt_long(argc, argv, getoptstring,