add: client MTU settings available from command line
This commit is contained in:
		
							parent
							
								
									ad4ca4d9bb
								
							
						
					
					
						commit
						026bca5078
					
				
							
								
								
									
										6
									
								
								main.go
								
								
								
								
							
							
						
						
									
										6
									
								
								main.go
								
								
								
								
							|  | @ -3,10 +3,11 @@ package main | ||||||
| import ( | import ( | ||||||
| 	"flag" | 	"flag" | ||||||
| 	"fmt" | 	"fmt" | ||||||
| 	"github.com/labstack/echo/v4" |  | ||||||
| 	"net/http" | 	"net/http" | ||||||
| 	"time" | 	"time" | ||||||
| 
 | 
 | ||||||
|  | 	"github.com/labstack/echo/v4" | ||||||
|  | 
 | ||||||
| 	rice "github.com/GeertJohan/go.rice" | 	rice "github.com/GeertJohan/go.rice" | ||||||
| 	"github.com/ngoduykhanh/wireguard-ui/emailer" | 	"github.com/ngoduykhanh/wireguard-ui/emailer" | ||||||
| 	"github.com/ngoduykhanh/wireguard-ui/handler" | 	"github.com/ngoduykhanh/wireguard-ui/handler" | ||||||
|  | @ -34,6 +35,7 @@ var ( | ||||||
| 	flagEmailFrom      string | 	flagEmailFrom      string | ||||||
| 	flagEmailFromName  string = "WireGuard UI" | 	flagEmailFromName  string = "WireGuard UI" | ||||||
| 	flagSessionSecret  string | 	flagSessionSecret  string | ||||||
|  | 	flagClientMTU      int | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| const ( | const ( | ||||||
|  | @ -60,6 +62,7 @@ func init() { | ||||||
| 	flag.StringVar(&flagEmailFrom, "email-from", util.LookupEnvOrString("EMAIL_FROM_ADDRESS", flagEmailFrom), "'From' email address.") | 	flag.StringVar(&flagEmailFrom, "email-from", util.LookupEnvOrString("EMAIL_FROM_ADDRESS", flagEmailFrom), "'From' email address.") | ||||||
| 	flag.StringVar(&flagEmailFromName, "email-from-name", util.LookupEnvOrString("EMAIL_FROM_NAME", flagEmailFromName), "'From' email name.") | 	flag.StringVar(&flagEmailFromName, "email-from-name", util.LookupEnvOrString("EMAIL_FROM_NAME", flagEmailFromName), "'From' email name.") | ||||||
| 	flag.StringVar(&flagSessionSecret, "session-secret", util.LookupEnvOrString("SESSION_SECRET", flagSessionSecret), "The key used to encrypt session cookies.") | 	flag.StringVar(&flagSessionSecret, "session-secret", util.LookupEnvOrString("SESSION_SECRET", flagSessionSecret), "The key used to encrypt session cookies.") | ||||||
|  | 	flag.IntVar(&flagClientMTU, "client-mtu", util.LookupEnvOrInt("CLIENT_MTU", flagClientMTU), "Client default MTU") | ||||||
| 	flag.Parse() | 	flag.Parse() | ||||||
| 
 | 
 | ||||||
| 	// update runtime config
 | 	// update runtime config
 | ||||||
|  | @ -75,6 +78,7 @@ func init() { | ||||||
| 	util.EmailFrom = flagEmailFrom | 	util.EmailFrom = flagEmailFrom | ||||||
| 	util.EmailFromName = flagEmailFromName | 	util.EmailFromName = flagEmailFromName | ||||||
| 	util.SessionSecret = []byte(flagSessionSecret) | 	util.SessionSecret = []byte(flagSessionSecret) | ||||||
|  | 	util.ClientMTU = flagClientMTU | ||||||
| 
 | 
 | ||||||
| 	// print app information
 | 	// print app information
 | ||||||
| 	fmt.Println("Wireguard UI") | 	fmt.Println("Wireguard UI") | ||||||
|  |  | ||||||
|  | @ -16,6 +16,7 @@ var ( | ||||||
| 	EmailSubject   string | 	EmailSubject   string | ||||||
| 	EmailContent   string | 	EmailContent   string | ||||||
| 	SessionSecret  []byte | 	SessionSecret  []byte | ||||||
|  | 	ClientMTU      int | ||||||
| ) | ) | ||||||
| 
 | 
 | ||||||
| const ( | const ( | ||||||
|  |  | ||||||
|  | @ -27,6 +27,10 @@ func BuildClientConfig(client model.Client, server model.Server, setting model.G | ||||||
| 	if client.UseServerDNS { | 	if client.UseServerDNS { | ||||||
| 		clientDNS = fmt.Sprintf("DNS = %s\n", strings.Join(setting.DNSServers, ",")) | 		clientDNS = fmt.Sprintf("DNS = %s\n", strings.Join(setting.DNSServers, ",")) | ||||||
| 	} | 	} | ||||||
|  | 	clientMTU := "" | ||||||
|  | 	if ClientMTU > 0 { | ||||||
|  | 		clientMTU = fmt.Sprintf("MTU =  %d\n", ClientMTU) | ||||||
|  | 	} | ||||||
| 
 | 
 | ||||||
| 	// Peer section
 | 	// Peer section
 | ||||||
| 	peerPublicKey := fmt.Sprintf("PublicKey = %s\n", server.KeyPair.PublicKey) | 	peerPublicKey := fmt.Sprintf("PublicKey = %s\n", server.KeyPair.PublicKey) | ||||||
|  | @ -60,6 +64,7 @@ func BuildClientConfig(client model.Client, server model.Server, setting model.G | ||||||
| 		clientAddress + | 		clientAddress + | ||||||
| 		clientPrivateKey + | 		clientPrivateKey + | ||||||
| 		clientDNS + | 		clientDNS + | ||||||
|  | 		clientMTU + | ||||||
| 		"\n[Peer]\n" + | 		"\n[Peer]\n" + | ||||||
| 		peerPublicKey + | 		peerPublicKey + | ||||||
| 		peerPresharedKey + | 		peerPresharedKey + | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue