mirror of
				https://github.com/coredns/coredns.git
				synced 2025-10-30 17:53:21 -04:00 
			
		
		
		
	middleware/kubernetes: put reverse function in own file (#863)
Move reverse function and (some) test code to reverse*.go
This commit is contained in:
		
							
								
								
									
										32
									
								
								middleware/kubernetes/reverse.go
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								middleware/kubernetes/reverse.go
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | ||||
| package kubernetes | ||||
|  | ||||
| import ( | ||||
| 	"net" | ||||
|  | ||||
| 	"github.com/coredns/coredns/middleware" | ||||
| 	"github.com/coredns/coredns/middleware/etcd/msg" | ||||
| 	"github.com/coredns/coredns/middleware/pkg/dnsutil" | ||||
| 	"github.com/coredns/coredns/request" | ||||
| ) | ||||
|  | ||||
| // Reverse implements the ServiceBackend interface. | ||||
| func (k *Kubernetes) Reverse(state request.Request, exact bool, opt middleware.Options) ([]msg.Service, []msg.Service, error) { | ||||
|  | ||||
| 	ip := dnsutil.ExtractAddressFromReverse(state.Name()) | ||||
| 	if ip == "" { | ||||
| 		return nil, nil, nil | ||||
| 	} | ||||
|  | ||||
| 	records := k.getServiceRecordForIP(ip, state.Name()) | ||||
| 	return records, nil, nil | ||||
| } | ||||
|  | ||||
| func (k *Kubernetes) isRequestInReverseRange(name string) bool { | ||||
| 	ip := dnsutil.ExtractAddressFromReverse(name) | ||||
| 	for _, c := range k.ReverseCidrs { | ||||
| 		if c.Contains(net.ParseIP(ip)) { | ||||
| 			return true | ||||
| 		} | ||||
| 	} | ||||
| 	return false | ||||
| } | ||||
		Reference in New Issue
	
	Block a user