mirror of
https://github.com/simon-ding/polaris.git
synced 2026-03-06 17:40:46 +08:00
update stun proxy
This commit is contained in:
@@ -12,11 +12,20 @@ import (
|
||||
)
|
||||
|
||||
func (s *Engine) stunProxyDownloadClient() error {
|
||||
|
||||
return s.StartStunProxy("")
|
||||
}
|
||||
|
||||
|
||||
func (s *Engine) StartStunProxy(name string) error {
|
||||
downloaders := s.db.GetAllDonloadClients()
|
||||
for _, d := range downloaders {
|
||||
if !d.Enable {
|
||||
continue
|
||||
}
|
||||
if name != "" && d.Name != name {
|
||||
continue
|
||||
}
|
||||
|
||||
if d.Implementation != downloadclients.ImplementationQbittorrent { //TODO only support qbittorrent for now
|
||||
continue
|
||||
@@ -41,4 +50,4 @@ func (s *Engine) stunProxyDownloadClient() error {
|
||||
|
||||
}
|
||||
return nil
|
||||
}
|
||||
}
|
||||
@@ -236,6 +236,12 @@ func (s *Server) AddDownloadClient(c *gin.Context) (interface{}, error) {
|
||||
}); err != nil {
|
||||
return nil, errors.Wrap(err, "save downloader")
|
||||
}
|
||||
if in.UseNatTraversal {
|
||||
if err := s.core.StartStunProxy(in.Name); err!= nil {
|
||||
return nil, errors.Wrap(err, "start stun proxy")
|
||||
}
|
||||
}
|
||||
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user