@@ -30,8 +30,6 @@ var GracefullyExit = make(chan struct{})
30
30
var EmptyConfig * daeConfig.Config
31
31
var c * control.ControlPlane
32
32
var onceWaitingNetwork sync.Once
33
- var ChMsg chan * control.Msg
34
- var MsgProducer * DaeMsgProducer
35
33
36
34
func init () {
37
35
sections , err := config_parser .Parse (`global{} routing{}` )
@@ -45,11 +43,10 @@ func init() {
45
43
}
46
44
47
45
func ControlPlane () (* control.ControlPlane , error ) {
48
- ctl := c
49
- if ctl == nil {
46
+ if c == nil {
50
47
return nil , ErrControlPlaneNotInit
51
48
}
52
- return ctl , nil
49
+ return c , nil
53
50
}
54
51
55
52
func Run (log * logrus.Logger , conf * daeConfig.Config , externGeoDataDirs []string , disableTimestamp bool , dry bool ) (err error ) {
@@ -70,10 +67,7 @@ func Run(log *logrus.Logger, conf *daeConfig.Config, externGeoDataDirs []string,
70
67
}
71
68
72
69
// New c.
73
- ChMsg = make (chan * control.Msg , 10 )
74
- MsgProducer = NewDaeMsgProducer (ChMsg )
75
- go MsgProducer .Run ()
76
- c , err = newControlPlane (log , nil , nil , conf , externGeoDataDirs , ChMsg )
70
+ c , err = newControlPlane (log , nil , nil , conf , externGeoDataDirs )
77
71
if err != nil {
78
72
return err
79
73
}
@@ -150,10 +144,8 @@ loop:
150
144
// Only keep dns cache when ip version preference not change.
151
145
dnsCache = c .CloneDnsCache ()
152
146
}
153
- // New ChMsg.
154
- newChMsg := make (chan * control.Msg , 10 )
155
147
log .Warnln ("[Reload] Load new control plane" )
156
- newC , err := newControlPlane (log , obj , dnsCache , newConf , externGeoDataDirs , newChMsg )
148
+ newC , err := newControlPlane (log , obj , dnsCache , newConf , externGeoDataDirs )
157
149
if err != nil {
158
150
/* dae-wing start */
159
151
errReload = err
@@ -163,7 +155,7 @@ loop:
163
155
"err" : err ,
164
156
}).Errorln ("[Reload] Failed to reload; try to roll back configuration" )
165
157
// Load last config back.
166
- newC , err = newControlPlane (log , obj , dnsCache , conf , externGeoDataDirs , ChMsg )
158
+ newC , err = newControlPlane (log , obj , dnsCache , conf , externGeoDataDirs )
167
159
if err != nil {
168
160
obj .Close ()
169
161
c .Close ()
@@ -172,7 +164,6 @@ loop:
172
164
}).Fatalln ("[Reload] Failed to roll back configuration" )
173
165
}
174
166
newConf = conf
175
- newChMsg = ChMsg
176
167
log .Errorln ("[Reload] Last reload failed; rolled back configuration" )
177
168
} else {
178
169
log .Warnln ("[Reload] Stopped old control plane" )
@@ -189,8 +180,6 @@ loop:
189
180
oldC := c
190
181
c = newC
191
182
conf = newConf
192
- ChMsg = newChMsg
193
- MsgProducer .ReassignChMsg (newChMsg )
194
183
reloading = true
195
184
/* dae-wing start */
196
185
chCallback = newReloadMsg .Callback
@@ -206,7 +195,7 @@ loop:
206
195
return nil
207
196
}
208
197
209
- func newControlPlane (log * logrus.Logger , bpf interface {}, dnsCache map [string ]* control.DnsCache , conf * daeConfig.Config , externGeoDataDirs []string , chMsg chan <- * control. Msg ) (c * control.ControlPlane , err error ) {
198
+ func newControlPlane (log * logrus.Logger , bpf interface {}, dnsCache map [string ]* control.DnsCache , conf * daeConfig.Config , externGeoDataDirs []string ) (c * control.ControlPlane , err error ) {
210
199
211
200
// Print configuration.
212
201
if log .IsLevelEnabled (logrus .DebugLevel ) {
@@ -240,18 +229,17 @@ func newControlPlane(log *logrus.Logger, bpf interface{}, dnsCache map[string]*c
240
229
}
241
230
242
231
// New dae control plane.
243
- c , err = control .NewControlPlane (& control.Options {
244
- Log : log ,
245
- Bpf : bpf ,
246
- DnsCache : dnsCache ,
247
- TagToNodeList : subscriptionToNodeList ,
248
- Groups : conf .Group ,
249
- RoutingA : & conf .Routing ,
250
- Global : & conf .Global ,
251
- DnsConfig : & conf .Dns ,
252
- ExternGeoDataDirs : externGeoDataDirs ,
253
- ChMsg : chMsg ,
254
- })
232
+ c , err = control .NewControlPlane (
233
+ log ,
234
+ bpf ,
235
+ dnsCache ,
236
+ subscriptionToNodeList ,
237
+ conf .Group ,
238
+ & conf .Routing ,
239
+ & conf .Global ,
240
+ & conf .Dns ,
241
+ externGeoDataDirs ,
242
+ )
255
243
if err != nil {
256
244
return nil , err
257
245
}
0 commit comments