Use 2 result type assertions
parent
bbca924ef0
commit
8db215a1c8
9
media.go
9
media.go
|
@ -2,10 +2,8 @@ package multiserver
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"encoding/binary"
|
"encoding/binary"
|
||||||
"fmt"
|
|
||||||
"log"
|
"log"
|
||||||
"net"
|
"net"
|
||||||
"os"
|
|
||||||
|
|
||||||
"github.com/anon55555/mt/rudp"
|
"github.com/anon55555/mt/rudp"
|
||||||
)
|
)
|
||||||
|
@ -130,12 +128,11 @@ func (p *Peer) fetchMedia() {
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *Peer) announceMedia() {
|
func (p *Peer) announceMedia() {
|
||||||
srvnamekey := GetConfKey("default_server")
|
srvname, ok := GetConfKey("default_server").(string)
|
||||||
if srvnamekey == nil || fmt.Sprintf("%T", srvnamekey) != "string" {
|
if !ok {
|
||||||
log.Print("Default server name not set or not a string")
|
log.Print("Default server name not set or not a string")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
srvname := srvnamekey.(string)
|
|
||||||
|
|
||||||
for _, def := range tooldefs {
|
for _, def := range tooldefs {
|
||||||
data := make([]byte, 2+len(def))
|
data := make([]byte, 2+len(def))
|
||||||
|
@ -315,13 +312,11 @@ func init() {
|
||||||
srvaddr, err := net.ResolveUDPAddr("udp", straddr.(string))
|
srvaddr, err := net.ResolveUDPAddr("udp", straddr.(string))
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
os.Exit(1)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
conn, err := net.DialUDP("udp", nil, srvaddr)
|
conn, err := net.DialUDP("udp", nil, srvaddr)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
os.Exit(1)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
srv, err := Connect(conn, conn.RemoteAddr())
|
srv, err := Connect(conn, conn.RemoteAddr())
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
|
||||||
"log"
|
"log"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
|
@ -179,9 +178,9 @@ func init() {
|
||||||
}
|
}
|
||||||
|
|
||||||
reqprivs := make(map[string]bool)
|
reqprivs := make(map[string]bool)
|
||||||
reqpriv := multiserver.GetConfKey("servers:" + param + ":priv")
|
reqpriv, ok := multiserver.GetConfKey("servers:" + param + ":priv").(string)
|
||||||
if reqpriv != nil && fmt.Sprintf("%T", reqpriv) == "string" {
|
if ok {
|
||||||
reqprivs[reqpriv.(string)] = true
|
reqprivs[reqpriv] = true
|
||||||
}
|
}
|
||||||
|
|
||||||
allow, err := p.CheckPrivs(reqprivs)
|
allow, err := p.CheckPrivs(reqprivs)
|
||||||
|
@ -192,7 +191,7 @@ func init() {
|
||||||
}
|
}
|
||||||
|
|
||||||
if !allow {
|
if !allow {
|
||||||
p.SendChatMsg("You do not have permission to join this server! Required privilege: " + reqpriv.(string))
|
p.SendChatMsg("You do not have permission to join this server! Required privilege: " + reqpriv)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,6 @@ media multiplexing
|
||||||
package main
|
package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
|
||||||
"log"
|
"log"
|
||||||
"net"
|
"net"
|
||||||
"time"
|
"time"
|
||||||
|
@ -16,38 +15,33 @@ import (
|
||||||
)
|
)
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
defaultSrv := multiserver.GetConfKey("default_server")
|
defaultSrv, ok := multiserver.GetConfKey("default_server").(string)
|
||||||
if defaultSrv == nil || fmt.Sprintf("%T", defaultSrv) != "string" {
|
if !ok {
|
||||||
log.Fatal("Default server name not set or not a string")
|
log.Fatal("Default server name not set or not a string")
|
||||||
return
|
|
||||||
}
|
}
|
||||||
|
|
||||||
defaultSrvAddr := multiserver.GetConfKey("servers:" + defaultSrv.(string) + ":address")
|
defaultSrvAddr, ok := multiserver.GetConfKey("servers:" + defaultSrv + ":address").(string)
|
||||||
if defaultSrvAddr == nil || fmt.Sprintf("%T", defaultSrvAddr) != "string" {
|
if !ok {
|
||||||
log.Fatal("Default server address not set or not a string")
|
log.Fatal("Default server address not set or not a string")
|
||||||
return
|
|
||||||
}
|
}
|
||||||
|
|
||||||
host := multiserver.GetConfKey("host")
|
host, ok := multiserver.GetConfKey("host").(string)
|
||||||
if host == nil || fmt.Sprintf("%T", host) != "string" {
|
if !ok {
|
||||||
log.Fatal("Host not set or not a string")
|
log.Fatal("Host not set or not a string")
|
||||||
return
|
|
||||||
}
|
}
|
||||||
|
|
||||||
srvaddr, err := net.ResolveUDPAddr("udp", defaultSrvAddr.(string))
|
srvaddr, err := net.ResolveUDPAddr("udp", defaultSrvAddr)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
return
|
|
||||||
}
|
}
|
||||||
|
|
||||||
lc, err := net.ListenPacket("udp", host.(string))
|
lc, err := net.ListenPacket("udp", host)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
return
|
|
||||||
}
|
}
|
||||||
defer lc.Close()
|
defer lc.Close()
|
||||||
|
|
||||||
log.Print("Listening on " + host.(string))
|
log.Print("Listening on " + host)
|
||||||
|
|
||||||
l := multiserver.Listen(lc)
|
l := multiserver.Listen(lc)
|
||||||
multiserver.SetListener(l)
|
multiserver.SetListener(l)
|
||||||
|
@ -63,7 +57,6 @@ func main() {
|
||||||
conn, err := net.DialUDP("udp", nil, srvaddr)
|
conn, err := net.DialUDP("udp", nil, srvaddr)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
return
|
|
||||||
}
|
}
|
||||||
|
|
||||||
srv, err := multiserver.Connect(conn, conn.RemoteAddr())
|
srv, err := multiserver.Connect(conn, conn.RemoteAddr())
|
||||||
|
|
8
privs.go
8
privs.go
|
@ -2,7 +2,6 @@ package multiserver
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"database/sql"
|
"database/sql"
|
||||||
"fmt"
|
|
||||||
"log"
|
"log"
|
||||||
"strings"
|
"strings"
|
||||||
|
|
||||||
|
@ -167,15 +166,14 @@ func (p *Peer) CheckPrivs(req map[string]bool) (bool, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
admin := GetConfKey("admin")
|
if admin, ok := GetConfKey("admin").(string); ok {
|
||||||
if admin != nil || fmt.Sprintf("%T", admin) == "string" {
|
|
||||||
db, err := initAuthDB()
|
db, err := initAuthDB()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Print(err)
|
log.Print(err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
eprivs, err := readPrivItem(db, admin.(string))
|
eprivs, err := readPrivItem(db, admin)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Print(err)
|
log.Print(err)
|
||||||
return
|
return
|
||||||
|
@ -186,6 +184,6 @@ func init() {
|
||||||
|
|
||||||
newprivs := encodePrivs(privs)
|
newprivs := encodePrivs(privs)
|
||||||
|
|
||||||
modPrivItem(db, admin.(string), newprivs)
|
modPrivItem(db, admin, newprivs)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,6 @@ package multiserver
|
||||||
import (
|
import (
|
||||||
"encoding/binary"
|
"encoding/binary"
|
||||||
"errors"
|
"errors"
|
||||||
"fmt"
|
|
||||||
"log"
|
"log"
|
||||||
"net"
|
"net"
|
||||||
|
|
||||||
|
@ -36,8 +35,8 @@ func (p *Peer) Redirect(newsrv string) error {
|
||||||
|
|
||||||
defer processRedirectDone(p, newsrv)
|
defer processRedirectDone(p, newsrv)
|
||||||
|
|
||||||
straddr := GetConfKey("servers:" + newsrv + ":address")
|
straddr, ok := GetConfKey("servers:" + newsrv + ":address").(string)
|
||||||
if straddr == nil || fmt.Sprintf("%T", straddr) != "string" {
|
if !ok {
|
||||||
return ErrServerDoesNotExist
|
return ErrServerDoesNotExist
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -45,7 +44,7 @@ func (p *Peer) Redirect(newsrv string) error {
|
||||||
return ErrAlreadyConnected
|
return ErrAlreadyConnected
|
||||||
}
|
}
|
||||||
|
|
||||||
srvaddr, err := net.ResolveUDPAddr("udp", straddr.(string))
|
srvaddr, err := net.ResolveUDPAddr("udp", straddr)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue