aboutsummaryrefslogtreecommitdiff
path: root/src/rc
diff options
context:
space:
mode:
authorRoy Marples <roy@marples.name>2008-01-09 23:22:04 +0000
committerRoy Marples <roy@marples.name>2008-01-09 23:22:04 +0000
commitddf25cbcb76bccbfe28d15f1e73c637becaa54e7 (patch)
tree6ade72713da143021e78a361c534d143b267707a /src/rc
parent06634f6309f07613cd6a086a6b383daad65192c0 (diff)
Compile without warnings on NetBSD
Diffstat (limited to 'src/rc')
-rw-r--r--src/rc/mountinfo.c29
-rw-r--r--src/rc/rc-logger.c5
-rw-r--r--src/rc/rc-misc.c4
-rw-r--r--src/rc/rc.c8
-rw-r--r--src/rc/runscript.c2
-rw-r--r--src/rc/start-stop-daemon.c2
6 files changed, 35 insertions, 15 deletions
diff --git a/src/rc/mountinfo.c b/src/rc/mountinfo.c
index 05ce8dd7..e7e29578 100644
--- a/src/rc/mountinfo.c
+++ b/src/rc/mountinfo.c
@@ -30,13 +30,16 @@
*/
#include <sys/types.h>
-
-#if defined(__DragonFly__) || defined(__FreeBSD__) || \
- defined(__NetBSD__) || defined(__OpenBSD__)
-#define BSD
#include <sys/param.h>
-#include <sys/ucred.h>
-#include <sys/mount.h>
+
+#if defined(__DragonFly__) || defined(__FreeBSD__)
+# include <sys/ucred.h>
+# include <sys/mount.h>
+# define F_FLAGS f_flags
+#elif defined(BSD)
+# include <sys/statvfs.h>
+# define statfs statvfs
+# define F_FLAGS f_flag
#elif defined (__linux__)
#include <mntent.h>
#endif
@@ -180,17 +183,29 @@ static struct opt {
{ MNT_NOATIME, "noatime" },
{ MNT_NOEXEC, "noexec" },
{ MNT_NOSUID, "nosuid" },
+#ifdef MNT_NOSYMFOLLOW
{ MNT_NOSYMFOLLOW, "nosymfollow" },
+#endif
{ MNT_QUOTA, "with quotas" },
{ MNT_RDONLY, "read-only" },
{ MNT_SYNCHRONOUS, "synchronous" },
{ MNT_UNION, "union" },
+#ifdef MNT_NOCLUSTERR
{ MNT_NOCLUSTERR, "noclusterr" },
+#endif
+#ifdef MNT_NOCLUSTERW
{ MNT_NOCLUSTERW, "noclusterw" },
+#endif
+#ifdef MNT_SUIDDIR
{ MNT_SUIDDIR, "suiddir" },
+#endif
{ MNT_SOFTDEP, "soft-updates" },
+#ifdef MNT_MULTILABEL
{ MNT_MULTILABEL, "multilabel" },
+#endif
+#ifdef MNT_ACLS
{ MNT_ACLS, "acls" },
+#endif
#ifdef MNT_GJOURNAL
{ MNT_GJOURNAL, "gjournal" },
#endif
@@ -212,7 +227,7 @@ static char **find_mounts (struct args *args)
for (i = 0; i < nmnts; i++) {
int netdev = 0;
- flags = mnts[i].f_flags & MNT_VISFLAGMASK;
+ flags = mnts[i].F_FLAGS & MNT_VISFLAGMASK;
for (o = optnames; flags && o->o_opt; o++) {
if (flags & o->o_opt) {
if (o->o_opt == MNT_LOCAL)
diff --git a/src/rc/rc-logger.c b/src/rc/rc-logger.c
index f4c610a2..0c48e444 100644
--- a/src/rc/rc-logger.c
+++ b/src/rc/rc-logger.c
@@ -31,6 +31,7 @@
*/
#include <sys/types.h>
+#include <sys/ioctl.h>
#include <sys/wait.h>
#include <ctype.h>
#include <fcntl.h>
@@ -44,6 +45,8 @@
#ifdef __linux__
# include <pty.h>
+#elif defined(__NetBSD__) || defined(__OpenBSD__)
+# include <util.h>
#else
# include <libutil.h>
#endif
@@ -99,7 +102,7 @@ static void write_log (int logfd, const char *buffer, size_t bytes)
continue;
}
- if (! in_term || isalpha (*p))
+ if (! in_term || isalpha ((int) *p))
in_escape = in_term = false;
cont:
p++;
diff --git a/src/rc/rc-misc.c b/src/rc/rc-misc.c
index 79db4323..3cfbe175 100644
--- a/src/rc/rc-misc.c
+++ b/src/rc/rc-misc.c
@@ -82,8 +82,8 @@ char *rc_conf_value (const char *setting)
STRLIST_FOREACH (rc_conf, line, i) {
char *p = line;
while (p && *p && *p != '=') {
- if (isupper (*p))
- *p = tolower (*p);
+ if (isupper ((int) *p))
+ *p = tolower ((int) *p);
p++;
}
}
diff --git a/src/rc/rc.c b/src/rc/rc.c
index c94bf11f..015dd86f 100644
--- a/src/rc/rc.c
+++ b/src/rc/rc.c
@@ -183,7 +183,7 @@ static int syslog_decode (char *name, CODE *codetab)
{
CODE *c;
- if (isdigit (*name))
+ if (isdigit ((int) *name))
return (atoi (name));
for (c = codetab; c->c_name; c++)
@@ -465,7 +465,7 @@ static int do_shell_var (int argc, char **argv)
while (*p) {
char c = *p++;
- if (! isalnum (c))
+ if (! isalnum ((int) c))
c = '_';
putchar (c);
}
@@ -1239,13 +1239,13 @@ int main (int argc, char **argv)
/* The mice are a little more tricky.
If we coldplug anything else, we'll probably do it here. */
- if ((dp == opendir ("/dev"))) {
+ if ((dp = opendir ("/dev"))) {
while ((d = readdir (dp))) {
if (strncmp (d->d_name, "psm", 3) == 0 ||
strncmp (d->d_name, "ums", 3) == 0)
{
char *p = d->d_name + 3;
- if (p && isdigit (*p)) {
+ if (p && isdigit ((int) *p)) {
i = (strlen ("moused.") + strlen (d->d_name) + 1);
tmp = xmalloc (sizeof (char) * i);
snprintf (tmp, i, "moused.%s", d->d_name);
diff --git a/src/rc/runscript.c b/src/rc/runscript.c
index 0e750c54..c688da43 100644
--- a/src/rc/runscript.c
+++ b/src/rc/runscript.c
@@ -49,6 +49,8 @@
#ifdef __linux__
# include <pty.h>
+#elif defined(__NetBSD__) || defined(__OpenBSD__)
+# include <util.h>
#else
# include <libutil.h>
#endif
diff --git a/src/rc/start-stop-daemon.c b/src/rc/start-stop-daemon.c
index bf03dbec..e0c55386 100644
--- a/src/rc/start-stop-daemon.c
+++ b/src/rc/start-stop-daemon.c
@@ -181,7 +181,7 @@ static void parse_schedule_item (schedulelist_t *item, const char *string)
if (strcmp (string,"forever") == 0)
item->type = schedule_forever;
- else if (isdigit (string[0])) {
+ else if (isdigit ((int) string[0])) {
item->type = schedule_timeout;
errno = 0;
if (sscanf (string, "%d", &item->value) != 1)