when some subfields of authInternalUsers or authHTTPExclude were not
set explicitly in the configuration file, default values were used in
their place. This is caused by a strange behavior of Go
(https://github.com/golang/go/issues/21092)
This is a new authentication system that covers all the features exposed by the server, including playback, API, metrics and PPROF, improves internal authentication by adding permissions, improves HTTP-based authentication by adding the ability to exclude certain actions from being authenticated, adds an additional method (JWT-based authentication).
This commit replaces `os.Setenv` with `t.Setenv` in tests. The
environment variable is automatically restored to its original value
when the test and all its subtests complete.
Reference: https://pkg.go.dev/testing#T.Setenv
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
* Support SRT encryption passphrases on configured paths
* Fix namespace; make passphrase use more clear
* Updates from Alessandro's feedback and lint output
* Fix lint findings
* Update lint.yml
* Update lint.yml
* Fix lint findings
* Add SRT passphrase tests for conf/path
* Reformat test to pass lint
* More changes to pass lint
* More changes to pass lint
* Use safeConf to prevent race conditions
* update API docs
* split configuration checks from connection checks
* add tests
* rename publishSRTPassphrase into srtPublishPassphrase, readSRTPassphrase into srtReadPassphrase
* remove redundant alias
---------
Co-authored-by: aler9 <46489434+aler9@users.noreply.github.com>
rtmpServerKey, rtmpServerCert, recordPath, rpiCameraExposure,
rpiCameraAWB, rpiCameraDenoise, rpiCameraMetering, rpiCameraAfMode,
rpiCameraAfRange, rpiCameraAfSpeed were not set correctly when missing
in the configuration file.
Fixes#1103
gortsplib/v2 supports multiple formats inside a single track (media). This allows to apply the resizing algorithm to single formats inside medias.
For instance, if a media contains a a proprietary format and an H264 format, and the latter has oversized packets, they can now be resized.