Updated through tag hostap_2_5 from git://w1.fi/hostap.git
[mech_eap.git] / libeap / doc / p2p_arch2.dot
1 digraph p2p_arch2 {
2         ranksep=.75;
3         size = "7.5,7.5";
4
5         edge [dir=none];
6
7         subgraph cluster_wpa_gui {
8                 label = "wpa_gui";
9
10                 status -> Qt;
11                 scan -> Qt;
12                 network -> Qt;
13                 Qt -> peers;
14                 Qt -> WPS;
15                 Qt -> gui_ctrl;
16
17                 gui_ctrl [label="ctrl i/f"];
18         }
19
20         subgraph cluster_wpa_supplicant {
21                 label = "wpa_supplicant"
22
23                 ctrl_iface [label="ctrl i/f"];
24                 authenticator [label="Authenticator"];
25                 supplicant [label="Supplicant"];
26                 driver_iface [label="driver i/f"];
27                 wps_registrar [label="WPS\nRegistrar"];
28                 wps_enrollee [label="WPS\nEnrollee"];
29                 mgmt_entity [label="Management\nentity"];
30
31                 ctrl_iface -> mgmt_entity;
32                 wps_registrar -> mgmt_entity;
33                 wps_enrollee -> mgmt_entity;
34                 mgmt_entity -> authenticator;
35                 mgmt_entity -> supplicant;
36                 mgmt_entity -> driver_iface;
37         }
38
39         subgraph cluster_wpa_cli {
40                 label = "wpa_cli -a"
41
42                 wpa_cli_action;
43         }
44
45         subgraph cluster_dnsmasq {
46                 label = "dnsmasq"
47
48                 dnsmasq;
49         }
50
51         subgraph cluster_dhclient {
52                 label = "dhclient"
53
54                 dhclient;
55         }
56
57         subgraph cluster_kernel {
58                 label = "Kernel"
59
60                 ioctl -> umac;
61                 netdev -> umac;
62                 umac -> p2p_module;
63                 p2p_module [label="P2P\nmodule"];
64                 umac -> driver;
65
66                 { rank = same; umac; p2p_module; }
67         }
68
69         gui_ctrl -> ctrl_iface;
70         wpa_cli_action -> ctrl_iface;
71
72         driver_iface -> ioctl;
73
74         wpa_cli_action -> dnsmasq;
75         wpa_cli_action -> dhclient;
76
77         dnsmasq -> netdev;
78         dhclient -> netdev;
79
80         edge [color=blue,dir=both];
81         p2p_module -> umac -> driver;
82
83         edge [color=green,dir=both];
84         peers -> Qt -> gui_ctrl -> ctrl_iface -> mgmt_entity -> driver_iface -> ioctl -> umac -> p2p_module;
85 }