move url parsing into gortsplib

This commit is contained in:
aler9 2020-05-03 19:47:23 +02:00
parent 02beefcec9
commit 6cb36ab4e6
3 changed files with 9 additions and 16 deletions

2
go.mod
View File

@ -5,7 +5,7 @@ go 1.13
require ( require (
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect
github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d // indirect github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d // indirect
github.com/aler9/gortsplib v0.0.0-20200503140554-28603af339e6 github.com/aler9/gortsplib v0.0.0-20200503173001-aedfa068de59
gopkg.in/alecthomas/kingpin.v2 v2.2.6 gopkg.in/alecthomas/kingpin.v2 v2.2.6
gortc.io/sdp v0.17.0 gortc.io/sdp v0.17.0
) )

4
go.sum
View File

@ -2,8 +2,8 @@ github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 h1:JYp7IbQjafo
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc= github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc=
github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d h1:UQZhZ2O0vMHr2cI+DC1Mbh0TJxzA3RcLoMsFw+aXw7E= github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d h1:UQZhZ2O0vMHr2cI+DC1Mbh0TJxzA3RcLoMsFw+aXw7E=
github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho= github.com/alecthomas/units v0.0.0-20190924025748-f65c72e2690d/go.mod h1:rBZYJk541a8SKzHPHnH3zbiI+7dagKZ0cgpgrD7Fyho=
github.com/aler9/gortsplib v0.0.0-20200503140554-28603af339e6 h1:41jZy+JIekzJXtYdkCsW9ts7D4jubfEVyjMCl7QY2wY= github.com/aler9/gortsplib v0.0.0-20200503173001-aedfa068de59 h1:mcyCJ4cDQ/Wx53Jxce3MaeW3G0tOYMdAcXNRuEO4V9o=
github.com/aler9/gortsplib v0.0.0-20200503140554-28603af339e6/go.mod h1:YiIgmmv0ELkWUy11Jj2h5AgfqLCpy8sIX/l9MmS8+uw= github.com/aler9/gortsplib v0.0.0-20200503173001-aedfa068de59/go.mod h1:YiIgmmv0ELkWUy11Jj2h5AgfqLCpy8sIX/l9MmS8+uw=
github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8= github.com/davecgh/go-spew v1.1.0 h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/pkg/errors v0.8.0 h1:WdK/asTD0HN+q6hsWO3/vpuAkAr+tw6aNJNDFFf0+qw= github.com/pkg/errors v0.8.0 h1:WdK/asTD0HN+q6hsWO3/vpuAkAr+tw6aNJNDFFf0+qw=

View File

@ -5,7 +5,6 @@ import (
"io" "io"
"log" "log"
"net" "net"
"net/url"
"os/exec" "os/exec"
"strconv" "strconv"
"strings" "strings"
@ -236,14 +235,8 @@ func (c *serverClient) handleRequest(req *gortsplib.Request) bool {
return false return false
} }
ur, err := url.Parse(req.Url)
if err != nil {
c.writeResError(req, gortsplib.StatusBadRequest, fmt.Errorf("unable to parse path '%s'", req.Url))
return false
}
path := func() string { path := func() string {
ret := ur.Path ret := req.Url.Path
// remove leading slash // remove leading slash
if len(ret) > 1 { if len(ret) > 1 {
@ -306,7 +299,7 @@ func (c *serverClient) handleRequest(req *gortsplib.Request) bool {
StatusCode: gortsplib.StatusOK, StatusCode: gortsplib.StatusOK,
Header: gortsplib.Header{ Header: gortsplib.Header{
"CSeq": []string{cseq[0]}, "CSeq": []string{cseq[0]},
"Content-Base": []string{req.Url}, "Content-Base": []string{req.Url.String()},
"Content-Type": []string{"application/sdp"}, "Content-Type": []string{"application/sdp"},
}, },
Content: sdp, Content: sdp,
@ -441,7 +434,7 @@ func (c *serverClient) handleRequest(req *gortsplib.Request) bool {
return false return false
} }
err = func() error { err := func() error {
c.p.mutex.Lock() c.p.mutex.Lock()
defer c.p.mutex.Unlock() defer c.p.mutex.Unlock()
@ -500,7 +493,7 @@ func (c *serverClient) handleRequest(req *gortsplib.Request) bool {
return false return false
} }
err = func() error { err := func() error {
c.p.mutex.Lock() c.p.mutex.Lock()
defer c.p.mutex.Unlock() defer c.p.mutex.Unlock()
@ -588,7 +581,7 @@ func (c *serverClient) handleRequest(req *gortsplib.Request) bool {
return false return false
} }
err = func() error { err := func() error {
c.p.mutex.Lock() c.p.mutex.Lock()
defer c.p.mutex.Unlock() defer c.p.mutex.Unlock()
@ -637,7 +630,7 @@ func (c *serverClient) handleRequest(req *gortsplib.Request) bool {
} }
var interleaved string var interleaved string
err = func() error { err := func() error {
c.p.mutex.Lock() c.p.mutex.Lock()
defer c.p.mutex.Unlock() defer c.p.mutex.Unlock()