Networking subsystem central module implementation. More...
#include <async.h>
#include <ctype.h>
#include <ddi.h>
#include <errno.h>
#include <malloc.h>
#include <stdio.h>
#include <string.h>
#include <ipc/ipc.h>
#include <ipc/services.h>
#include "../err.h"
#include "../messages.h"
#include "../modules.h"
#include "../structures/char_map.h"
#include "../structures/generic_char_map.h"
#include "../structures/measured_strings.h"
#include "../structures/module_map.h"
#include "../structures/packet/packet.h"
#include "../il/il_messages.h"
#include "../include/device.h"
#include "../include/netif_interface.h"
#include "../include/nil_interface.h"
#include "../include/net_interface.h"
#include "../include/ip_interface.h"
#include "net.h"
#include "net_messages.h"
Defines | |
#define | BUFFER_SIZE 256 |
File read buffer size. | |
#define | NAME "Networking" |
Networking module name. | |
Functions | |
device_id_t | generate_new_device_id (void) |
Generates new system-unique device identifier. | |
int | net_get_conf (measured_strings_ref netif_conf, measured_string_ref configuration, size_t count, char **data) |
Returns the configured values. | |
int | net_initialize (async_client_conn_t client_connection) |
Initializes the networking module. | |
int | parse_line (measured_strings_ref configuration, char *line) |
int | read_configuration (void) |
Reads the networking subsystem global configuration. | |
int | read_configuration_file (const char *directory, const char *filename, measured_strings_ref configuration) |
int | read_netif_configuration (const char *name, netif_ref netif) |
Reads the network interface specific configuration. | |
int | start_device (netif_ref netif) |
Starts the network interface according to its configuration. | |
int | startup (void) |
Reads the configuration and starts all network interfaces. | |
int | add_configuration (measured_strings_ref configuration, const char *name, const char *value) |
Adds the configured setting to the configuration map. | |
int | net_message (ipc_callid_t callid, ipc_call_t *call, ipc_call_t *answer, int *answer_count) |
Processes the networking message. | |
External module functions. | |
void | module_print_name (void) |
External function to print the module name. | |
int | module_start (async_client_conn_t client_connection) |
External module startup function. | |
Networking module interface | |
int | net_connect_module (services_t service) |
Connects to the networking module. | |
void | net_free_settings (measured_string_ref settings, char *data) |
Frees the received settings. | |
int | net_get_conf_req (int net_phone, measured_string_ref *configuration, size_t count, char **data) |
Returns the global configuration. | |
int | net_get_device_conf_req (int net_phone, device_id_t device_id, measured_string_ref *configuration, size_t count, char **data) |
Returns the device specific configuration. | |
Variables | |
net_globals_t | net_globals |
Networking module global data. |
Networking subsystem central module implementation.