Skip to content

An example plugin for the Quicktime Streaming Server / Darwin Streaming Server (dss) that authenticates people streaming using the icecast url authentication api (see http://www.icecast.org/docs/icecast-2.3.1/iceca...). This essentially allows people to easily authenticate and track users on a dss server using a simple HTTP based API

lstoll/QTSSIcecastAuthModule

Repository files navigation

WARNING: This code is a testing prototype, so is bad and has
buffer overflows and will cause the world to end.

This is the auth module for qtss auth and dss

Sample configuration:

<MODULE NAME="QTSSIcecastAuthModule" >
    <PREF NAME="enabled" TYPE="Bool16" >true</PREF>
    <PREF NAME="IPBypassList">127.0.0.*</PREF>
    <PREF NAME="StartSessionEndpoint">http://server/stream_auth/start_session</PREF>
    <PREF NAME="EndSessionEndpoint">http://server/stream_auth/end_session</PREF>
</MODULE>

For multiple IPs, set the list to something like this:

<LIST-PREF NAME="IPBypassList" >
    <VALUE>127.0.0.*</VALUE>
    <VALUE>10.16.248.*</VALUE>
</LIST-PREF>

When the server rejects the module as being not valid, run this on the server:

g++ -ldl mod_load_test.c && ./a.out

This will build and run a tester app that will try to load the module - this will
report any errors while loading (mostly unresolved symbols)

About

An example plugin for the Quicktime Streaming Server / Darwin Streaming Server (dss) that authenticates people streaming using the icecast url authentication api (see http://www.icecast.org/docs/icecast-2.3.1/iceca...). This essentially allows people to easily authenticate and track users on a dss server using a simple HTTP based API

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published