From ba9f35e29310e43bd2a00c47f919bcbad60295e5 Mon Sep 17 00:00:00 2001 From: Bernt Christian Egeland Date: Wed, 22 May 2024 07:10:23 +0000 Subject: [PATCH 1/2] do not throw error if ip out of range --- src/utils/IPv4gen.ts | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/src/utils/IPv4gen.ts b/src/utils/IPv4gen.ts index d13ba111..94a89b0c 100644 --- a/src/utils/IPv4gen.ts +++ b/src/utils/IPv4gen.ts @@ -1,9 +1,3 @@ -// function randomOctet() { -// return Math.floor(Math.random() * 255); - -import { throwError } from "~/server/helpers/errorHandler"; - -// } const cidrOptions = [ "10.121.15.0/24", "10.121.16.0/24", @@ -128,7 +122,7 @@ export const getNetworkClassCIDR = ( for (const range of ipRanges) { if (ipToNumber(range.ipRangeStart) >= ipToNumber(range.ipRangeEnd)) { - return throwError("Invalid IP range provided"); + continue; } const binaryStart = ipToBinary(range.ipRangeStart); From 6d36b3ca340d88ba3b7486b842c96d6619cb6e25 Mon Sep 17 00:00:00 2001 From: Bernt Christian Egeland Date: Wed, 22 May 2024 17:29:33 +0000 Subject: [PATCH 2/2] improved error messages --- src/pages/admin/controller/index.tsx | 3 +-- src/utils/ztApi.ts | 20 ++++++++++---------- 2 files changed, 11 insertions(+), 12 deletions(-) diff --git a/src/pages/admin/controller/index.tsx b/src/pages/admin/controller/index.tsx index 912c6b02..37285423 100644 --- a/src/pages/admin/controller/index.tsx +++ b/src/pages/admin/controller/index.tsx @@ -23,7 +23,6 @@ const Controller = () => { controllerStatus?.config?.settings || {}; const { online, tcpFallbackActive, version } = controllerStatus || {}; - return (
{controllerError ? ( @@ -41,7 +40,7 @@ const Controller = () => { d="M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z" /> - Error! Controller unreachable + {controllerError?.message} ) : ( <> diff --git a/src/utils/ztApi.ts b/src/utils/ztApi.ts index de342606..f64c7fa1 100644 --- a/src/utils/ztApi.ts +++ b/src/utils/ztApi.ts @@ -248,7 +248,7 @@ export const get_controller_networks = async ( return await getData(addr, headers); } catch (error) { const prefix = isCentral ? "[CENTRAL] " : ""; - const message = `${prefix}An error occurred while getting get_controller_networks`; + const message = `${prefix} ${error} (get_controller_networks)`; throw new APIError(message, axios.isAxiosError(error) ? error : undefined); } }; @@ -276,7 +276,7 @@ export const get_controller_status = async ( return await getData(addr, headers); } catch (error) { const prefix = isCentral ? "[CENTRAL] " : ""; - const message = `${prefix}An error occurred while getting get_controller_status`; + const message = `${prefix} ${error} (get_controller_status)`; throw new APIError(message, error as AxiosError); } }; @@ -324,7 +324,7 @@ export const network_create = async ( ); } catch (error) { const prefix = isCentral ? "[CENTRAL] " : ""; - const message = `${prefix}An error occurred while getting network_create`; + const message = `${prefix} ${error} (network_create)`; throw new APIError(message, error as AxiosError); } }; @@ -352,7 +352,7 @@ export async function network_delete( return { status: response.status, data: undefined }; } catch (error) { const prefix = isCentral ? "[CENTRAL] " : ""; - const message = `${prefix}An error occurred while getting network_delete`; + const message = `${prefix} ${error} (network_delete)`; throw new APIError(message, error as AxiosError); } } @@ -507,7 +507,7 @@ export const central_network_detail = async ( }; } catch (error) { const source = isCentral ? "[ZT CENTRAL]" : ""; - const message = `${source} An error occurred while getting data from network_details function`; + const message = `${source} ${error} (central_network_detail)`; throw new APIError(message, error as AxiosError); } }; @@ -537,7 +537,7 @@ export const network_update = async ({ return await postData(addr, headers, payload); } catch (error) { const prefix = central ? "[CENTRAL] " : ""; - const message = `${prefix}An error occurred while getting network_update`; + const message = `${prefix} ${error} (network_update)`; throw new APIError(message, error as AxiosError); } }; @@ -562,7 +562,7 @@ export const member_delete = async ({ return response.status as MemberDeleteResponse; } catch (error) { const prefix = central ? "[CENTRAL] " : ""; - const message = `${prefix}An error occurred while getting member_delete`; + const message = `${prefix} ${error} (member_delete)`; throw new APIError(message, error as AxiosError); } }; @@ -594,7 +594,7 @@ export const member_update = async ({ return await postData(addr, headers, payload); } catch (error) { const prefix = central ? "[CENTRAL] " : ""; - const message = `${prefix}An error occurred while getting member_update`; + const message = `${prefix} ${error} (member_update)`; throw new APIError(message, error as AxiosError); } }; @@ -618,7 +618,7 @@ export const member_details = async ( return await getData(addr, headers); } catch (error) { - const message = "An error occurred while getting member_detail"; + const message = `${error} (member_details)`; throw new APIError(message, error as AxiosError); } }; @@ -637,7 +637,7 @@ export const peers = async (ctx: UserContext): Promise => { const response: AxiosResponse = await axios.get(addr, { headers }); return response.data as ZTControllerGetPeer; } catch (error) { - const message = "An error occurred while getting peers"; + const message = `${error} (peers)`; throw new APIError(message, error as AxiosError); } };