summaryrefslogtreecommitdiff
path: root/pkg/auth/sip2/auth.go
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/auth/sip2/auth.go')
-rw-r--r--pkg/auth/sip2/auth.go17
1 files changed, 15 insertions, 2 deletions
diff --git a/pkg/auth/sip2/auth.go b/pkg/auth/sip2/auth.go
index f5ad0a4..58441e4 100644
--- a/pkg/auth/sip2/auth.go
+++ b/pkg/auth/sip2/auth.go
@@ -16,6 +16,9 @@ const SipPassVar string = "VPNWEB_SIP_PASS"
const SipPortVar string = "VPNWEB_SIP_PORT"
const SipHostVar string = "VPNWEB_SIP_HOST"
const SipLibrLocVar string = "VPNWEB_SIP_LIBR_LOCATION"
+const SipTerminatorVar string = "VPNWEB_SIP_TERMINATOR"
+
+const SipDefaultTerminator string = "\r\n"
type Credentials struct {
User string
@@ -30,10 +33,18 @@ func getConfigFromEnv(envVar string) string {
return val
}
+func setupTerminatorFromEnv() {
+ config.FallbackToEnv(&TelnetTerminator, SipTerminatorVar, SipDefaultTerminator)
+ if TelnetTerminator == "\\r" {
+ TelnetTerminator = "\r"
+ } else if TelnetTerminator == "\\r\\n" {
+ TelnetTerminator = "\r\n"
+ }
+}
+
func SipAuthenticator(opts *config.Opts) http.HandlerFunc {
- /* TODO -- catch connection errors */
- log.Println("Initializing sip2 authenticator")
+ log.Println("Initializing SIP2 authenticator")
SipUser := getConfigFromEnv(SipUserVar)
SipPass := getConfigFromEnv(SipPassVar)
@@ -41,6 +52,8 @@ func SipAuthenticator(opts *config.Opts) http.HandlerFunc {
SipPort := getConfigFromEnv(SipPortVar)
SipLibrLoc := getConfigFromEnv(SipLibrLocVar)
+ setupTerminatorFromEnv()
+
sip := NewClient(SipHost, SipPort, SipLibrLoc)
ok, err := sip.Connect()