1526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt/*
2526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt * WPA Supplicant / Configuration backend: empty starting point
3526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt * Copyright (c) 2003-2005, Jouni Malinen <j@w1.fi>
4526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt *
5526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt * This program is free software; you can redistribute it and/or modify
6526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt * it under the terms of the GNU General Public License version 2 as
7526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt * published by the Free Software Foundation.
8526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt *
9526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt * Alternatively, this software may be distributed under the terms of BSD
10526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt * license.
11526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt *
12526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt * See README and COPYING for more details.
13526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt *
14526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt * This file implements dummy example of a configuration backend. None of the
15526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt * functions are actually implemented so this can be used as a simple
16526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt * compilation test or a starting point for a new configuration backend.
17526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt */
18526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
19526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt#include "includes.h"
20526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
21526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt#include "common.h"
22526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt#include "config.h"
23526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt#include "base64.h"
24526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
25526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
26526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtstruct wpa_config * wpa_config_read(const char *name)
27526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt{
28526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	struct wpa_config *config;
29526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
30526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	config = wpa_config_alloc_empty(NULL, NULL);
31526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	if (config == NULL)
32526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt		return NULL;
33526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	/* TODO: fill in configuration data */
34526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	return config;
35526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt}
36526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
37526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
38526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidtint wpa_config_write(const char *name, struct wpa_config *config)
39526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt{
40526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	struct wpa_ssid *ssid;
41526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	struct wpa_config_blob *blob;
42526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
43526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	wpa_printf(MSG_DEBUG, "Writing configuration file '%s'", name);
44526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
45526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	/* TODO: write global config parameters */
46526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
47526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
48526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	for (ssid = config->ssid; ssid; ssid = ssid->next) {
49526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt		/* TODO: write networks */
50526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	}
51526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
52526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	for (blob = config->blobs; blob; blob = blob->next) {
53526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt		/* TODO: write blobs */
54526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	}
55526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt
56526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt	return 0;
57526fc2a7dc09b4450086cdec313a5c44d36b10fdDmitry Shmidt}
58