UPnP WPS Device. More...
#include "includes.h"#include <assert.h>#include <net/if.h>#include <netdb.h>#include <sys/ioctl.h>#include "common.h"#include "uuid.h"#include "base64.h"#include "wps.h"#include "wps_i.h"#include "wps_upnp.h"#include "wps_upnp_i.h"
Go to the source code of this file.
Defines | |
| #define | NO_DOMAIN_NAME_RESOLUTION 1 |
| #define | MAX_SUBSCRIPTIONS 4 |
| #define | MAX_ADDR_PER_SUBSCRIPTION 8 |
Functions | |
| void | format_date (struct wpabuf *buf) |
| int | send_wpabuf (int fd, struct wpabuf *buf) |
| void | subscription_unlink (struct subscription *s) |
| void | subscription_destroy (struct subscription *s) |
| struct subscription * | subscription_find (struct upnp_wps_device_sm *sm, const u8 uuid[UUID_LEN]) |
| struct subscription * | subscription_start (struct upnp_wps_device_sm *sm, const char *callback_urls) |
| Remember a UPnP control point to send events to. | |
| struct subscription * | subscription_renew (struct upnp_wps_device_sm *sm, const u8 uuid[UUID_LEN]) |
| int | upnp_wps_device_send_wlan_event (struct upnp_wps_device_sm *sm, const u8 from_mac_addr[ETH_ALEN], enum upnp_wps_wlanevent_type ev_type, const struct wpabuf *msg) |
| Event notification. | |
| int | get_netif_info (const char *net_if, unsigned *ip_addr, char **ip_addr_text, u8 mac[ETH_ALEN], char **mac_addr_text) |
| Get hw and IP addresses for network device. | |
| void | upnp_wps_device_stop (struct upnp_wps_device_sm *sm) |
| Stop WPS UPnP operations on an interface. | |
| int | upnp_wps_device_start (struct upnp_wps_device_sm *sm, char *net_if) |
| Start WPS UPnP operations on an interface. | |
| void | upnp_wps_device_deinit (struct upnp_wps_device_sm *sm) |
| Deinitialize WPS UPnP. | |
| struct upnp_wps_device_sm * | upnp_wps_device_init (struct upnp_wps_device_ctx *ctx, struct wps_context *wps, void *priv) |
| Initialize WPS UPnP. | |
| int | upnp_wps_subscribers (struct upnp_wps_device_sm *sm) |
| Check whether there are any event subscribers. | |
UPnP WPS Device.
See below for more details on licensing and code history.
Definition in file wps_upnp.c.
| int get_netif_info | ( | const char * | net_if, | |
| unsigned * | ip_addr, | |||
| char ** | ip_addr_text, | |||
| u8 | mac[ETH_ALEN], | |||
| char ** | mac_addr_text | |||
| ) |
Get hw and IP addresses for network device.
| net_if | Selected network interface name | |
| ip_addr | Buffer for returning IP address in network byte order | |
| ip_addr_text | Buffer for returning a pointer to allocated IP address text | |
| mac | Buffer for returning MAC address | |
| mac_addr_text | Buffer for returning allocated MAC address text |
Definition at line 932 of file wps_upnp.c.

| struct subscription* subscription_start | ( | struct upnp_wps_device_sm * | sm, | |
| const char * | callback_urls | |||
| ) | [read] |
Remember a UPnP control point to send events to.
| sm | WPS UPnP state machine from upnp_wps_device_init() | |
| callback_urls | Callback URLs |
Definition at line 745 of file wps_upnp.c.

| void upnp_wps_device_deinit | ( | struct upnp_wps_device_sm * | sm | ) |
Deinitialize WPS UPnP.
| sm | WPS UPnP state machine from upnp_wps_device_init() |
Definition at line 1101 of file wps_upnp.c.

| struct upnp_wps_device_sm* upnp_wps_device_init | ( | struct upnp_wps_device_ctx * | ctx, | |
| struct wps_context * | wps, | |||
| void * | priv | |||
| ) | [read] |
Initialize WPS UPnP.
| ctx | callback table; we must eventually free it | |
| wps | Pointer to longterm WPS context | |
| priv | External context data that will be used in callbacks |
Definition at line 1126 of file wps_upnp.c.

| int upnp_wps_device_send_wlan_event | ( | struct upnp_wps_device_sm * | sm, | |
| const u8 | from_mac_addr[ETH_ALEN], | |||
| enum upnp_wps_wlanevent_type | ev_type, | |||
| const struct wpabuf * | msg | |||
| ) |
Event notification.
| sm | WPS UPnP state machine from upnp_wps_device_init() | |
| from_mac_addr | Source (Enrollee) MAC address for the event | |
| ev_type | Event type | |
| msg | Event data |
Tell external Registrars (UPnP control points) that something happened. In particular, events include WPS messages from clients that are proxied to external Registrars.
Definition at line 823 of file wps_upnp.c.

| int upnp_wps_device_start | ( | struct upnp_wps_device_sm * | sm, | |
| char * | net_if | |||
| ) |
Start WPS UPnP operations on an interface.
| sm | WPS UPnP state machine from upnp_wps_device_init() | |
| net_if | Selected network interface name |
Definition at line 1039 of file wps_upnp.c.

| void upnp_wps_device_stop | ( | struct upnp_wps_device_sm * | sm | ) |
Stop WPS UPnP operations on an interface.
| sm | WPS UPnP state machine from upnp_wps_device_init() |
Definition at line 997 of file wps_upnp.c.

| int upnp_wps_subscribers | ( | struct upnp_wps_device_sm * | sm | ) |
Check whether there are any event subscribers.
| sm | WPS UPnP state machine from upnp_wps_device_init() |
Definition at line 1151 of file wps_upnp.c.
1.6.1