mod_musicindex
1.4.1
|
Core file. More...
#include "mod_musicindex.h"
#include "playlist.h"
#include "config.h"
#include "html.h"
#include "http.h"
#include "sort.h"
#include <http_core.h>
#include <http_main.h>
Go to the source code of this file.
Functions | |
static int | is_msie_user_agent (request_rec *r) |
Check whether we're serving MS IE. | |
static int | handle_musicindex (request_rec *r) |
This is where the magic happens. | |
static int | handle_musicfile (request_rec *r) |
Handler for requests on music files. | |
static void | musicindex_init (server_rec *s, apr_pool_t *p) |
Adds the mod signature into Apache's headers. |
Variables | |
static const handler_rec | musicindex_handlers [] |
module MODULE_VAR_EXPORT | musicindex_module |
Core file.
This file is the core of the module. It contains Apache's mandatory stuff.
http://httpd.apache.org/docs-2.0/developer/API.html http://httpd.apache.org/dev/apidoc/ http://www.apachetutor.org/dev/pools
Complete code documentation.
(low pri whishlist) On the fly tag rewriting or metadata support.
prepare the possibility to generate ices/mpd playlists.
enforce strict type policy.
get rid of str*cmp() whenever possible.
review the randomdir implementation.
Definition in file mod_musicindex.c.
|
static |
Handler for requests on music files.
At the moment it can only forbid acces to files if neither streaming nor download is allowed.
r | Apache request_rec to get and send data |
Definition at line 419 of file mod_musicindex.c.
References ap_set_content_type, apr_psprintf, apr_table_setn, mu_config::cache, cache_backend::epilogue, mu_pack::fhead, mu_pack::head, mu_config::iceserver, mu_ent::length, make_music_entry(), MI_ACTIVE, MI_ALLOWDWNLD, MI_ALLOWSTREAM, musicindex_module, mu_config::options, cache_backend::prologue, and send_playlist().
|
static |
This is where the magic happens.
Definition at line 227 of file mod_musicindex.c.
References ap_set_content_type, apr_psprintf, apr_pstrcat, apr_table_set, apr_table_setn, build_custom_list(), mu_config::cache, cookie_and_stream_work(), mu_config::custom_list, mu_config::dir_per_line, cache_backend::epilogue, mu_pack::head, is_msie_user_agent(), listsort(), make_music_entry(), MI_ACTIVE, MI_COOKIEDWNLD, MI_COOKIESTREAM, MI_DWNLDCOOKIE, MI_DWNLDLST, MI_DWNLDRQ, MI_RANDOMDIR, MI_RECURSIVE, mi_rerror, MI_RSS, MI_STREAM, MI_STREAMCOOKIE, MI_STREAMLST, MI_STREAMRQ, MI_TARBALL, musicindex_module, mu_config::options, mu_config::order, cache_backend::prologue, mu_config::search, send_customlist(), send_directories(), send_foot(), send_head(), send_playlist(), send_randomdir(), send_rss(), send_tarball(), send_tracks(), STRUCTTV, tarball_size(), treat_get_args(), and treat_post_args().
|
static |
Check whether we're serving MS IE.
r | Apache request_rec |
Definition at line 216 of file mod_musicindex.c.
References apr_table_get.
Referenced by handle_musicindex().
|
static |
Adds the mod signature into Apache's headers.
s | server_rec |
p | pool |
Definition at line 515 of file mod_musicindex.c.
References MUSIC_HEADER_STRING.
|
static |
Definition at line 529 of file mod_musicindex.c.
module MODULE_VAR_EXPORT musicindex_module |
Definition at line 543 of file mod_musicindex.c.
Referenced by build_custom_list(), cache_file_opendir(), cache_file_write(), cookie_add(), cookie_addall(), cookie_and_stream_work(), cookie_remove(), file_make_cache_entry(), go_through_directory(), handle_musicfile(), handle_musicindex(), list_songs(), make_cache_entry(), make_flac_entry(), make_mp3_entry(), make_mp4_entry(), make_music_entry(), make_ogg_entry(), musicindex_closedir(), musicindex_opendir(), musicindex_readdir(), mysql_cache_dircontents(), mysql_cache_epilogue(), mysql_cache_make_entry(), mysql_cache_opendir(), mysql_cache_prologue(), mysql_cache_write(), send_directories(), send_foot(), send_head(), send_rss(), send_tracks(), send_url(), treat_get_args(), and treat_post_args().