core: allow VLAN ids between 1 and 4095
authorBeniamino Galvani <bgalvani@redhat.com>
Fri, 22 Jan 2016 10:11:59 +0000 (11:11 +0100)
committerBeniamino Galvani <bgalvani@redhat.com>
Fri, 22 Jan 2016 10:17:44 +0000 (11:17 +0100)
nm_utils_new_vlan_name() should reject the reserved VLAN id 4095, and
the test case should not test reserved values 0 and 4095.

Fixes: 778207f23eb2ac022b2ee47968a484fdb94626fe

src/NetworkManagerUtils.c
src/tests/test-general-with-expect.c

index 14ed35e..dd7467c 100644 (file)
@@ -2155,7 +2155,7 @@ nm_utils_new_vlan_name (const char *parent_iface, guint32 vlan_id)
        else if (vlan_id < 1000)
                id_len = 4;
        else {
-               g_return_val_if_fail (vlan_id < 4096, NULL);
+               g_return_val_if_fail (vlan_id < 4095, NULL);
                id_len = 5;
        }
 
index 3ec9df4..31afd62 100644 (file)
@@ -879,7 +879,8 @@ test_nm_utils_new_vlan_name (void)
                        gs_free char *vlan_id_s = NULL;
                        guint vlan_id;
 
-                       vlan_id = nmtst_get_rand_int () % 4096;
+                       /* Create a random VLAN id between 1 and 4094 */
+                       vlan_id = 1 + nmtst_get_rand_int () % 4094;
 
                        vlan_id_s = g_strdup_printf (".%d", vlan_id);