/* * Common hostapd/wpa_supplicant ctrl iface code. * Copyright (c) 2002-2013, Jouni Malinen <j@w1.fi> * Copyright (c) 2015, Qualcomm Atheros, Inc. * * This software may be distributed under the terms of the BSD license. * See README for more details. */ #ifndef CONTROL_IFACE_COMMON_H #define CONTROL_IFACE_COMMON_H #include "utils/list.h" /* Events enable bits (wpa_ctrl_dst::events) */ #define WPA_EVENT_RX_PROBE_REQUEST BIT(0) /** * struct wpa_ctrl_dst - Data structure of control interface monitors * * This structure is used to store information about registered control * interface monitors into struct wpa_supplicant. */ struct wpa_ctrl_dst { struct dl_list list; struct sockaddr_storage addr; socklen_t addrlen; int debug_level; int errors; u32 events; /* WPA_EVENT_* bitmap */ }; void sockaddr_print(int level, const char *msg, struct sockaddr_storage *sock, socklen_t socklen); int ctrl_iface_attach(struct dl_list *ctrl_dst, struct sockaddr_storage *from, socklen_t fromlen, const char *input); int ctrl_iface_detach(struct dl_list *ctrl_dst, struct sockaddr_storage *from, socklen_t fromlen); int ctrl_iface_level(struct dl_list *ctrl_dst, struct sockaddr_storage *from, socklen_t fromlen, const char *level); #endif /* CONTROL_IFACE_COMMON_H */