Filter insertion now actually works
authorMichael Brown <mcb30@etherboot.org>
Wed, 31 Jan 2007 03:43:59 +0000 (03:43 +0000)
committerMichael Brown <mcb30@etherboot.org>
Wed, 31 Jan 2007 03:43:59 +0000 (03:43 +0000)
src/net/filter.c

index c4542fc..925aad2 100644 (file)
@@ -174,12 +174,16 @@ int insert_filter ( struct stream_application *app,
                    struct filter_stream *filter ) {
        struct stream_connection *conn = app->conn;
 
-       if ( ! app->conn ) {
+       if ( ! conn ) {
                DBGC ( filter, "Filter %p cannot insert onto closed stream\n",
                       filter );
                return -ENOTCONN;
        }
 
+       DBGC ( filter, "Filter %p inserted on stream %p\n", filter, app );
+
+       filter->upstream.app = app;
+       filter->downstream.conn = conn;
        app->conn = &filter->upstream;
        conn->app = &filter->downstream;