Reorganized package tree and added doc comments
This commit is contained in:
34
cmd/router/srvhnakra/hnakra.go
Normal file
34
cmd/router/srvhnakra/hnakra.go
Normal file
@@ -0,0 +1,34 @@
|
||||
package srvhnakra
|
||||
|
||||
import "log"
|
||||
import "fmt"
|
||||
import "net"
|
||||
import "crypto/tls"
|
||||
import "hnakra/router"
|
||||
import "hnakra/config"
|
||||
|
||||
type Server struct {
|
||||
underlying net.Listener
|
||||
Config config.Config
|
||||
Router *router.Router
|
||||
}
|
||||
|
||||
func (server *Server) ListenAndServe () (err error) {
|
||||
server.underlying, err = tls.Listen (
|
||||
"tcp", fmt.Sprint(":", server.Config.RouterPort()),
|
||||
config.TLSConfigFor(server.Config))
|
||||
if err != nil { return err }
|
||||
|
||||
log.Println(".// router on", server.underlying.Addr())
|
||||
|
||||
for {
|
||||
conn, err := server.underlying.Accept()
|
||||
if err != nil { return err }
|
||||
log.Println("-=E incoming connection from", conn.RemoteAddr())
|
||||
server.Router.Accept(conn)
|
||||
}
|
||||
}
|
||||
|
||||
func (server *Server) Close () error {
|
||||
return server.underlying.Close()
|
||||
}
|
||||
31
cmd/router/srvhttps/https.go
Normal file
31
cmd/router/srvhttps/https.go
Normal file
@@ -0,0 +1,31 @@
|
||||
package srvhttps
|
||||
|
||||
import "fmt"
|
||||
import "log"
|
||||
import "net/http"
|
||||
import "hnakra/config"
|
||||
|
||||
type Server struct {
|
||||
underlying *http.Server
|
||||
Config config.Config
|
||||
Handler http.Handler
|
||||
}
|
||||
|
||||
func (server *Server) ListenAndServe () error {
|
||||
server.underlying = &http.Server {
|
||||
Addr: fmt.Sprint(":", server.Config.HTTPSPort()),
|
||||
// ReadHeaderTimeout: timeoutReadHeader * time.Second,
|
||||
// ReadTimeout: timeoutRead * time.Second,
|
||||
// WriteTimeout: timeoutWrite * time.Second,
|
||||
// IdleTimeout: timeoutIdle * time.Second,
|
||||
TLSConfig: config.TLSConfigFor(server.Config),
|
||||
Handler: server.Handler,
|
||||
}
|
||||
|
||||
log.Println(".// https on", server.underlying.Addr)
|
||||
return server.underlying.ListenAndServeTLS("", "")
|
||||
}
|
||||
|
||||
func (server *Server) Close () error {
|
||||
return server.underlying.Close()
|
||||
}
|
||||
Reference in New Issue
Block a user