Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
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
C++ Shell C
Branch: master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
.hgignore
Makefile.POSIX
QTSSIcecastAuthModule.cpp
QTSSIcecastAuthModule.h
README
build_requiredLibs.sh
mod_load_test.c
tester.cpp

README

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)
Something went wrong with that request. Please try again.