46
46
m_dev.state_changed->connect([](NM::Interface::Device::Signal::StateChanged::ArgumentType args) {
47
47
// StateChanged ( u: new_state, u: old_state, u: reason )
50
NM_DEVICE_STATE_UNKNOWN = 0,
51
NM_DEVICE_STATE_UNMANAGED = 10,
52
NM_DEVICE_STATE_UNAVAILABLE = 20,
53
NM_DEVICE_STATE_DISCONNECTED = 30,
54
NM_DEVICE_STATE_PREPARE = 40,
55
NM_DEVICE_STATE_CONFIG = 50,
56
NM_DEVICE_STATE_NEED_AUTH = 60,
57
NM_DEVICE_STATE_IP_CONFIG = 70,
58
NM_DEVICE_STATE_IP_CHECK = 80,
59
NM_DEVICE_STATE_SECONDARIES = 90,
60
NM_DEVICE_STATE_ACTIVATED = 100,
61
NM_DEVICE_STATE_DEACTIVATING = 110,
62
NM_DEVICE_STATE_FAILED = 120
66
* Device state change reason codes
70
NM_DEVICE_STATE_REASON_NONE = 0,
73
NM_DEVICE_STATE_REASON_UNKNOWN = 1,
75
/* Device is now managed */
76
NM_DEVICE_STATE_REASON_NOW_MANAGED = 2,
78
/* Device is now unmanaged */
79
NM_DEVICE_STATE_REASON_NOW_UNMANAGED = 3,
81
/* The device could not be readied for configuration */
82
NM_DEVICE_STATE_REASON_CONFIG_FAILED = 4,
84
/* IP configuration could not be reserved (no available address, timeout, etc) */
85
NM_DEVICE_STATE_REASON_IP_CONFIG_UNAVAILABLE = 5,
87
/* The IP config is no longer valid */
88
NM_DEVICE_STATE_REASON_IP_CONFIG_EXPIRED = 6,
90
/* Secrets were required, but not provided */
91
NM_DEVICE_STATE_REASON_NO_SECRETS = 7,
93
/* 802.1x supplicant disconnected */
94
NM_DEVICE_STATE_REASON_SUPPLICANT_DISCONNECT = 8,
96
/* 802.1x supplicant configuration failed */
97
NM_DEVICE_STATE_REASON_SUPPLICANT_CONFIG_FAILED = 9,
99
/* 802.1x supplicant failed */
100
NM_DEVICE_STATE_REASON_SUPPLICANT_FAILED = 10,
102
/* 802.1x supplicant took too long to authenticate */
103
NM_DEVICE_STATE_REASON_SUPPLICANT_TIMEOUT = 11,
105
/* PPP service failed to start */
106
NM_DEVICE_STATE_REASON_PPP_START_FAILED = 12,
108
/* PPP service disconnected */
109
NM_DEVICE_STATE_REASON_PPP_DISCONNECT = 13,
112
NM_DEVICE_STATE_REASON_PPP_FAILED = 14,
114
/* DHCP client failed to start */
115
NM_DEVICE_STATE_REASON_DHCP_START_FAILED = 15,
117
/* DHCP client error */
118
NM_DEVICE_STATE_REASON_DHCP_ERROR = 16,
120
/* DHCP client failed */
121
NM_DEVICE_STATE_REASON_DHCP_FAILED = 17,
123
/* Shared connection service failed to start */
124
NM_DEVICE_STATE_REASON_SHARED_START_FAILED = 18,
126
/* Shared connection service failed */
127
NM_DEVICE_STATE_REASON_SHARED_FAILED = 19,
129
/* AutoIP service failed to start */
130
NM_DEVICE_STATE_REASON_AUTOIP_START_FAILED = 20,
132
/* AutoIP service error */
133
NM_DEVICE_STATE_REASON_AUTOIP_ERROR = 21,
135
/* AutoIP service failed */
136
NM_DEVICE_STATE_REASON_AUTOIP_FAILED = 22,
138
/* The line is busy */
139
NM_DEVICE_STATE_REASON_MODEM_BUSY = 23,
142
NM_DEVICE_STATE_REASON_MODEM_NO_DIAL_TONE = 24,
144
/* No carrier could be established */
145
NM_DEVICE_STATE_REASON_MODEM_NO_CARRIER = 25,
147
/* The dialing request timed out */
148
NM_DEVICE_STATE_REASON_MODEM_DIAL_TIMEOUT = 26,
150
/* The dialing attempt failed */
151
NM_DEVICE_STATE_REASON_MODEM_DIAL_FAILED = 27,
153
/* Modem initialization failed */
154
NM_DEVICE_STATE_REASON_MODEM_INIT_FAILED = 28,
156
/* Failed to select the specified APN */
157
NM_DEVICE_STATE_REASON_GSM_APN_FAILED = 29,
159
/* Not searching for networks */
160
NM_DEVICE_STATE_REASON_GSM_REGISTRATION_NOT_SEARCHING = 30,
162
/* Network registration denied */
163
NM_DEVICE_STATE_REASON_GSM_REGISTRATION_DENIED = 31,
165
/* Network registration timed out */
166
NM_DEVICE_STATE_REASON_GSM_REGISTRATION_TIMEOUT = 32,
168
/* Failed to register with the requested network */
169
NM_DEVICE_STATE_REASON_GSM_REGISTRATION_FAILED = 33,
171
/* PIN check failed */
172
NM_DEVICE_STATE_REASON_GSM_PIN_CHECK_FAILED = 34,
174
/* Necessary firmware for the device may be missing */
175
NM_DEVICE_STATE_REASON_FIRMWARE_MISSING = 35,
177
/* The device was removed */
178
NM_DEVICE_STATE_REASON_REMOVED = 36,
180
/* NetworkManager went to sleep */
181
NM_DEVICE_STATE_REASON_SLEEPING = 37,
183
/* The device's active connection disappeared */
184
NM_DEVICE_STATE_REASON_CONNECTION_REMOVED = 38,
186
/* Device disconnected by user or client */
187
NM_DEVICE_STATE_REASON_USER_REQUESTED = 39,
189
/* Carrier/link changed */
190
NM_DEVICE_STATE_REASON_CARRIER = 40,
192
/* The device's existing connection was assumed */
193
NM_DEVICE_STATE_REASON_CONNECTION_ASSUMED = 41,
195
/* The supplicant is now available */
196
NM_DEVICE_STATE_REASON_SUPPLICANT_AVAILABLE = 42,
198
/* The modem could not be found */
199
NM_DEVICE_STATE_REASON_MODEM_NOT_FOUND = 43,
201
/* The Bluetooth connection failed or timed out */
202
NM_DEVICE_STATE_REASON_BT_FAILED = 44,
204
/* GSM Modem's SIM Card not inserted */
205
NM_DEVICE_STATE_REASON_GSM_SIM_NOT_INSERTED = 45,
207
/* GSM Modem's SIM Pin required */
208
NM_DEVICE_STATE_REASON_GSM_SIM_PIN_REQUIRED = 46,
210
/* GSM Modem's SIM Puk required */
211
NM_DEVICE_STATE_REASON_GSM_SIM_PUK_REQUIRED = 47,
213
/* GSM Modem's SIM wrong */
214
NM_DEVICE_STATE_REASON_GSM_SIM_WRONG = 48,
216
/* InfiniBand device does not support connected mode */
217
NM_DEVICE_STATE_REASON_INFINIBAND_MODE = 49,
219
/* A dependency of the connection failed */
220
NM_DEVICE_STATE_REASON_DEPENDENCY_FAILED = 50,
222
/* Problem with the RFC 2684 Ethernet over ADSL bridge */
223
NM_DEVICE_STATE_REASON_BR2684_FAILED = 51,
225
/* ModemManager not running */
226
NM_DEVICE_STATE_REASON_MODEM_MANAGER_UNAVAILABLE = 52,
228
/* The WiFi network could not be found */
229
NM_DEVICE_STATE_REASON_SSID_NOT_FOUND = 53,
231
/* A secondary connection of the base connection failed */
232
NM_DEVICE_STATE_REASON_SECONDARY_CONNECTION_FAILED = 54,
235
NM_DEVICE_STATE_REASON_LAST = 0xFFFF
236
} NMDeviceStateReason;
48
238
std::cout << "Device State Changed: new: " << std::get<0>(args) << " old: " << std::get<1>(args) << " reason: " << std::get<2>(args) << std::endl;