mirror of
https://github.com/Telecominfraproject/wlan-ap.git
synced 2025-10-29 17:42:41 +00:00
Compare commits
3 Commits
1a3955554a
...
cloud_disc
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c0c358cb50 | ||
|
|
f3036317b4 | ||
|
|
2ae3092959 |
@@ -23,6 +23,7 @@ let ubus = libubus.connect();
|
|||||||
let uci = libuci.cursor();
|
let uci = libuci.cursor();
|
||||||
let state = DISCOVER;
|
let state = DISCOVER;
|
||||||
let discovery_method = "";
|
let discovery_method = "";
|
||||||
|
let discovery_block_list = [];
|
||||||
let validate_time;
|
let validate_time;
|
||||||
let offline_time;
|
let offline_time;
|
||||||
let orphan_time;
|
let orphan_time;
|
||||||
@@ -102,6 +103,9 @@ function gateway_load() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function discovery_state_write() {
|
function discovery_state_write() {
|
||||||
|
if (length(discovery_method) == 0)
|
||||||
|
return;
|
||||||
|
|
||||||
let discovery_state = {
|
let discovery_state = {
|
||||||
"type": discovery_method,
|
"type": discovery_method,
|
||||||
"updated": time()
|
"updated": time()
|
||||||
@@ -155,6 +159,7 @@ function set_state(set) {
|
|||||||
ulog(LOG_INFO, 'Wait for validation\n');
|
ulog(LOG_INFO, 'Wait for validation\n');
|
||||||
validate_time = time();
|
validate_time = time();
|
||||||
state = VALIDATING;
|
state = VALIDATING;
|
||||||
|
push(discovery_block_list, discovery_method);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case ONLINE:
|
case ONLINE:
|
||||||
@@ -163,6 +168,7 @@ function set_state(set) {
|
|||||||
ulog(LOG_INFO, 'Setting cloud controller to validated\n');
|
ulog(LOG_INFO, 'Setting cloud controller to validated\n');
|
||||||
gateway_write({ valid: true });
|
gateway_write({ valid: true });
|
||||||
discovery_state_write();
|
discovery_state_write();
|
||||||
|
discovery_block_list = [];
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@@ -231,6 +237,13 @@ function time_is_valid() {
|
|||||||
return valid;
|
return valid;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function is_discover_method_blacked() {
|
||||||
|
if (discovery_method in discovery_block_list)
|
||||||
|
return true;
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
function interval_handler() {
|
function interval_handler() {
|
||||||
printf(`State ${state}\n`);
|
printf(`State ${state}\n`);
|
||||||
switch(state) {
|
switch(state) {
|
||||||
@@ -260,19 +273,21 @@ function interval_handler() {
|
|||||||
if (!time_is_valid())
|
if (!time_is_valid())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
discovery_method = DISCOVER_DHCP;
|
|
||||||
if (discover_dhcp())
|
|
||||||
return;
|
|
||||||
|
|
||||||
if (system('/usr/bin/est_client enroll'))
|
if (system('/usr/bin/est_client enroll'))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
discovery_method = DISCOVER_DHCP;
|
||||||
|
if (!is_discover_method_blacked() && discover_dhcp())
|
||||||
|
return;
|
||||||
|
|
||||||
discovery_method = DISCOVER_FLASH;
|
discovery_method = DISCOVER_FLASH;
|
||||||
if (!discover_flash())
|
if (!is_discover_method_blacked() && !discover_flash())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
discovery_method = DISCOVER_LOOKUP;
|
discovery_method = DISCOVER_LOOKUP;
|
||||||
redirector_lookup();
|
redirector_lookup();
|
||||||
|
|
||||||
|
discovery_block_list = [];
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case VALIDATING:
|
case VALIDATING:
|
||||||
|
|||||||
Reference in New Issue
Block a user