Sfoglia il codice sorgente

Merge pull request #152 from squat/check_netlink_events

pkg/route: correct route error check
Lucas Servén Marín 5 anni fa
parent
commit
e843262064
1 ha cambiato i file con 4 aggiunte e 4 eliminazioni
  1. 4 4
      pkg/route/route.go

+ 4 - 4
pkg/route/route.go

@@ -108,14 +108,14 @@ func (t *Table) Run(stop <-chan struct{}) (<-chan error, error) {
 			switch e.Type {
 			// Watch for deleted routes to reconcile this table's routes.
 			case unix.RTM_DELROUTE:
+				// Filter out invalid routes.
+				if e.Route.Dst == nil {
+					continue
+				}
 				t.mu.Lock()
 				for k := range t.rs {
 					switch r := t.rs[k].(type) {
 					case *netlink.Route:
-						// Filter out invalid routes.
-						if r == nil || r.Dst == nil {
-							continue
-						}
 						// If any deleted route's destination matches a destination
 						// in the table, reset the corresponding route just in case.
 						if r.Dst.IP.Equal(e.Route.Dst.IP) && r.Dst.Mask.String() == e.Route.Dst.Mask.String() {