From aeae84bf8babcd7130f71b5941834eeb4fafa61a Mon Sep 17 00:00:00 2001 From: Roman Arutyunyan Date: Sat, 26 Jan 2013 16:53:11 +0400 Subject: [PATCH] removed cmd handler initialization in postconf & added global initializers --- ngx_rtmp_cmd_module.c | 73 +++++++++++++++++++++++++------------------ 1 file changed, 43 insertions(+), 30 deletions(-) diff --git a/ngx_rtmp_cmd_module.c b/ngx_rtmp_cmd_module.c index 7980367..2e6973a 100644 --- a/ngx_rtmp_cmd_module.c +++ b/ngx_rtmp_cmd_module.c @@ -10,21 +10,51 @@ #define NGX_RTMP_CAPABILITIES 31 -ngx_rtmp_connect_pt ngx_rtmp_connect; -ngx_rtmp_create_stream_pt ngx_rtmp_create_stream; -ngx_rtmp_close_stream_pt ngx_rtmp_close_stream; -ngx_rtmp_delete_stream_pt ngx_rtmp_delete_stream; -ngx_rtmp_publish_pt ngx_rtmp_publish; -ngx_rtmp_play_pt ngx_rtmp_play; -ngx_rtmp_seek_pt ngx_rtmp_seek; -ngx_rtmp_pause_pt ngx_rtmp_pause; +static ngx_int_t ngx_rtmp_cmd_connect(ngx_rtmp_session_t *s, + ngx_rtmp_connect_t *v); +static ngx_int_t ngx_rtmp_cmd_create_stream(ngx_rtmp_session_t *s, + ngx_rtmp_create_stream_t *v); +static ngx_int_t ngx_rtmp_cmd_close_stream(ngx_rtmp_session_t *s, + ngx_rtmp_close_stream_t *v); +static ngx_int_t ngx_rtmp_cmd_delete_stream(ngx_rtmp_session_t *s, + ngx_rtmp_delete_stream_t *v); +static ngx_int_t ngx_rtmp_cmd_publish(ngx_rtmp_session_t *s, + ngx_rtmp_publish_t *v); +static ngx_int_t ngx_rtmp_cmd_play(ngx_rtmp_session_t *s, + ngx_rtmp_play_t *v); +static ngx_int_t ngx_rtmp_cmd_seek(ngx_rtmp_session_t *s, + ngx_rtmp_seek_t *v); +static ngx_int_t ngx_rtmp_cmd_pause(ngx_rtmp_session_t *s, + ngx_rtmp_pause_t *v); -ngx_rtmp_stream_begin_pt ngx_rtmp_stream_begin; -ngx_rtmp_stream_eof_pt ngx_rtmp_stream_eof; -ngx_rtmp_stream_dry_pt ngx_rtmp_stream_dry; -ngx_rtmp_recorded_pt ngx_rtmp_recorded; -ngx_rtmp_set_buflen_pt ngx_rtmp_set_buflen; +static ngx_int_t ngx_rtmp_cmd_stream_begin(ngx_rtmp_session_t *s, + ngx_rtmp_stream_begin_t *v); +static ngx_int_t ngx_rtmp_cmd_stream_eof(ngx_rtmp_session_t *s, + ngx_rtmp_stream_eof_t *v); +static ngx_int_t ngx_rtmp_cmd_stream_dry(ngx_rtmp_session_t *s, + ngx_rtmp_stream_dry_t *v); +static ngx_int_t ngx_rtmp_cmd_recorded(ngx_rtmp_session_t *s, + ngx_rtmp_recorded_t *v); +static ngx_int_t ngx_rtmp_cmd_set_buflen(ngx_rtmp_session_t *s, + ngx_rtmp_set_buflen_t *v); + + +ngx_rtmp_connect_pt ngx_rtmp_connect = ngx_rtmp_cmd_connect; +ngx_rtmp_create_stream_pt ngx_rtmp_create_stream = ngx_rtmp_cmd_create_stream; +ngx_rtmp_close_stream_pt ngx_rtmp_close_stream = ngx_rtmp_cmd_close_stream; +ngx_rtmp_delete_stream_pt ngx_rtmp_delete_stream = ngx_rtmp_cmd_delete_stream; +ngx_rtmp_publish_pt ngx_rtmp_publish = ngx_rtmp_cmd_publish; +ngx_rtmp_play_pt ngx_rtmp_play = ngx_rtmp_cmd_play; +ngx_rtmp_seek_pt ngx_rtmp_seek = ngx_rtmp_cmd_seek; +ngx_rtmp_pause_pt ngx_rtmp_pause = ngx_rtmp_cmd_pause; + + +ngx_rtmp_stream_begin_pt ngx_rtmp_stream_begin = ngx_rtmp_cmd_stream_begin; +ngx_rtmp_stream_eof_pt ngx_rtmp_stream_eof = ngx_rtmp_cmd_stream_eof; +ngx_rtmp_stream_dry_pt ngx_rtmp_stream_dry = ngx_rtmp_cmd_stream_dry; +ngx_rtmp_recorded_pt ngx_rtmp_recorded = ngx_rtmp_cmd_recorded; +ngx_rtmp_set_buflen_pt ngx_rtmp_set_buflen = ngx_rtmp_cmd_set_buflen; static ngx_int_t ngx_rtmp_cmd_postconfiguration(ngx_conf_t *cf); @@ -724,22 +754,5 @@ ngx_rtmp_cmd_postconfiguration(ngx_conf_t *cf) *ch = *bh; } - /* set initial handlers */ - - ngx_rtmp_connect = ngx_rtmp_cmd_connect; - ngx_rtmp_create_stream = ngx_rtmp_cmd_create_stream; - ngx_rtmp_close_stream = ngx_rtmp_cmd_close_stream; - ngx_rtmp_delete_stream = ngx_rtmp_cmd_delete_stream; - ngx_rtmp_publish = ngx_rtmp_cmd_publish; - ngx_rtmp_play = ngx_rtmp_cmd_play; - ngx_rtmp_seek = ngx_rtmp_cmd_seek; - ngx_rtmp_pause = ngx_rtmp_cmd_pause; - - ngx_rtmp_stream_begin = ngx_rtmp_cmd_stream_begin; - ngx_rtmp_stream_eof = ngx_rtmp_cmd_stream_eof; - ngx_rtmp_stream_dry = ngx_rtmp_cmd_stream_dry; - ngx_rtmp_recorded = ngx_rtmp_cmd_recorded; - ngx_rtmp_set_buflen = ngx_rtmp_cmd_set_buflen; - return NGX_OK; }