about summary refs log tree commit diff
path: root/src/n-dhcp4
diff options
context:
space:
mode:
Diffstat (limited to 'src/n-dhcp4')
-rw-r--r--src/n-dhcp4/src/n-dhcp4-c-connection.c14
-rw-r--r--src/n-dhcp4/src/n-dhcp4-client.c2
2 files changed, 9 insertions, 7 deletions
diff --git a/src/n-dhcp4/src/n-dhcp4-c-connection.c b/src/n-dhcp4/src/n-dhcp4-c-connection.c
index 5abd6f59..dd1a573a 100644
--- a/src/n-dhcp4/src/n-dhcp4-c-connection.c
+++ b/src/n-dhcp4/src/n-dhcp4-c-connection.c
@@ -543,12 +543,14 @@ static int n_dhcp4_c_connection_new_message(NDhcp4CConnection *connection,
         if (r)
                 return r;
 
-        r = n_dhcp4_outgoing_append(message,
-                                    N_DHCP4_OPTION_CLIENT_IDENTIFIER,
-                                    connection->client_config->client_id,
-                                    connection->client_config->n_client_id);
-        if (r)
-                return r;
+        if (connection->client_config->n_client_id > 0) {
+                r = n_dhcp4_outgoing_append(message,
+                                            N_DHCP4_OPTION_CLIENT_IDENTIFIER,
+                                            connection->client_config->client_id,
+                                            connection->client_config->n_client_id);
+                if (r)
+                        return r;
+        }
 
         switch (message_type) {
         case N_DHCP4_MESSAGE_DISCOVER:
diff --git a/src/n-dhcp4/src/n-dhcp4-client.c b/src/n-dhcp4/src/n-dhcp4-client.c
index 3b4a70c8..7689ba93 100644
--- a/src/n-dhcp4/src/n-dhcp4-client.c
+++ b/src/n-dhcp4/src/n-dhcp4-client.c
@@ -403,7 +403,7 @@ _c_public_ int n_dhcp4_client_new(NDhcp4Client **clientp, NDhcp4ClientConfig *co
                         return N_DHCP4_E_INVALID_TRANSPORT;
                 }
 
-                if (config->n_client_id < 1)
+                if (config->n_client_id != 0 && config->n_client_id < 2)
                         return N_DHCP4_E_INVALID_CLIENT_ID;
         }