diff --git a/lib/duo.c b/lib/duo.c
index 8fcf2fd..ff9fbd1 100644
--- a/lib/duo.c
+++ b/lib/duo.c
@@ -238,6 +238,20 @@
     return (ret);
 }
 
+static duo_code_t
+duo_add_optional_param(struct duo_ctx *ctx, const char *name, const char *value)
+{
+    /* Wrapper around duo_add_param for optional arguments.
+       If a parameter's value doesn't exist we don't add the param.
+    */
+    if (value == NULL || strlen(value) == 0) {
+        return DUO_OK;
+    }
+    else {
+        return duo_add_param(ctx, name, value);
+    }
+}
+
 static void
 _duo_seterr(struct duo_ctx *ctx, const char *fmt, ...)
 {
@@ -281,7 +295,7 @@
     char dns_fqdn[DNS_MAXNAMELEN];
     _duo_get_hostname(dns_fqdn, sizeof(dns_fqdn));
 
-    return duo_add_param(ctx, "hostname", dns_fqdn);
+    return duo_add_optional_param(ctx, "hostname", dns_fqdn);
 }
 
 #define _BSON_FIND(ctx, it, obj, name, type) do {           \
@@ -397,10 +411,8 @@
         return (DUO_LIB_ERROR);
     }
 
-    if (client_ip) {
-        if (duo_add_param(ctx, "ipaddr", client_ip) != DUO_OK) {
-            return (DUO_LIB_ERROR);
-        }
+    if (duo_add_optional_param(ctx, "ipaddr", client_ip) != DUO_OK) {
+        return (DUO_LIB_ERROR);
     }
 
     if(_duo_add_hostname_param(ctx) != DUO_OK) {
@@ -543,10 +555,8 @@
     }
 
     /* Add client IP, if passed in */
-    if (client_ip) {
-        if (duo_add_param(ctx, "ipaddr", client_ip) != DUO_OK) {
-            return (DUO_LIB_ERROR);
-        }
+    if (duo_add_optional_param(ctx, "ipaddr", client_ip) != DUO_OK) {
+        return (DUO_LIB_ERROR);
     }
 
     if(_duo_add_hostname_param(ctx) != DUO_OK) {
