Skip to content

Commit

Permalink
Update Edge, IATA, Region (Thursday, September 1, 2022).
Browse files Browse the repository at this point in the history
  • Loading branch information
636f7374 committed Oct 10, 2023
1 parent 3f2b585 commit 123f1cd
Show file tree
Hide file tree
Showing 7 changed files with 604 additions and 465 deletions.
3 changes: 2 additions & 1 deletion enhanced/dns/resolver.cr
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ class DNS::Resolver

def __getaddrinfo_cloudflare(host : String, port : Int32 = 0_i32, answer_safety_first : Bool = options.addrinfo.answerSafetyFirst,
addrinfo_overridable : Bool? = cloudflare.try &.options.scanner.quirks.addrinfoOverride) : Tuple(Symbol, FetchType, Array(Socket::IPAddress))
# port.zero? (E.g. Warpless).
# This function is used as an overridable.
# E.g. Cloudflare.

Expand All @@ -19,7 +20,7 @@ class DNS::Resolver
allowed_fetch_type = fetch_type.remote? || fetch_type.caching? || fetch_type.local?
consistent_port = ip_addresses.all? { |ip_address| port == ip_address.port }

if consistent_port && allowed_fetch_type
if (consistent_port || port.zero?) && allowed_fetch_type
ip_block_includes = Cloudflare::IpBlock.includes? ip_addresses.first unless ip_addresses.empty?

if ip_block_includes
Expand Down
44 changes: 22 additions & 22 deletions locations.js
Original file line number Diff line number Diff line change
@@ -1,17 +1,23 @@
// References: https://www.cloudflarestatus.com/
// Written in: Thursday, February 25, 2021
// Written in: Thursday, September 1, 2022
// Executed every six months, Cloudflare will add new location Edge servers from time to time.
// We need to stay in sync.

// Regular Expression (Sublime)
// IATA Regular expression: (.*?\()(\w+)(.*) => \1
// Edge Regular expression: -> {
// -> ( \")(.*?)( \-[\ \聽]+.*) => \2
// -> (.*?), (.*?), (.*) => \1_\3
// -> ,\ => _
// -> \ =>
// -> [\.\']+ =>
// }
// Page -> Crystal Playground
// \ \ \ \ |\"|\"\,|\[|\]|(\,$) =>
// \ \-(\聽|\ ) => -

// Crystal Playground -> PlainText
// \]|\[|\"|(\,$)|(^\ ) =>

// PlainText -> Enum IATA
// .*\((\w{3})\)( = \d+_i32) => \1\2

// PlainText -> Enum Edge
// \ \-\ \(\w{3}\)|\.|' =>
// \-\,\ => _
// \ =>
// \= => =

// Format to Enum (Crystal)
// ==========================
Expand All @@ -26,21 +32,15 @@
// list
// ==========================

// Position Anchor point.
let regionsSections = document.getElementsByClassName('regions-section font-regular');

// The first section is the Cloudflare system state, which is useless to us, we remove it.
regionsSections[0].children[0].children[0].remove();

// Define regionsSectionsRootNode and list.
let regionsSectionsRootNode = regionsSections[0].children[0].children;
// Define regions and list.
let regions = document.getElementsByClassName("component-container border-color is-group open");
let list = [];

// Put the result into the list.
for (let region of regionsSectionsRootNode) {
for (let cityRootNode of region.children[1].children) {
list.push(cityRootNode.children[0].innerText);
}
for (let region of regions) {
for (let location of region.children[1].children) {
list.push(location.children[0].innerText);
}
}

// Copy to clipboard.
Expand Down
4 changes: 2 additions & 2 deletions serialized/radar/callee.cr
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ module Cloudflare::Serialized
property ipBlocks : Array(String)

def initialize(@endpoint : Endpoint)
@excludes = [[Needles::Edge::LosAngeles_UnitedStates], [Needles::Edge::SanJose_UnitedStates], [
Needles::Edge::LosAngeles_UnitedStates, Needles::Edge::SanJose_UnitedStates,
@excludes = [[Needles::Edge::LosAngeles_CA_UnitedStates], [Needles::Edge::SanJose_CA_UnitedStates], [
Needles::Edge::LosAngeles_CA_UnitedStates, Needles::Edge::SanJose_CA_UnitedStates,
]]
@quirks = Serialized::Options::Radar::Quirks.new
@timeout = Serialized::Options::TimeOut.new
Expand Down
4 changes: 2 additions & 2 deletions serialized/radar/standard.cr
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ module Cloudflare::Serialized

def initialize(@endpoint : Endpoint)
@parallel = nil
@excludes = [[Needles::Edge::LosAngeles_UnitedStates], [Needles::Edge::SanJose_UnitedStates], [
Needles::Edge::LosAngeles_UnitedStates, Needles::Edge::SanJose_UnitedStates,
@excludes = [[Needles::Edge::LosAngeles_CA_UnitedStates], [Needles::Edge::SanJose_CA_UnitedStates], [
Needles::Edge::LosAngeles_CA_UnitedStates, Needles::Edge::SanJose_CA_UnitedStates,
]]
@quirks = Serialized::Options::Radar::Quirks.new
@timeout = Serialized::Options::TimeOut.new
Expand Down
2 changes: 1 addition & 1 deletion shard.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: cloudflare
version: 1.0.0
version: 1.0.1

dependencies:
ipaddress:
Expand Down
Loading

0 comments on commit 123f1cd

Please sign in to comment.