mirror of
				https://github.com/pion/webrtc.git
				synced 2025-11-01 03:04:06 +08:00 
			
		
		
		
	Add EnableLoopbackCandidate flag
Add EnableLoopbackCandidate flag
This commit is contained in:
		| @@ -108,6 +108,7 @@ func (g *ICEGatherer) createAgent() error { | |||||||
| 		IPFilter:               g.api.settingEngine.candidates.IPFilter, | 		IPFilter:               g.api.settingEngine.candidates.IPFilter, | ||||||
| 		NAT1To1IPs:             g.api.settingEngine.candidates.NAT1To1IPs, | 		NAT1To1IPs:             g.api.settingEngine.candidates.NAT1To1IPs, | ||||||
| 		NAT1To1IPCandidateType: nat1To1CandiTyp, | 		NAT1To1IPCandidateType: nat1To1CandiTyp, | ||||||
|  | 		IncludeLoopback:        g.api.settingEngine.candidates.IncludeLoopbackCandidate, | ||||||
| 		Net:                    g.api.settingEngine.vnet, | 		Net:                    g.api.settingEngine.vnet, | ||||||
| 		MulticastDNSMode:       mDNSMode, | 		MulticastDNSMode:       mDNSMode, | ||||||
| 		MulticastDNSHostName:   g.api.settingEngine.candidates.MulticastDNSHostName, | 		MulticastDNSHostName:   g.api.settingEngine.candidates.MulticastDNSHostName, | ||||||
|   | |||||||
| @@ -37,16 +37,17 @@ type SettingEngine struct { | |||||||
| 		ICERelayAcceptanceMinWait *time.Duration | 		ICERelayAcceptanceMinWait *time.Duration | ||||||
| 	} | 	} | ||||||
| 	candidates struct { | 	candidates struct { | ||||||
| 		ICELite                bool | 		ICELite                  bool | ||||||
| 		ICENetworkTypes        []NetworkType | 		ICENetworkTypes          []NetworkType | ||||||
| 		InterfaceFilter        func(string) bool | 		InterfaceFilter          func(string) bool | ||||||
| 		IPFilter               func(net.IP) bool | 		IPFilter                 func(net.IP) bool | ||||||
| 		NAT1To1IPs             []string | 		NAT1To1IPs               []string | ||||||
| 		NAT1To1IPCandidateType ICECandidateType | 		NAT1To1IPCandidateType   ICECandidateType | ||||||
| 		MulticastDNSMode       ice.MulticastDNSMode | 		MulticastDNSMode         ice.MulticastDNSMode | ||||||
| 		MulticastDNSHostName   string | 		MulticastDNSHostName     string | ||||||
| 		UsernameFragment       string | 		UsernameFragment         string | ||||||
| 		Password               string | 		Password                 string | ||||||
|  | 		IncludeLoopbackCandidate bool | ||||||
| 	} | 	} | ||||||
| 	replayProtection struct { | 	replayProtection struct { | ||||||
| 		DTLS  *uint | 		DTLS  *uint | ||||||
| @@ -195,6 +196,12 @@ func (e *SettingEngine) SetNAT1To1IPs(ips []string, candidateType ICECandidateTy | |||||||
| 	e.candidates.NAT1To1IPCandidateType = candidateType | 	e.candidates.NAT1To1IPCandidateType = candidateType | ||||||
| } | } | ||||||
|  |  | ||||||
|  | // SetIncludeLoopbackCandidate enable pion to gather loopback candidates, it is useful | ||||||
|  | // for some VM have public IP mapped to loopback interface | ||||||
|  | func (e *SettingEngine) SetIncludeLoopbackCandidate(include bool) { | ||||||
|  | 	e.candidates.IncludeLoopbackCandidate = include | ||||||
|  | } | ||||||
|  |  | ||||||
| // SetAnsweringDTLSRole sets the DTLS role that is selected when offering | // SetAnsweringDTLSRole sets the DTLS role that is selected when offering | ||||||
| // The DTLS role controls if the WebRTC Client as a client or server. This | // The DTLS role controls if the WebRTC Client as a client or server. This | ||||||
| // may be useful when interacting with non-compliant clients or debugging issues. | // may be useful when interacting with non-compliant clients or debugging issues. | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 cnderrauber
					cnderrauber