void *srv_id = odhcp6c_get_state(STATE_SERVER_ID, &srv_id_len);
 
        // Build IA_PDs
-       size_t ia_pd_entries, ia_pd_len = 0;
+       size_t ia_pd_entries = 0, ia_pd_len = 0;
        uint8_t *ia_pd;
 
        if (type == DHCPV6_MSG_SOLICIT) {
 
 #include <syslog.h>
 #include <signal.h>
 #include <unistd.h>
+#include <inttypes.h>
 #include <arpa/inet.h>
 #include <netinet/in.h>
 
                inet_ntop(AF_INET6, &e[i].target, &buf[buf_len], INET6_ADDRSTRLEN);
                buf_len += strlen(&buf[buf_len]);
                if (type != ENTRY_HOST) {
-                       buf_len += snprintf(&buf[buf_len], 6, "/%hhu", e[i].length);
+                       buf_len += snprintf(&buf[buf_len], 6, "/%"PRIu16, e[i].length);
                        if (type == ENTRY_ROUTE) {
                                buf[buf_len++] = ',';
                                if (!IN6_IS_ADDR_UNSPECIFIED(&e[i].router)) {