From 7cf072b3caca75427efc9a89dc4489518493817e Mon Sep 17 00:00:00 2001 From: Ingo Oppermann Date: Wed, 16 Apr 2025 10:42:50 +0200 Subject: [PATCH] Fix variable shadowning, prepend / to resource --- srt/srt.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/srt/srt.go b/srt/srt.go index 1974adda..ba435f48 100644 --- a/srt/srt.go +++ b/srt/srt.go @@ -293,7 +293,7 @@ func (s *server) handleConnect(req srt.ConnRequest) srt.ConnType { req.SetPassphrase(s.passphrase) } } else if req.Version() == 5 { - si, err := url.ParseStreamId(streamId) + si, err = url.ParseStreamId(streamId) if err != nil { s.log("", "CONNECT", "INVALID", streamId, err.Error(), client) return srt.REJECT @@ -349,8 +349,10 @@ func (s *server) handleConnect(req srt.ConnRequest) srt.ConnType { } if !s.iam.Enforce(identity, domain, "srt", resource, action) { - s.log(identity, "CONNECT", "FORBIDDEN", si.Resource, "access denied", client) - return srt.REJECT + if !s.iam.Enforce(identity, domain, "srt", filepath.Join("/", resource), action) { + s.log(identity, "CONNECT", "FORBIDDEN", si.Resource, "access denied", client) + return srt.REJECT + } } return mode