]> git.decadent.org.uk Git - odhcp6c.git/blobdiff - src/script.c
Add a missing cast for some platforms
[odhcp6c.git] / src / script.c
index 2a34ea00191e62779d58a91aa5d7aa7cdd80b93b..66a15a770ac1d0088b88cb7b0adad4842e539f9f 100644 (file)
@@ -16,6 +16,7 @@
 #include <resolv.h>
 #include <stdlib.h>
 #include <string.h>
+#include <syslog.h>
 #include <unistd.h>
 #include <arpa/inet.h>
 #include <netinet/in.h>
@@ -57,7 +58,8 @@ ssize_t script_unhexlify(uint8_t *dst, size_t len, const char *src)
                                || y < 0 || (y = hexvals[y]) < 0)
                        return -1;
                dst[c] = x << 4 | y;
-               while (*src < 0 || (*src && hexvals[(uint8_t)*src] < 0))
+               while (((int8_t)*src) < 0 ||
+                               (*src && hexvals[(uint8_t)*src] < 0))
                        src++;
        }
 
@@ -156,6 +158,7 @@ static void prefix_to_env(const char *name, const uint8_t *fqdn, size_t len)
 
 void script_call(const char *status)
 {
+       syslog(LOG_WARNING, "State for %s changed to %s", argv[1], status);
        size_t dns_len, search_len, custom_len;
        struct in6_addr *dns = odhcp6c_get_state(STATE_DNS, &dns_len);
        uint8_t *search = odhcp6c_get_state(STATE_SEARCH, &search_len);