Home | History | Annotate | Download | only in ap
      1 /*
      2  * hostapd / VLAN definition
      3  * Copyright (c) 2016, Jouni Malinen <j (at) w1.fi>
      4  *
      5  * This software may be distributed under the terms of the BSD license.
      6  * See README for more details.
      7  */
      8 
      9 #include "utils/includes.h"
     10 
     11 #include "utils/common.h"
     12 #include "ap/vlan.h"
     13 
     14 /* compare the two arguments, NULL is treated as empty
     15  * return zero iff they are equal
     16  */
     17 int vlan_compare(struct vlan_description *a, struct vlan_description *b)
     18 {
     19 	int i;
     20 	const int a_empty = !a || !a->notempty;
     21 	const int b_empty = !b || !b->notempty;
     22 
     23 	if (a_empty && b_empty)
     24 		return 0;
     25 	if (a_empty || b_empty)
     26 		return 1;
     27 	if (a->untagged != b->untagged)
     28 		return 1;
     29 	for (i = 0; i < MAX_NUM_TAGGED_VLAN; i++) {
     30 		if (a->tagged[i] != b->tagged[i])
     31 			return 1;
     32 	}
     33 	return 0;
     34 }
     35