Skip to content

Commit 3faaa67

Browse files
authored
Merge pull request #63 from blinklabs-io/chore/golines
chore: run golines
2 parents eaf8368 + 22196ae commit 3faaa67

File tree

6 files changed

+130
-43
lines changed

6 files changed

+130
-43
lines changed

cmd/cdnsd/main.go

Lines changed: 24 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,12 @@ var cmdlineFlags struct {
2525
}
2626

2727
func main() {
28-
flag.StringVar(&cmdlineFlags.configFile, "config", "", "path to config file to load")
28+
flag.StringVar(
29+
&cmdlineFlags.configFile,
30+
"config",
31+
"",
32+
"path to config file to load",
33+
)
2934
flag.Parse()
3035

3136
// Load config
@@ -54,9 +59,20 @@ func main() {
5459

5560
// Start debug listener
5661
if cfg.Debug.ListenPort > 0 {
57-
logger.Infof("starting debug listener on %s:%d", cfg.Debug.ListenAddress, cfg.Debug.ListenPort)
62+
logger.Infof(
63+
"starting debug listener on %s:%d",
64+
cfg.Debug.ListenAddress,
65+
cfg.Debug.ListenPort,
66+
)
5867
go func() {
59-
err := http.ListenAndServe(fmt.Sprintf("%s:%d", cfg.Debug.ListenAddress, cfg.Debug.ListenPort), nil)
68+
err := http.ListenAndServe(
69+
fmt.Sprintf(
70+
"%s:%d",
71+
cfg.Debug.ListenAddress,
72+
cfg.Debug.ListenPort,
73+
),
74+
nil,
75+
)
6076
if err != nil {
6177
logger.Fatalf("failed to start debug listener: %s", err)
6278
}
@@ -69,7 +85,11 @@ func main() {
6985
}
7086

7187
// Start DNS listener
72-
logger.Infof("starting DNS listener on %s:%d", cfg.Dns.ListenAddress, cfg.Dns.ListenPort)
88+
logger.Infof(
89+
"starting DNS listener on %s:%d",
90+
cfg.Dns.ListenAddress,
91+
cfg.Dns.ListenPort,
92+
)
7393
if err := dns.Start(); err != nil {
7494
logger.Fatalf("failed to start DNS listener: %s", err)
7595
}

internal/config/config.go

Lines changed: 16 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -37,32 +37,32 @@ type Config struct {
3737

3838
type LoggingConfig struct {
3939
Healthchecks bool `yaml:"healthchecks" envconfig:"LOGGING_HEALTHCHECKS"`
40-
Level string `yaml:"level" envconfig:"LOGGING_LEVEL"`
41-
QueryLog bool `yaml:"queryLog" envconfig:"LOGGING_QUERY_LOG"`
40+
Level string `yaml:"level" envconfig:"LOGGING_LEVEL"`
41+
QueryLog bool `yaml:"queryLog" envconfig:"LOGGING_QUERY_LOG"`
4242
}
4343

4444
type DnsConfig struct {
45-
ListenAddress string `yaml:"address" envconfig:"DNS_LISTEN_ADDRESS"`
46-
ListenPort uint `yaml:"port" envconfig:"DNS_LISTEN_PORT"`
45+
ListenAddress string `yaml:"address" envconfig:"DNS_LISTEN_ADDRESS"`
46+
ListenPort uint `yaml:"port" envconfig:"DNS_LISTEN_PORT"`
4747
RecursionEnabled bool `yaml:"recursionEnabled" envconfig:"DNS_RECURSION"`
48-
FallbackServers []string `yaml:"fallbackServers" envconfig:"DNS_FALLBACK_SERVERS"`
48+
FallbackServers []string `yaml:"fallbackServers" envconfig:"DNS_FALLBACK_SERVERS"`
4949
}
5050

5151
type DebugConfig struct {
5252
ListenAddress string `yaml:"address" envconfig:"DEBUG_ADDRESS"`
53-
ListenPort uint `yaml:"port" envconfig:"DEBUG_PORT"`
53+
ListenPort uint `yaml:"port" envconfig:"DEBUG_PORT"`
5454
}
5555

5656
type MetricsConfig struct {
5757
ListenAddress string `yaml:"address" envconfig:"METRICS_LISTEN_ADDRESS"`
58-
ListenPort uint `yaml:"port" envconfig:"METRICS_LISTEN_PORT"`
58+
ListenPort uint `yaml:"port" envconfig:"METRICS_LISTEN_PORT"`
5959
}
6060

6161
type IndexerConfig struct {
62-
Network string `yaml:"network" envconfig:"INDEXER_NETWORK"`
63-
NetworkMagic uint32 `yaml:"networkMagic" envconfig:"INDEXER_NETWORK_MAGIC"`
64-
Address string `yaml:"address" envconfig:"INDEXER_TCP_ADDRESS"`
65-
SocketPath string `yaml:"socketPath" envconfig:"INDEXER_SOCKET_PATH"`
62+
Network string `yaml:"network" envconfig:"INDEXER_NETWORK"`
63+
NetworkMagic uint32 `yaml:"networkMagic" envconfig:"INDEXER_NETWORK_MAGIC"`
64+
Address string `yaml:"address" envconfig:"INDEXER_TCP_ADDRESS"`
65+
SocketPath string `yaml:"socketPath" envconfig:"INDEXER_SOCKET_PATH"`
6666
ScriptAddress string `yaml:"scriptAddress" envconfig:"INDEXER_SCRIPT_ADDRESS"`
6767
InterceptHash string `yaml:"interceptHash" envconfig:"INDEXER_INTERCEPT_HASH"`
6868
InterceptSlot uint64 `yaml:"interceptSlot" envconfig:"INDEXER_INTERCEPT_SLOT"`
@@ -83,7 +83,11 @@ var globalConfig = &Config{
8383
ListenAddress: "",
8484
ListenPort: 8053,
8585
// hdns.io
86-
FallbackServers: []string{"103.196.38.38", "103.196.38.39", "103.196.38.40"},
86+
FallbackServers: []string{
87+
"103.196.38.38",
88+
"103.196.38.39",
89+
"103.196.38.40",
90+
},
8791
},
8892
Debug: DebugConfig{
8993
ListenAddress: "localhost",

internal/dns/dns.go

Lines changed: 44 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,28 @@ import (
1515

1616
func Start() error {
1717
cfg := config.GetConfig()
18-
listenAddr := fmt.Sprintf("%s:%d", cfg.Dns.ListenAddress, cfg.Dns.ListenPort)
18+
listenAddr := fmt.Sprintf(
19+
"%s:%d",
20+
cfg.Dns.ListenAddress,
21+
cfg.Dns.ListenPort,
22+
)
1923
// Setup handler
2024
dns.HandleFunc(".", handleQuery)
2125
// UDP listener
22-
serverUdp := &dns.Server{Addr: listenAddr, Net: "udp", TsigSecret: nil, ReusePort: true}
26+
serverUdp := &dns.Server{
27+
Addr: listenAddr,
28+
Net: "udp",
29+
TsigSecret: nil,
30+
ReusePort: true,
31+
}
2332
go startListener(serverUdp)
2433
// TCP listener
25-
serverTcp := &dns.Server{Addr: listenAddr, Net: "tcp", TsigSecret: nil, ReusePort: true}
34+
serverTcp := &dns.Server{
35+
Addr: listenAddr,
36+
Net: "tcp",
37+
TsigSecret: nil,
38+
ReusePort: true,
39+
}
2640
go startListener(serverTcp)
2741
return nil
2842
}
@@ -48,9 +62,15 @@ func handleQuery(w dns.ResponseWriter, r *dns.Msg) {
4862
}
4963
}
5064

51-
nameserverDomain, nameservers, err := findNameserversForDomain(r.Question[0].Name)
65+
nameserverDomain, nameservers, err := findNameserversForDomain(
66+
r.Question[0].Name,
67+
)
5268
if err != nil {
53-
logger.Errorf("failed to lookup nameservers for %s: %s", r.Question[0].Name, err)
69+
logger.Errorf(
70+
"failed to lookup nameservers for %s: %s",
71+
r.Question[0].Name,
72+
err,
73+
)
5474
}
5575
if nameservers != nil {
5676
// Assemble response
@@ -158,12 +178,23 @@ func doQuery(msg *dns.Msg, address string, recursive bool) (*dns.Msg, error) {
158178
if !strings.Contains(address, ":") {
159179
address = address + `:53`
160180
}
161-
logger.Debugf("querying %s: %s", address, formatMessageQuestionSection(msg.Question))
181+
logger.Debugf(
182+
"querying %s: %s",
183+
address,
184+
formatMessageQuestionSection(msg.Question),
185+
)
162186
resp, err := dns.Exchange(msg, address)
163187
if err != nil {
164188
return nil, err
165189
}
166-
logger.Debugf("response: rcode=%s, authoritative=%v, authority=%s, answer=%s, extra=%s", dns.RcodeToString[resp.Rcode], resp.Authoritative, formatMessageAnswerSection(resp.Ns), formatMessageAnswerSection(resp.Answer), formatMessageAnswerSection(resp.Extra))
190+
logger.Debugf(
191+
"response: rcode=%s, authoritative=%v, authority=%s, answer=%s, extra=%s",
192+
dns.RcodeToString[resp.Rcode],
193+
resp.Authoritative,
194+
formatMessageAnswerSection(resp.Ns),
195+
formatMessageAnswerSection(resp.Answer),
196+
formatMessageAnswerSection(resp.Extra),
197+
)
167198
// Immediately return authoritative response
168199
if resp.Authoritative {
169200
return resp, nil
@@ -195,7 +226,9 @@ func doQuery(msg *dns.Msg, address string, recursive bool) (*dns.Msg, error) {
195226
return resp, nil
196227
}
197228

198-
func findNameserversForDomain(recordName string) (string, map[string][]net.IP, error) {
229+
func findNameserversForDomain(
230+
recordName string,
231+
) (string, map[string][]net.IP, error) {
199232
cfg := config.GetConfig()
200233

201234
// Split record name into labels and lookup each domain and parent until we get a hit
@@ -223,7 +256,9 @@ func findNameserversForDomain(recordName string) (string, map[string][]net.IP, e
223256
// Pick random fallback server
224257
fallbackServer := randomFallbackServer()
225258
for startLabelIdx := 0; startLabelIdx < len(queryLabels); startLabelIdx++ {
226-
lookupDomainName := dns.Fqdn(strings.Join(queryLabels[startLabelIdx:], "."))
259+
lookupDomainName := dns.Fqdn(
260+
strings.Join(queryLabels[startLabelIdx:], "."),
261+
)
227262
m := createQuery(lookupDomainName, dns.TypeNS)
228263
in, err := doQuery(m, fallbackServer, false)
229264
if err != nil {

internal/indexer/indexer.go

Lines changed: 31 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -40,15 +40,17 @@ func (i *Indexer) Start() error {
4040
i.pipeline = pipeline.New()
4141
// Configure pipeline input
4242
inputOpts := []input_chainsync.ChainSyncOptionFunc{
43-
input_chainsync.WithStatusUpdateFunc(func(status input_chainsync.ChainSyncStatus) {
44-
if err := state.GetState().UpdateCursor(status.SlotNumber, status.BlockHash); err != nil {
45-
logger.Errorf("failed to update cursor: %s", err)
46-
}
47-
if !i.tipReached && status.TipReached {
48-
i.tipReached = true
49-
logger.Infof("caught up to chain tip")
50-
}
51-
}),
43+
input_chainsync.WithStatusUpdateFunc(
44+
func(status input_chainsync.ChainSyncStatus) {
45+
if err := state.GetState().UpdateCursor(status.SlotNumber, status.BlockHash); err != nil {
46+
logger.Errorf("failed to update cursor: %s", err)
47+
}
48+
if !i.tipReached && status.TipReached {
49+
i.tipReached = true
50+
logger.Infof("caught up to chain tip")
51+
}
52+
},
53+
),
5254
input_chainsync.WithBulkMode(true),
5355
}
5456
if cfg.Indexer.NetworkMagic > 0 {
@@ -67,7 +69,11 @@ func (i *Indexer) Start() error {
6769
return err
6870
}
6971
if cursorSlotNumber > 0 {
70-
logger.Infof("found previous chainsync cursor: %d, %s", cursorSlotNumber, cursorBlockHash)
72+
logger.Infof(
73+
"found previous chainsync cursor: %d, %s",
74+
cursorSlotNumber,
75+
cursorBlockHash,
76+
)
7177
hashBytes, err := hex.DecodeString(cursorBlockHash)
7278
if err != nil {
7379
return err
@@ -143,22 +149,33 @@ func (i *Indexer) handleEvent(evt event.Event) error {
143149
datum := txOutput.Datum()
144150
if datum != nil {
145151
if _, err := datum.Decode(); err != nil {
146-
logger.Warnf("error decoding TX (%s) output datum: %s", eventCtx.TransactionHash, err)
152+
logger.Warnf(
153+
"error decoding TX (%s) output datum: %s",
154+
eventCtx.TransactionHash,
155+
err,
156+
)
147157
return err
148158
}
149159
datumFields := datum.Value().(cbor.Constructor).Fields()
150160
domainName := string(datumFields[0].(cbor.ByteString).Bytes())
151161
nameServers := map[string]string{}
152162
for _, record := range datumFields[1].([]any) {
153163
recordConstructor := record.(cbor.Constructor)
154-
nameServer := string(recordConstructor.Fields()[0].(cbor.ByteString).Bytes())
155-
ipAddress := string(recordConstructor.Fields()[1].(cbor.ByteString).Bytes())
164+
nameServer := string(
165+
recordConstructor.Fields()[0].(cbor.ByteString).Bytes(),
166+
)
167+
ipAddress := string(
168+
recordConstructor.Fields()[1].(cbor.ByteString).Bytes(),
169+
)
156170
nameServers[nameServer] = ipAddress
157171
}
158172
if err := state.GetState().UpdateDomain(domainName, nameServers); err != nil {
159173
return err
160174
}
161-
logger.Infof("found updated registration for domain: %s", domainName)
175+
logger.Infof(
176+
"found updated registration for domain: %s",
177+
domainName,
178+
)
162179
}
163180
}
164181
return nil

internal/logging/logging.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,9 @@ func Setup() {
2020
// Change timestamp key name
2121
loggerConfig.EncoderConfig.TimeKey = "timestamp"
2222
// Use a human readable time format
23-
loggerConfig.EncoderConfig.EncodeTime = zapcore.TimeEncoderOfLayout(time.RFC3339)
23+
loggerConfig.EncoderConfig.EncodeTime = zapcore.TimeEncoderOfLayout(
24+
time.RFC3339,
25+
)
2426

2527
// Set level
2628
if cfg.Logging.Level != "" {
@@ -50,5 +52,7 @@ func GetDesugaredLogger() *zap.Logger {
5052
}
5153

5254
func GetAccessLogger() *zap.Logger {
53-
return globalLogger.Desugar().With(zap.String("type", "access")).WithOptions(zap.WithCaller(false))
55+
return globalLogger.Desugar().
56+
With(zap.String("type", "access")).
57+
WithOptions(zap.WithCaller(false))
5458
}

internal/state/state.go

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -76,11 +76,18 @@ func (s *State) GetCursor() (uint64, string, error) {
7676
return slotNumber, blockHash, err
7777
}
7878

79-
func (s *State) UpdateDomain(domainName string, nameServers map[string]string) error {
79+
func (s *State) UpdateDomain(
80+
domainName string,
81+
nameServers map[string]string,
82+
) error {
8083
err := s.db.Update(func(txn *badger.Txn) error {
8184
// TODO: find any existing keys for domain and delete
8285
for nameServer, ipAddress := range nameServers {
83-
key := fmt.Sprintf("domain_%s_nameserver_%s", domainName, nameServer)
86+
key := fmt.Sprintf(
87+
"domain_%s_nameserver_%s",
88+
domainName,
89+
nameServer,
90+
)
8491
if err := txn.Set([]byte(key), []byte(ipAddress)); err != nil {
8592
return err
8693
}

0 commit comments

Comments
 (0)