|
Packit Service |
639700 |
// SPDX-License-Identifier: GPL-2.0+
|
|
Packit |
fabffb |
/* NetworkManager Applet -- allow user control over networking
|
|
Packit |
fabffb |
*
|
|
Packit |
fabffb |
* Dan Williams <dcbw@redhat.com>
|
|
Packit |
fabffb |
*
|
|
Packit |
fabffb |
* (C) Copyright 2009 Red Hat, Inc.
|
|
Packit |
fabffb |
*/
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
#include "nm-default.h"
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
#include <string.h>
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
#include "utils.h"
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
#include "nm-utils/nm-test-utils.h"
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
typedef struct {
|
|
Packit |
fabffb |
char *foobar_infra_open;
|
|
Packit |
fabffb |
char *foobar_infra_wep;
|
|
Packit |
fabffb |
char *foobar_infra_wpa;
|
|
Packit |
fabffb |
char *foobar_infra_rsn;
|
|
Packit |
fabffb |
char *foobar_infra_wpa_rsn;
|
|
Packit |
fabffb |
char *foobar_adhoc_open;
|
|
Packit |
fabffb |
char *foobar_adhoc_wep;
|
|
Packit |
fabffb |
char *foobar_adhoc_wpa;
|
|
Packit |
fabffb |
char *foobar_adhoc_rsn;
|
|
Packit |
fabffb |
char *foobar_adhoc_wpa_rsn;
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
char *asdf11_infra_open;
|
|
Packit |
fabffb |
char *asdf11_infra_wep;
|
|
Packit |
fabffb |
char *asdf11_infra_wpa;
|
|
Packit |
fabffb |
char *asdf11_infra_rsn;
|
|
Packit |
fabffb |
char *asdf11_infra_wpa_rsn;
|
|
Packit |
fabffb |
char *asdf11_adhoc_open;
|
|
Packit |
fabffb |
char *asdf11_adhoc_wep;
|
|
Packit |
fabffb |
char *asdf11_adhoc_wpa;
|
|
Packit |
fabffb |
char *asdf11_adhoc_rsn;
|
|
Packit |
fabffb |
char *asdf11_adhoc_wpa_rsn;
|
|
Packit |
fabffb |
} TestData;
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static GBytes *
|
|
Packit |
fabffb |
string_to_ssid (const char *str)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (str != NULL);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
return g_bytes_new (str, strlen (str));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static char *
|
|
Packit |
fabffb |
make_hash (const char *str,
|
|
Packit |
fabffb |
NM80211Mode mode,
|
|
Packit |
fabffb |
guint32 flags,
|
|
Packit |
fabffb |
guint32 wpa_flags,
|
|
Packit |
fabffb |
guint32 rsn_flags)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
GBytes *ssid;
|
|
Packit |
fabffb |
char *hash, *hash2;
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
ssid = string_to_ssid (str);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
hash = utils_hash_ap (ssid, mode, flags, wpa_flags, rsn_flags);
|
|
Packit |
fabffb |
g_assert (hash != NULL);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
hash2 = utils_hash_ap (ssid, mode, flags, wpa_flags, rsn_flags);
|
|
Packit |
fabffb |
g_assert (hash2 != NULL);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
/* Make sure they are the same each time */
|
|
Packit |
fabffb |
g_assert (!strcmp (hash, hash2));
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
g_bytes_unref (ssid);
|
|
Packit |
fabffb |
return hash;
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
make_ssid_hashes (const char *ssid,
|
|
Packit |
fabffb |
NM80211Mode mode,
|
|
Packit |
fabffb |
char **open,
|
|
Packit |
fabffb |
char **wep,
|
|
Packit |
fabffb |
char **wpa,
|
|
Packit |
fabffb |
char **rsn,
|
|
Packit |
fabffb |
char **wpa_rsn)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
*open = make_hash (ssid, mode,
|
|
Packit |
fabffb |
NM_802_11_AP_FLAGS_NONE,
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_NONE,
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_NONE);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
*wep = make_hash (ssid, mode,
|
|
Packit |
fabffb |
NM_802_11_AP_FLAGS_PRIVACY,
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_NONE,
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_NONE);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
*wpa = make_hash (ssid, mode,
|
|
Packit |
fabffb |
NM_802_11_AP_FLAGS_PRIVACY,
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_PAIR_TKIP |
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_GROUP_TKIP |
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_KEY_MGMT_PSK,
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_NONE);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
*rsn = make_hash (ssid, mode,
|
|
Packit |
fabffb |
NM_802_11_AP_FLAGS_PRIVACY,
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_NONE,
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_PAIR_CCMP |
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_GROUP_CCMP |
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_KEY_MGMT_PSK);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
*wpa_rsn = make_hash (ssid, mode,
|
|
Packit |
fabffb |
NM_802_11_AP_FLAGS_PRIVACY,
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_PAIR_TKIP |
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_GROUP_TKIP |
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_KEY_MGMT_PSK,
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_PAIR_CCMP |
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_GROUP_CCMP |
|
|
Packit |
fabffb |
NM_802_11_AP_SEC_KEY_MGMT_PSK);
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static TestData *
|
|
Packit |
fabffb |
test_data_new (void)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
TestData *d;
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
d = g_malloc0 (sizeof (TestData));
|
|
Packit |
fabffb |
g_assert (d);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
make_ssid_hashes ("foobar", NM_802_11_MODE_INFRA,
|
|
Packit |
fabffb |
&d->foobar_infra_open,
|
|
Packit |
fabffb |
&d->foobar_infra_wep,
|
|
Packit |
fabffb |
&d->foobar_infra_wpa,
|
|
Packit |
fabffb |
&d->foobar_infra_rsn,
|
|
Packit |
fabffb |
&d->foobar_infra_wpa_rsn);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
make_ssid_hashes ("foobar", NM_802_11_MODE_ADHOC,
|
|
Packit |
fabffb |
&d->foobar_adhoc_open,
|
|
Packit |
fabffb |
&d->foobar_adhoc_wep,
|
|
Packit |
fabffb |
&d->foobar_adhoc_wpa,
|
|
Packit |
fabffb |
&d->foobar_adhoc_rsn,
|
|
Packit |
fabffb |
&d->foobar_adhoc_wpa_rsn);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
make_ssid_hashes ("asdf11", NM_802_11_MODE_INFRA,
|
|
Packit |
fabffb |
&d->asdf11_infra_open,
|
|
Packit |
fabffb |
&d->asdf11_infra_wep,
|
|
Packit |
fabffb |
&d->asdf11_infra_wpa,
|
|
Packit |
fabffb |
&d->asdf11_infra_rsn,
|
|
Packit |
fabffb |
&d->asdf11_infra_wpa_rsn);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
make_ssid_hashes ("asdf11", NM_802_11_MODE_ADHOC,
|
|
Packit |
fabffb |
&d->asdf11_adhoc_open,
|
|
Packit |
fabffb |
&d->asdf11_adhoc_wep,
|
|
Packit |
fabffb |
&d->asdf11_adhoc_wpa,
|
|
Packit |
fabffb |
&d->asdf11_adhoc_rsn,
|
|
Packit |
fabffb |
&d->asdf11_adhoc_wpa_rsn);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
return d;
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_data_free (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_free (d->foobar_infra_open);
|
|
Packit |
fabffb |
g_free (d->foobar_infra_wep);
|
|
Packit |
fabffb |
g_free (d->foobar_infra_wpa);
|
|
Packit |
fabffb |
g_free (d->foobar_infra_rsn);
|
|
Packit |
fabffb |
g_free (d->foobar_infra_wpa_rsn);
|
|
Packit |
fabffb |
g_free (d->foobar_adhoc_open);
|
|
Packit |
fabffb |
g_free (d->foobar_adhoc_wep);
|
|
Packit |
fabffb |
g_free (d->foobar_adhoc_wpa);
|
|
Packit |
fabffb |
g_free (d->foobar_adhoc_rsn);
|
|
Packit |
fabffb |
g_free (d->foobar_adhoc_wpa_rsn);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
g_free (d->asdf11_infra_open);
|
|
Packit |
fabffb |
g_free (d->asdf11_infra_wep);
|
|
Packit |
fabffb |
g_free (d->asdf11_infra_wpa);
|
|
Packit |
fabffb |
g_free (d->asdf11_infra_rsn);
|
|
Packit |
fabffb |
g_free (d->asdf11_infra_wpa_rsn);
|
|
Packit |
fabffb |
g_free (d->asdf11_adhoc_open);
|
|
Packit |
fabffb |
g_free (d->asdf11_adhoc_wep);
|
|
Packit |
fabffb |
g_free (d->asdf11_adhoc_wpa);
|
|
Packit |
fabffb |
g_free (d->asdf11_adhoc_rsn);
|
|
Packit |
fabffb |
g_free (d->asdf11_adhoc_wpa_rsn);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
g_free (d);
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_infra_adhoc_open (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_open, d->foobar_adhoc_open));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_infra_adhoc_wep (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_wep, d->foobar_adhoc_wep));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_infra_adhoc_wpa (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_wpa, d->foobar_adhoc_wpa));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_infra_adhoc_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_rsn, d->foobar_adhoc_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_infra_adhoc_wpa_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_wpa_rsn, d->foobar_adhoc_wpa_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_infra_open_wep (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_open, d->foobar_infra_wep));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_infra_open_wpa (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_open, d->foobar_infra_wpa));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_infra_open_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_open, d->foobar_infra_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_infra_open_wpa_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_open, d->foobar_infra_wpa_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_infra_wep_wpa (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_wep, d->foobar_infra_wpa));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_infra_wep_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_wep, d->foobar_infra_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_infra_wep_wpa_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_wep, d->foobar_infra_wpa_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_infra_wpa_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
/* these should be the same as we group all WPA/RSN APs together */
|
|
Packit |
fabffb |
g_assert (!strcmp (d->foobar_infra_wpa, d->foobar_infra_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_infra_wpa_wpa_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
/* these should be the same as we group all WPA/RSN APs together */
|
|
Packit |
fabffb |
g_assert (!strcmp (d->foobar_infra_wpa, d->foobar_infra_wpa_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_infra_rsn_wpa_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
/* these should be the same as we group all WPA/RSN APs together */
|
|
Packit |
fabffb |
g_assert (!strcmp (d->foobar_infra_rsn, d->foobar_infra_wpa_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_adhoc_open_wep (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_adhoc_open, d->foobar_adhoc_wep));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_adhoc_open_wpa (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_adhoc_open, d->foobar_adhoc_wpa));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_adhoc_open_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_adhoc_open, d->foobar_adhoc_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_adhoc_open_wpa_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_adhoc_open, d->foobar_adhoc_wpa_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_adhoc_wep_wpa (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_adhoc_wep, d->foobar_adhoc_wpa));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_adhoc_wep_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_adhoc_wep, d->foobar_adhoc_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_adhoc_wep_wpa_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_adhoc_wep, d->foobar_adhoc_wpa_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_adhoc_wpa_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
/* these should be the same as we group all WPA/RSN APs together */
|
|
Packit |
fabffb |
g_assert (!strcmp (d->foobar_adhoc_wpa, d->foobar_adhoc_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_adhoc_wpa_wpa_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
/* these should be the same as we group all WPA/RSN APs together */
|
|
Packit |
fabffb |
g_assert (!strcmp (d->foobar_adhoc_wpa, d->foobar_adhoc_wpa_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_adhoc_rsn_wpa_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
/* these should be the same as we group all WPA/RSN APs together */
|
|
Packit |
fabffb |
g_assert (!strcmp (d->foobar_adhoc_rsn, d->foobar_adhoc_wpa_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_foobar_asdf11_infra_open (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_open, d->asdf11_infra_open));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_foobar_asdf11_infra_wep (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_wep, d->asdf11_infra_wep));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_foobar_asdf11_infra_wpa (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_wpa, d->asdf11_infra_wpa));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_foobar_asdf11_infra_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_rsn, d->asdf11_infra_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_foobar_asdf11_infra_wpa_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_infra_wpa_rsn, d->asdf11_infra_wpa_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_foobar_asdf11_adhoc_open (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_adhoc_open, d->asdf11_adhoc_open));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_foobar_asdf11_adhoc_wep (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_adhoc_wep, d->asdf11_adhoc_wep));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_foobar_asdf11_adhoc_wpa (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_adhoc_wpa, d->asdf11_adhoc_wpa));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_foobar_asdf11_adhoc_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_adhoc_rsn, d->asdf11_adhoc_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
static void
|
|
Packit |
fabffb |
test_ap_hash_foobar_asdf11_adhoc_wpa_rsn (TestData *d)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
g_assert (strcmp (d->foobar_adhoc_wpa_rsn, d->asdf11_adhoc_wpa_rsn));
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
NMTST_DEFINE ();
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
int
|
|
Packit |
fabffb |
main (int argc, char **argv)
|
|
Packit |
fabffb |
{
|
|
Packit |
fabffb |
gint result;
|
|
Packit |
fabffb |
TestData *data;
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
nmtst_init (&argc, &argv, TRUE);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
data = test_data_new ();
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
/* Test that hashes are different with the same SSID but different AP flags */
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/infra_adhoc/open", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_infra_adhoc_open);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/infra_adhoc/wep", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_infra_adhoc_wep);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/infra_adhoc/wpa", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_infra_adhoc_wpa);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/infra_adhoc/rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_infra_adhoc_rsn);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/infra_adhoc/wpa_rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_infra_adhoc_wpa_rsn);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/infra_open/wep", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_infra_open_wep);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/infra_open/wpa", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_infra_open_wpa);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/infra_open/rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_infra_open_rsn);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/infra_open/wpa_rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_infra_open_wpa_rsn);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/infra_wep/wpa", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_infra_wep_wpa);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/infra_wep/rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_infra_wep_rsn);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/infra_wep/wpa_rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_infra_wep_wpa_rsn);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/adhoc_open/wep", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_adhoc_open_wep);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/adhoc_open/wpa", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_adhoc_open_wpa);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/adhoc_open/rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_adhoc_open_rsn);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/adhoc_open/wpa_rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_adhoc_open_wpa_rsn);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/adhoc_wep/wpa", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_adhoc_wep_wpa);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/adhoc_wep/rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_adhoc_wep_rsn);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/adhoc_wep/wpa_rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_adhoc_wep_wpa_rsn);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
/* Test that wpa, rsn, and wpa_rsn all have the same hash */
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/infra_wpa/rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_infra_wpa_rsn);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/infra_wpa/wpa_rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_infra_wpa_wpa_rsn);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/infra_rsn/wpa_rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_infra_rsn_wpa_rsn);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/adhoc/rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_adhoc_wpa_rsn);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/adhoc_wpa/wpa_rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_adhoc_wpa_wpa_rsn);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/adhoc_rsn/wpa_rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_adhoc_rsn_wpa_rsn);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
/* Test that hashes are different with the same AP flags but different SSID */
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/foobar_asdf11/infra_open", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_foobar_asdf11_infra_open);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/foobar_asdf11/infra_wep", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_foobar_asdf11_infra_wep);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/foobar_asdf11/infra_wpa", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_foobar_asdf11_infra_wpa);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/foobar_asdf11/infra_rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_foobar_asdf11_infra_rsn);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/foobar_asdf11/infra_wpa_rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_foobar_asdf11_infra_wpa_rsn);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/foobar_asdf11/adhoc_open", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_foobar_asdf11_adhoc_open);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/foobar_asdf11/adhoc_wep", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_foobar_asdf11_adhoc_wep);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/foobar_asdf11/adhoc_wpa", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_foobar_asdf11_adhoc_wpa);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/foobar_asdf11/adhoc_rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_foobar_asdf11_adhoc_rsn);
|
|
Packit |
fabffb |
g_test_add_data_func ("/ap_hash/foobar_asdf11/adhoc_wpa_rsn", data,
|
|
Packit |
fabffb |
(GTestDataFunc) test_ap_hash_foobar_asdf11_adhoc_wpa_rsn);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
result = g_test_run ();
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
test_data_free (data);
|
|
Packit |
fabffb |
|
|
Packit |
fabffb |
return result;
|
|
Packit |
fabffb |
}
|
|
Packit |
fabffb |
|