Fusion des commandes liées à arc en un seul fichier + renommage local:variable par var variable pour plus de lisibilité
This commit is contained in:
parent
62ebf74ebe
commit
81ab7d87ed
15 changed files with 78 additions and 81 deletions
|
|
@ -6,8 +6,8 @@ edit:add-var ipof~ [@argv]{
|
|||
fn less [cmp e1 e2]{ < ($cmp $e1 $e2) 0 }
|
||||
|
||||
fn sort-ip [e1 e2]{
|
||||
local:i1 = (condition:cset (ip:is-ipv4 $e1) 0 (condition:cset (ip:is-ipv6 $e1) 1 2))
|
||||
local:i2 = (condition:cset (ip:is-ipv4 $e2) 0 (condition:cset (ip:is-ipv6 $e2) 1 2))
|
||||
var i1 = (condition:cset (ip:is-ipv4 $e1) 0 (condition:cset (ip:is-ipv6 $e1) 1 2))
|
||||
var i2 = (condition:cset (ip:is-ipv4 $e2) 0 (condition:cset (ip:is-ipv6 $e2) 1 2))
|
||||
if (!= $i1 $i2) {
|
||||
< $i1 $i2
|
||||
} elif (== $i1 2) {
|
||||
|
|
@ -20,18 +20,18 @@ edit:add-var ipof~ [@argv]{
|
|||
}
|
||||
|
||||
fn dnssolve [d]{
|
||||
local:result = [
|
||||
var result = [
|
||||
&ips=[&]
|
||||
&resolvers=''
|
||||
&txt=''
|
||||
]
|
||||
e:dnscrypt-proxy -config /etc/dnscrypt-proxy/dnscrypt-proxy.toml -resolve (idn -a $d) | peach [l]{
|
||||
local:l = $l
|
||||
local:idx = (+ (str:index $l :) 1)
|
||||
local:value = (str:trim-space $l[$idx".."])
|
||||
var l = $l
|
||||
var idx = (+ (str:index $l :) 1)
|
||||
var value = (str:trim-space $l[$idx".."])
|
||||
if (or (str:has-prefix $l 'IPv4 addresses') (str:has-prefix $l 'IPv6 addresses')) {
|
||||
str:split ', ' $value | peach [e]{
|
||||
local:e = $e
|
||||
var e = $e
|
||||
if (ip:is-ip $e) {
|
||||
result[ips][$e] = $nil
|
||||
}
|
||||
|
|
@ -47,16 +47,16 @@ edit:add-var ipof~ [@argv]{
|
|||
put $result
|
||||
}
|
||||
|
||||
local:hosts = [&]
|
||||
var hosts = [&]
|
||||
cat /etc/hosts | peach [l]{
|
||||
local:l = $l
|
||||
var l = $l
|
||||
l = (str:trim-space $l)
|
||||
if (and (not-eq $l '') (not-eq $l[0] '#')) {
|
||||
put $l
|
||||
}
|
||||
} | eawk [_ ip @domains]{
|
||||
peach [d]{
|
||||
local:d = $d
|
||||
var d = $d
|
||||
if (has-key $hosts $d) {
|
||||
hosts[$d][$ip] = $nil
|
||||
} else {
|
||||
|
|
@ -65,17 +65,17 @@ edit:add-var ipof~ [@argv]{
|
|||
} $domains
|
||||
}
|
||||
|
||||
local:remote = [&]
|
||||
var remote = [&]
|
||||
peach [d]{
|
||||
local:d = $d
|
||||
local:solve = (dnssolve $d)
|
||||
var d = $d
|
||||
var solve = (dnssolve $d)
|
||||
if (> (keys $solve[ips] | count) 0) {
|
||||
remote[$d] = $solve
|
||||
}
|
||||
} $argv
|
||||
|
||||
each [d]{
|
||||
local:exists = $false
|
||||
var exists = $false
|
||||
echo (styled 'Resolving '$d'…' bright-green)
|
||||
echo
|
||||
if (has-key $hosts $d) {
|
||||
|
|
@ -87,7 +87,7 @@ edit:add-var ipof~ [@argv]{
|
|||
}
|
||||
if (and (has-key $remote $d) $remote[$d][remote]) {
|
||||
exists = $true
|
||||
local:info = $remote[$d]
|
||||
var info = $remote[$d]
|
||||
echo (styled ' remote:' bright-yellow)
|
||||
echo ' IPs:'
|
||||
keys $info[ips] | order &less-than=$sort-ip~ | each [ip]{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue