Skip to content

Commit 15d4476

Browse files
committed
all: guard vv/v/d logs with settings.Debug
1 parent 63ec3f2 commit 15d4476

File tree

14 files changed

+198
-77
lines changed

14 files changed

+198
-77
lines changed

intra/bootstrap.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import (
2222
"github.com/celzero/firestack/intra/ipn"
2323
"github.com/celzero/firestack/intra/log"
2424
"github.com/celzero/firestack/intra/protect"
25+
"github.com/celzero/firestack/intra/settings"
2526
"github.com/celzero/firestack/intra/xdns"
2627
"github.com/miekg/dns"
2728
)
@@ -267,7 +268,9 @@ func (b *bootstrap) Query(network string, q *dns.Msg, smm *x.DNSSummary) (*dns.M
267268
smm.Type = b.typ
268269
smm.UID = protect.UidSelf
269270
if tr := b.tr; tr != nil {
270-
log.V("dns: default: %s query? %t", network, q != nil)
271+
if settings.Debug {
272+
log.V("dns: default: %s query? %t", network, q != nil)
273+
}
271274
return dnsx.Req(tr, network, q, smm)
272275
}
273276
smm.Status = dnsx.TransportError // InternalError?

intra/dialers/cdial.go

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import (
1616
"github.com/celzero/firestack/intra/core"
1717
"github.com/celzero/firestack/intra/log"
1818
"github.com/celzero/firestack/intra/protect/ipmap"
19+
"github.com/celzero/firestack/intra/settings"
1920
)
2021

2122
const dialRetryTimeout = 35 * time.Second
@@ -64,8 +65,10 @@ func commondial2[D rdials, C rconns](d D, network, laddr, raddr string, connect
6465
local, lerr := netip.ParseAddrPort(laddr) // okay if local is invalid
6566
domain, portstr, err := net.SplitHostPort(raddr)
6667

67-
log.D("commondial: dialing (host:port) %s=>%s; errs? %v %v",
68-
laddr, raddr, lerr, err)
68+
if settings.Debug {
69+
log.D("commondial: dialing (host:port) %s=>%s; errs? %v %v",
70+
laddr, raddr, lerr, err)
71+
}
6972

7073
if err != nil {
7174
return nil, err
@@ -90,21 +93,27 @@ func commondial2[D rdials, C rconns](d D, network, laddr, raddr string, connect
9093

9194
defer func() {
9295
dur := time.Since(start)
93-
log.D("commondial: duration: %s; addr %s; confirmed? %s, sz: %d", dur, raddr, confirmed, ips.Size())
96+
if settings.Debug {
97+
log.D("commondial: duration: %s; addr %s; confirmed? %s, sz: %d", dur, raddr, confirmed, ips.Size())
98+
}
9499
}()
95100

96101
// One the TODO is fixed, change ipn/proxy.go:Reaches to rely on this behaviour
97102
// TODO: confirmedIPOK must be used depending on network type "tcp4", "udp4", "tcp6", "udp6" etc
98103
if confirmedIPOK {
99104
remote := netip.AddrPortFrom(confirmed, uint16(port))
100-
log.V("commondial: dialing confirmed ip %s for %s", confirmed, remote)
105+
if settings.Debug {
106+
log.V("commondial: dialing confirmed ip %s for %s", confirmed, remote)
107+
}
101108
conn, err = connect(d, network, local, remote)
102109
// nilaway: tx.socks5 returns nil conn even if err == nil
103110
if conn == nil {
104111
err = core.OneErr(err, errNoConn)
105112
}
106113
if err == nil {
107-
log.V("commondial: ip %s works for %s", confirmed, remote)
114+
if settings.Debug {
115+
log.V("commondial: ip %s works for %s", confirmed, remote)
116+
}
108117
return conn, nil
109118
}
110119
errs = core.JoinErr(errs, err)

intra/dialers/op.go

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ import (
1414

1515
"github.com/celzero/firestack/intra/core"
1616
"github.com/celzero/firestack/intra/log"
17+
"github.com/celzero/firestack/intra/settings"
1718
)
1819

1920
// Copy one buffer from src to dst, using dst.Write.
@@ -81,7 +82,9 @@ func writeTCPSplit(w net.Conn, hello []byte) (n int, err error) {
8182
log.E("op: splits: TCP2 %s (%d): err %v", to, len(second), err)
8283
return p + q, err
8384
}
84-
log.D("op: splits: %s=>%s; TCP: %d/%d,%d/%d", from, to, p, len(first), q, len(second))
85+
if settings.Debug {
86+
log.D("op: splits: %s=>%s; TCP: %d/%d,%d/%d", from, to, p, len(first), q, len(second))
87+
}
8588

8689
return p + q, nil
8790
}
@@ -94,7 +97,9 @@ func writeTCPOrTLSSplit(w net.Conn, hello []byte) (n int, err error) {
9497

9598
if len(hello) <= 1 {
9699
n, err = w.Write(hello)
97-
log.D("op: splits: %s=>%s; len(hello) <= 1; n: %d; err: %v", from, to, n, err)
100+
if settings.Debug {
101+
log.D("op: splits: %s=>%s; len(hello) <= 1; n: %d; err: %v", from, to, n, err)
102+
}
98103
return
99104
}
100105

intra/dns.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import (
2020
"github.com/celzero/firestack/intra/ipn"
2121
"github.com/celzero/firestack/intra/log"
2222
"github.com/celzero/firestack/intra/protect"
23+
"github.com/celzero/firestack/intra/settings"
2324
"github.com/celzero/firestack/intra/xdns"
2425
)
2526

@@ -72,6 +73,9 @@ func SetSystemDNS(t Tunnel, ipcsvx *x.Gostr) error {
7273
// this is the case if kotlin-land is unable to determine
7374
// DNS servers. This is equivalent to using x.Goos Transport.
7475
if strings.HasPrefix(ipcsv, "localhost") {
76+
if settings.Debug {
77+
log.D("dns: system dns is localhost, using loopback")
78+
}
7579
ipcsv = localip4 + "," + localip6
7680
}
7781

intra/dns53/dot.go

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import (
2222
"github.com/celzero/firestack/intra/dnsx"
2323
"github.com/celzero/firestack/intra/ipn"
2424
"github.com/celzero/firestack/intra/log"
25+
"github.com/celzero/firestack/intra/settings"
2526
"github.com/celzero/firestack/intra/xdns"
2627
"github.com/miekg/dns"
2728
_ "go4.org/unsafe/assume-no-moving-gc"
@@ -230,8 +231,10 @@ func (t *dot) pxdial(pid string) (*dns.Conn, string, uintptr, bool, error) {
230231
}
231232
pid = px.ID().V()
232233
rpid := ipn.ViaID(px)
233-
log.V("dot: pxdial: (%s) using relay/proxy %s (via: %s) at %s",
234-
t.id, pid, rpid, px.GetAddr())
234+
if settings.Debug {
235+
log.V("dot: pxdial: (%s) using relay/proxy %s (via: %s) at %s",
236+
t.id, pid, rpid, px.GetAddr())
237+
}
235238

236239
c, who, ech, err := t.tlsdial(px)
237240
return c, rpid, who, ech, err
@@ -261,7 +264,9 @@ func (t *dot) fromPool(id uintptr) (c *dns.Conn) {
261264
if c, ok = pooled.(*dns.Conn); !ok { // unlikely
262265
return &dns.Conn{Conn: pooled}
263266
}
264-
log.V("dot: pool: (%s) got conn from %v", t.id, id)
267+
if settings.Debug {
268+
log.V("dot: pool: (%s) got conn from %v", t.id, id)
269+
}
265270
return
266271
}
267272

@@ -352,8 +357,10 @@ func (t *dot) Query(network string, q *dns.Msg, smm *x.DNSSummary) (ans *dns.Msg
352357
smm.Status = status
353358
t.est.Add(smm.Latency)
354359

355-
log.V("dot: %s ech? %t; len(res): fro %s:%d a:%d/sz:%d/pad:%d, data: %s / status: %d, via: %s, err? %v",
356-
t.id, ech, smm.QName, smm.QType, xdns.Len(ans), xdns.Size(ans), xdns.EDNS0PadLen(ans), smm.RData, smm.Status, smm.PID, err)
360+
if settings.Debug {
361+
log.V("dot: %s ech? %t; len(res): fro %s:%d a:%d/sz:%d/pad:%d, data: %s / status: %d, via: %s, err? %v",
362+
t.id, ech, smm.QName, smm.QType, xdns.Len(ans), xdns.Size(ans), xdns.EDNS0PadLen(ans), smm.RData, smm.Status, smm.PID, err)
363+
}
357364

358365
return
359366
}

intra/dns53/ipmapper.go

Lines changed: 21 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import (
2020
"github.com/celzero/firestack/intra/log"
2121
"github.com/celzero/firestack/intra/protect"
2222
"github.com/celzero/firestack/intra/protect/ipmap"
23+
"github.com/celzero/firestack/intra/settings"
2324
"github.com/celzero/firestack/intra/xdns"
2425
"github.com/miekg/dns"
2526
)
@@ -122,7 +123,9 @@ func (m *ipmapper) queryIP2(_ context.Context, network, host, uid string, tid ..
122123
return []netip.Addr{ip}, nil
123124
}
124125

125-
log.V("ipmapper: lookup: host %s:%s for %s on %v", network, host, uid, tid)
126+
if settings.Debug {
127+
log.V("ipmapper: lookup: host %s:%s for %s on %v", network, host, uid, tid)
128+
}
126129

127130
var q4, q6 []byte
128131
var err4, err6 error
@@ -197,8 +200,10 @@ func (m *ipmapper) queryIP2(_ context.Context, network, host, uid string, tid ..
197200
ip6 = m.undoAlgAndOrNat64(ip6, tid6, uid) // nat64 cannot really be "undone" for ip6!
198201
ips := append(ip4, ip6...)
199202

200-
log.D("ipmapper: host %s => ips (out: %v / in: %d+%d); uid: %s, tids: %s+%s; err4: %v, err6: %v",
201-
host, ips, len(r4), len(r6), uid, tid4, tid6, lerr4, lerr6)
203+
if settings.Debug {
204+
log.D("ipmapper: host %s => ips (out: %v / in: %d+%d); uid: %s, tids: %s+%s; err4: %v, err6: %v",
205+
host, ips, len(r4), len(r6), uid, tid4, tid6, lerr4, lerr6)
206+
}
202207
return ips, nil
203208
}
204209

@@ -216,7 +221,9 @@ func (m *ipmapper) queryAny2(q []byte, uid string, tids ...string) ([]byte, erro
216221
qtype := int(xdns.QType(msg))
217222
qtypestr := strconv.Itoa(qtype)
218223

219-
log.V("ipmapper: lookup: host %s, uid: %v", qname, uid)
224+
if settings.Debug {
225+
log.V("ipmapper: lookup: host %s, uid: %v", qname, uid)
226+
}
220227

221228
var v *core.V[answer, string]
222229
if len(tids) > 0 {
@@ -269,7 +276,9 @@ func (m *ipmapper) locallookup(q []byte) func() (answer, error) {
269276
func (m *ipmapper) undoAlg(ans []byte, tid, uid string) ([]byte, error) {
270277
gw := m.g
271278
if gw == nil {
272-
log.V("ipmapper: undoAlg: no-op for %s[%s]; no gateway", tid, uid)
279+
if settings.Debug {
280+
log.V("ipmapper: undoAlg: no-op for %s[%s]; no gateway", tid, uid)
281+
}
273282
return ans, nil
274283
}
275284

@@ -286,8 +295,10 @@ func (m *ipmapper) undoAlg(ans []byte, tid, uid string) ([]byte, error) {
286295
is6 := !is4 && xdns.HasAAAAQuestion(msg)
287296

288297
if !is4 && !is6 || noips {
289-
log.VV("ipmapper: undoAlg: no a? (%t), aaaa? (%t), ans? (%t); no-op",
290-
!is4, !is6, noips)
298+
if settings.Debug {
299+
log.VV("ipmapper: undoAlg: no a? (%t), aaaa? (%t), ans? (%t); no-op",
300+
!is4, !is6, noips)
301+
}
291302
return ans, nil
292303
}
293304

@@ -348,7 +359,9 @@ func (m *ipmapper) undoAlgAndOrNat64(ip64 []netip.Addr, tid, uid string) []netip
348359
// based on the dialers.Use4/Use6 settings.
349360
gw := m.g
350361
if gw == nil {
351-
log.V("ipmapper: undoAlg: no-op for %v on %s[%s]; no gateway", ip64, tid, uid)
362+
if settings.Debug {
363+
log.V("ipmapper: undoAlg: no-op for %v on %s[%s]; no gateway", ip64, tid, uid)
364+
}
352365
return ip64
353366
}
354367
realips := make([]netip.Addr, 0, len(ip64))

intra/dns53/upstream.go

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -157,8 +157,10 @@ func (t *transport) pxdial(network, pid string) (*dns.Conn, string, uintptr, err
157157
return c, rpid, who, nil
158158
}
159159

160-
log.V("dns53: pxdial: (%s) using %s relay/proxy %s at %s",
161-
t.id, network, px.ID(), px.GetAddr())
160+
if settings.Debug {
161+
log.V("dns53: pxdial: (%s) using %s relay/proxy %s at %s",
162+
t.id, network, px.ID(), px.GetAddr())
163+
}
162164

163165
pxconn, err := px.Dialer().Dial(network, t.addrport)
164166
if err != nil {
@@ -198,7 +200,9 @@ func (t *transport) fromPool(id uintptr) (c *dns.Conn) {
198200
log.W("dns53: pool: (%s) not a dns.Conn for %d!", t.id, id)
199201
return &dns.Conn{Conn: pooled}
200202
}
201-
log.V("dns53: pool: (%s) got conn for %d", t.id, id)
203+
if settings.Debug {
204+
log.V("dns53: pool: (%s) got conn for %d", t.id, id)
205+
}
202206
return
203207
}
204208

@@ -308,8 +312,10 @@ func (t *transport) Query(network string, q *dns.Msg, smm *x.DNSSummary) (ans *d
308312
smm.Status = status
309313
t.est.Add(smm.Latency)
310314

311-
log.V("dns53: (%s) len(res): %d, data: %s, via: %s, err? %v",
312-
t.id, xdns.Len(ans), smm.RData, smm.PID, err)
315+
if settings.Debug {
316+
log.V("dns53: (%s) len(res): %d, data: %s, via: %s, err? %v",
317+
t.id, xdns.Len(ans), smm.RData, smm.PID, err)
318+
}
313319

314320
return ans, err
315321
}

intra/dnscrypt/multiserver.go

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ import (
3232
"github.com/celzero/firestack/intra/ipn"
3333
"github.com/celzero/firestack/intra/log"
3434
"github.com/celzero/firestack/intra/protect"
35+
"github.com/celzero/firestack/intra/settings"
3536
"github.com/celzero/firestack/intra/xdns"
3637
"github.com/miekg/dns"
3738
"golang.org/x/crypto/curve25519"
@@ -349,8 +350,10 @@ func resolve(network string, data *dns.Msg, si *serverinfo, smm *x.DNSSummary) (
349350
smm.PID = pid
350351
}
351352

352-
log.V("dnscrypt: len(res): %d, data: %s, via: %s, err? %v",
353-
xdns.Len(ans), smm.RData, smm.PID, err)
353+
if settings.Debug {
354+
log.V("dnscrypt: len(res): %d, data: %s, via: %s, err? %v",
355+
xdns.Len(ans), smm.RData, smm.PID, err)
356+
}
354357

355358
return // ans, err
356359
}
@@ -375,7 +378,9 @@ func (proxy *DcMulti) refreshOne(uid string) (bool, error) {
375378
log.E("dnscrypt: refresh failed %s: %s; err: %v", r.name, stamp2str(r.stamp), err)
376379
return false, err
377380
}
378-
log.D("dnscrypt: refresh success %s: %s", r.name, stamp2str(r.stamp))
381+
if settings.Debug {
382+
log.D("dnscrypt: refresh success %s: %s", r.name, stamp2str(r.stamp))
383+
}
379384
return true, nil
380385
}
381386

@@ -523,7 +528,9 @@ func (proxy *DcMulti) RemoveGateways(routescsv string) (int, error) {
523528
if l != n { // routes changed
524529
go proxy.refreshRoutes()
525530
}
526-
log.V("dnscrypt: removed %d/%d; relays: %s", l-n, l, routescsv)
531+
if settings.Debug {
532+
log.V("dnscrypt: removed %d/%d; relays: %s", l-n, l, routescsv)
533+
}
527534
return l - n, nil
528535
}
529536

@@ -534,7 +541,9 @@ func (proxy *DcMulti) removeOne(uid string) int {
534541

535542
// TODO: handle err
536543
n, err := proxy.serversInfo.unregisterServer(uid)
537-
log.D("dnscrypt: removed %s; %d servers (err? %v)", uid, n, err)
544+
if settings.Debug {
545+
log.D("dnscrypt: removed %s; %d servers (err? %v)", uid, n, err)
546+
}
538547
return n
539548
}
540549

@@ -543,7 +552,9 @@ func (proxy *DcMulti) Remove(uid *x.Gostr) bool {
543552
// may be a gateway / relay or a dnscrypt server
544553
n := proxy.removeOne(uid.V())
545554
nr, nerr := proxy.RemoveGateways(uid.V())
546-
log.D("dnscrypt: removed %s; %d servers; %d relays [err %v]", uid, n, nr, nerr)
555+
if settings.Debug {
556+
log.D("dnscrypt: removed %s; %d servers; %d relays [err %v]", uid, n, nr, nerr)
557+
}
547558
return true
548559
}
549560

@@ -580,7 +591,9 @@ func (proxy *DcMulti) addOne(uid, rawstamp string) (string, error) {
580591
proxy.registeredServers[uid] = registeredserver{name: uid, stamp: stamp}
581592
proxy.Unlock()
582593

583-
log.D("dnscrypt: added [%s] %s", uid, stamp2str(stamp))
594+
if settings.Debug {
595+
log.D("dnscrypt: added [%s] %s", uid, stamp2str(stamp))
596+
}
584597
return uid, nil
585598
}
586599

intra/dnscrypt/servers.go

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ import (
3232
"github.com/celzero/firestack/intra/dnsx"
3333
"github.com/celzero/firestack/intra/ipn"
3434
"github.com/celzero/firestack/intra/log"
35+
"github.com/celzero/firestack/intra/settings"
3536
"github.com/celzero/firestack/intra/xdns"
3637
"github.com/miekg/dns"
3738

@@ -101,7 +102,9 @@ func (serversInfo *ServersInfo) getAll() []*serverinfo {
101102
servers = append(servers, si)
102103
}
103104
}
104-
log.V("dnscrypt: getAll: servers [%d/%d]", len(servers), len(serversInfo.inner))
105+
if settings.Debug {
106+
log.V("dnscrypt: getAll: servers [%d/%d]", len(servers), len(serversInfo.inner))
107+
}
105108
return servers
106109
}
107110

@@ -120,7 +123,9 @@ retry:
120123
for _, si := range serversInfo.inner {
121124
if i == candidate || selectAny {
122125
if si != nil && si.status.Load() != dnsx.DEnd {
123-
log.V("dnscrypt: candidate [%v]", si) // may be nil?
126+
if settings.Debug {
127+
log.V("dnscrypt: candidate [%v]", si) // may be nil?
128+
}
124129
serverInfo = si
125130
break
126131
}
@@ -168,7 +173,9 @@ func (serversInfo *ServersInfo) registerServer(name string, stamp stamps.ServerS
168173
}
169174

170175
func (serversInfo *ServersInfo) refresh(proxy *DcMulti) ([]string, error) {
171-
log.D("dnscrypt: refreshing certificates")
176+
if settings.Debug {
177+
log.D("dnscrypt: refreshing certificates")
178+
}
172179
var liveServers []string
173180
var err error
174181
for _, registeredServer := range serversInfo.registeredServers {

0 commit comments

Comments
 (0)