LCOV - code coverage report
Current view: top level - src/drivers - driver_none.c (source / functions) Hit Total Coverage
Test: wpa_supplicant/hostapd combined for hwsim test run 1443382998 Lines: 20 24 83.3 %
Date: 2015-09-27 Functions: 4 5 80.0 %

          Line data    Source code
       1             : /*
       2             :  * Driver interface for RADIUS server or WPS ER only (no driver)
       3             :  * Copyright (c) 2008, Atheros Communications
       4             :  *
       5             :  * This software may be distributed under the terms of the BSD license.
       6             :  * See README for more details.
       7             :  */
       8             : 
       9             : #include "includes.h"
      10             : 
      11             : #include "common.h"
      12             : #include "driver.h"
      13             : 
      14             : 
      15             : struct none_driver_data {
      16             :         struct hostapd_data *hapd;
      17             :         void *ctx;
      18             : };
      19             : 
      20             : 
      21          12 : static void * none_driver_hapd_init(struct hostapd_data *hapd,
      22             :                                     struct wpa_init_params *params)
      23             : {
      24             :         struct none_driver_data *drv;
      25             : 
      26          12 :         drv = os_zalloc(sizeof(struct none_driver_data));
      27          12 :         if (drv == NULL) {
      28           0 :                 wpa_printf(MSG_ERROR, "Could not allocate memory for none "
      29             :                            "driver data");
      30           0 :                 return NULL;
      31             :         }
      32          12 :         drv->hapd = hapd;
      33             : 
      34          12 :         return drv;
      35             : }
      36             : 
      37             : 
      38          12 : static void none_driver_hapd_deinit(void *priv)
      39             : {
      40          12 :         struct none_driver_data *drv = priv;
      41             : 
      42          12 :         os_free(drv);
      43          12 : }
      44             : 
      45             : 
      46           0 : static int none_driver_send_ether(void *priv, const u8 *dst, const u8 *src,
      47             :                                   u16 proto, const u8 *data, size_t data_len)
      48             : {
      49           0 :         return 0;
      50             : }
      51             : 
      52             : 
      53          51 : static void * none_driver_init(void *ctx, const char *ifname)
      54             : {
      55             :         struct none_driver_data *drv;
      56             : 
      57          51 :         drv = os_zalloc(sizeof(struct none_driver_data));
      58          51 :         if (drv == NULL) {
      59           1 :                 wpa_printf(MSG_ERROR, "Could not allocate memory for none "
      60             :                            "driver data");
      61           1 :                 return NULL;
      62             :         }
      63          50 :         drv->ctx = ctx;
      64             : 
      65          50 :         return drv;
      66             : }
      67             : 
      68             : 
      69          50 : static void none_driver_deinit(void *priv)
      70             : {
      71          50 :         struct none_driver_data *drv = priv;
      72             : 
      73          50 :         os_free(drv);
      74          50 : }
      75             : 
      76             : 
      77             : const struct wpa_driver_ops wpa_driver_none_ops = {
      78             :         .name = "none",
      79             :         .desc = "no driver (RADIUS server/WPS ER)",
      80             :         .hapd_init = none_driver_hapd_init,
      81             :         .hapd_deinit = none_driver_hapd_deinit,
      82             :         .send_ether = none_driver_send_ether,
      83             :         .init = none_driver_init,
      84             :         .deinit = none_driver_deinit,
      85             : };

Generated by: LCOV version 1.10