]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
update
authorAnthony Minessale <anthony.minessale@gmail.com>
Fri, 14 Nov 2008 18:11:54 +0000 (18:11 +0000)
committerAnthony Minessale <anthony.minessale@gmail.com>
Fri, 14 Nov 2008 18:11:54 +0000 (18:11 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@10406 d0543943-73ff-0310-b7d9-9358b9ac24b2

src/mod/event_handlers/mod_event_socket/mod_event_socket.c

index e833ec29bca344d376e1824d10da901a3c5f8d22..550b2af5b38bcf53cb2c58470d34a5c7353c0788 100644 (file)
@@ -565,10 +565,21 @@ SWITCH_STANDARD_API(event_sink_function)
 
 
        if (!strcasecmp(wcmd, "filter")) {
-               char *action = switch_event_get_header(stream->param_event, "action");;
-               char *header_name = switch_event_get_header(stream->param_event, "header_name");;
-               char *header_val = switch_event_get_header(stream->param_event, "header_val");;
-               
+               char *action = switch_event_get_header(stream->param_event, "action");
+               char *header_name = switch_event_get_header(stream->param_event, "header-name");
+               char *header_val = switch_event_get_header(stream->param_event, "header-val");
+               char *id = switch_event_get_header(stream->param_event, "listen-id");
+               uint32_t idl = 0;
+
+               if (id) {
+                       idl = (uint32_t) atol(id);
+               }
+
+               if (!(listener = find_listener(idl))) {
+                       stream->write_function(stream, "<data><reply type=\"error\">Invalid Listen-ID</reply></data>\n");
+            goto end;
+               }
+
                if (switch_strlen_zero(action)) {
                        stream->write_function(stream, "<data><reply type=\"error\">Invalid Syntax</reply></data>\n");
             goto end;