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