summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfdd/ptm_adapter.c2
-rw-r--r--lib/if.c2
-rw-r--r--python/clidef.py2
-rw-r--r--tools/start-stop-daemon.c30
-rw-r--r--zebra/if_ioctl_solaris.c6
-rw-r--r--zebra/rtread_getmsg.c1
6 files changed, 21 insertions, 22 deletions
diff --git a/bfdd/ptm_adapter.c b/bfdd/ptm_adapter.c
index 4287891621..a5fae3383c 100644
--- a/bfdd/ptm_adapter.c
+++ b/bfdd/ptm_adapter.c
@@ -289,7 +289,7 @@ static int _ptm_msg_read(struct stream *msg, int command,
{
uint32_t pid;
uint8_t ttl __attribute__((unused));
- uint8_t ifnamelen;
+ size_t ifnamelen;
/*
* Register/Deregister/Update Message format:
diff --git a/lib/if.c b/lib/if.c
index 2bf0c6e6b5..a03c9da6f9 100644
--- a/lib/if.c
+++ b/lib/if.c
@@ -619,7 +619,7 @@ DEFUN (no_interface_desc,
* if not:
* - no idea, just get the name in its entirety.
*/
-static struct interface *if_sunwzebra_get(char *name, vrf_id_t vrf_id)
+static struct interface *if_sunwzebra_get(const char *name, vrf_id_t vrf_id)
{
struct interface *ifp;
char *cp;
diff --git a/python/clidef.py b/python/clidef.py
index 4134f4c94e..a140ce3d54 100644
--- a/python/clidef.py
+++ b/python/clidef.py
@@ -96,7 +96,7 @@ class IP4Handler(IPBase):
code = Template('_fail = !inet_aton(argv[_i]->arg, &$varname);')
class IP6Handler(IPBase):
argtype = 'struct in6_addr'
- decl = Template('struct in6_addr $varname = IN6ADDR_ANY_INIT;')
+ decl = Template('struct in6_addr $varname = {};')
code = Template('_fail = !inet_pton(AF_INET6, argv[_i]->arg, &$varname);')
class IPGenHandler(IPBase):
argtype = 'const union sockunion *'
diff --git a/tools/start-stop-daemon.c b/tools/start-stop-daemon.c
index e1cce85557..cc0315c130 100644
--- a/tools/start-stop-daemon.c
+++ b/tools/start-stop-daemon.c
@@ -607,7 +607,7 @@ static int pid_is_exec(pid_t pid, const struct stat *esb)
struct stat sb;
char buf[32];
- sprintf(buf, "/proc/%d/exe", pid);
+ sprintf(buf, "/proc/%ld/exe", (long)pid);
if (stat(buf, &sb) != 0)
return 0;
return (sb.st_dev == esb->st_dev && sb.st_ino == esb->st_ino);
@@ -619,7 +619,7 @@ static int pid_is_user(pid_t pid, uid_t uid)
struct stat sb;
char buf[32];
- sprintf(buf, "/proc/%d", pid);
+ sprintf(buf, "/proc/%ld", (long)pid);
if (stat(buf, &sb) != 0)
return 0;
return (sb.st_uid == uid);
@@ -632,7 +632,7 @@ static int pid_is_cmd(pid_t pid, const char *name)
FILE *f;
int c;
- sprintf(buf, "/proc/%d/stat", pid);
+ sprintf(buf, "/proc/%ld/stat", (long)pid);
f = fopen(buf, "r");
if (!f)
return 0;
@@ -664,12 +664,12 @@ static void check(pid_t pid)
static void do_pidfile(const char *name)
{
FILE *f;
- pid_t pid;
+ long pid;
f = fopen(name, "r");
if (f) {
- if (fscanf(f, "%d", &pid) == 1)
- check(pid);
+ if (fscanf(f, "%ld", &pid) == 1)
+ check((pid_t)pid);
fclose(f);
} else if (errno != ENOENT)
fatal("open pidfile %s: %s", name, strerror(errno));
@@ -682,7 +682,7 @@ static void do_procinit(void)
DIR *procdir;
struct dirent *entry;
int foundany;
- pid_t pid;
+ long pid;
procdir = opendir("/proc");
if (!procdir)
@@ -690,10 +690,10 @@ static void do_procinit(void)
foundany = 0;
while ((entry = readdir(procdir)) != NULL) {
- if (sscanf(entry->d_name, "%d", &pid) != 1)
+ if (sscanf(entry->d_name, "%ld", &pid) != 1)
continue;
foundany++;
- check(pid);
+ check((pid_t)pid);
}
closedir(procdir);
if (!foundany)
@@ -728,21 +728,21 @@ static void do_stop(int signal_nr, int quietmode, int *n_killed,
for (p = found; p; p = p->next) {
if (testmode)
- printf("Would send signal %d to %d.\n", signal_nr,
- p->pid);
+ printf("Would send signal %d to %ld.\n", signal_nr,
+ (long)p->pid);
else if (kill(p->pid, signal_nr) == 0) {
push(&killed, p->pid);
(*n_killed)++;
} else {
- printf("%s: warning: failed to kill %d: %s\n", progname,
- p->pid, strerror(errno));
+ printf("%s: warning: failed to kill %ld: %s\n",
+ progname, (long)p->pid, strerror(errno));
(*n_notkilled)++;
}
}
if (quietmode < 0 && killed) {
printf("Stopped %s (pid", what_stop);
for (p = killed; p; p = p->next)
- printf(" %d", p->pid);
+ printf(" %ld", (long)p->pid);
putchar(')');
if (retry_nr > 0)
printf(", retry #%d", retry_nr);
@@ -1055,7 +1055,7 @@ int main(int argc, char **argv)
if (pidf == NULL)
fatal("Unable to open pidfile `%s' for writing: %s",
pidfile, strerror(errno));
- fprintf(pidf, "%d\n", pidt);
+ fprintf(pidf, "%ld\n", (long)pidt);
fclose(pidf);
}
set_namespaces();
diff --git a/zebra/if_ioctl_solaris.c b/zebra/if_ioctl_solaris.c
index 5a58fe1751..7ec73ea111 100644
--- a/zebra/if_ioctl_solaris.c
+++ b/zebra/if_ioctl_solaris.c
@@ -39,6 +39,7 @@
#include "zebra/interface.h"
#include "zebra/ioctl_solaris.h"
#include "zebra/rib.h"
+#include "zebra/rt.h"
static int if_get_addr(struct interface *, struct sockaddr *, const char *);
static void interface_info_ioctl(struct interface *);
@@ -55,7 +56,6 @@ static int interface_list_ioctl(int af)
struct lifconf lifconf;
struct interface *ifp;
int n;
- int save_errno;
size_t needed, lastneeded = 0;
char *buf = NULL;
@@ -76,13 +76,11 @@ calculate_lifc_len:
lifn.lifn_flags = LIFC_NOXMIT;
/* we want NOXMIT interfaces too */
ret = ioctl(sock, SIOCGLIFNUM, &lifn);
- save_errno = errno;
-
}
if (ret < 0) {
zlog_warn("interface_list_ioctl: SIOCGLIFNUM failed %s",
- safe_strerror(save_errno));
+ safe_strerror(errno));
close(sock);
return -1;
}
diff --git a/zebra/rtread_getmsg.c b/zebra/rtread_getmsg.c
index b3aeaf2f76..8e5d7fbdbe 100644
--- a/zebra/rtread_getmsg.c
+++ b/zebra/rtread_getmsg.c
@@ -31,6 +31,7 @@
#include "zebra/rib.h"
#include "zebra/rt.h"
+#include "zebra/zebra_pbr.h"
/* Thank you, Solaris, for polluting application symbol namespace. */
#undef hook_register