diff options
author | Jorge Arellano Cid <jcid@dillo.org> | 2009-08-05 21:46:32 -0400 |
---|---|---|
committer | Jorge Arellano Cid <jcid@dillo.org> | 2009-08-05 21:46:32 -0400 |
commit | 4858c790e6e0c4023d265d6e54e934d1a31eb72c (patch) | |
tree | b2e457f5107d0cef2ed3d11545cb973d04bbbe9d /src/IO/dpi.c | |
parent | 4760495cae7967364a97f9d59b73454ab03ee772 (diff) |
Changed the CCCs to build in one step (for both HTTP and DPI)
Diffstat (limited to 'src/IO/dpi.c')
-rw-r--r-- | src/IO/dpi.c | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/src/IO/dpi.c b/src/IO/dpi.c index 34932a6a..7d5b550c 100644 --- a/src/IO/dpi.c +++ b/src/IO/dpi.c @@ -615,13 +615,13 @@ void a_Dpi_ccc(int Op, int Branch, int Dir, ChainLink *Info, *fd = SockFD; Info->LocalKey = fd; a_Chain_link_new(Info, a_Dpi_ccc, BCK, a_IO_ccc, 1, 1); - a_Chain_bcb(OpStart, Info, Info->LocalKey, NULL); - /* tell the capi to start the receiving branch */ - a_Chain_fcb(OpSend, Info, Info->LocalKey, "SockFD"); + a_Chain_bcb(OpStart, Info, NULL, NULL); } } if (st == 0 && SockFD != -1) { + a_Chain_bcb(OpSend, Info, &SockFD, "FD"); + a_Chain_fcb(OpSend, Info, &SockFD, "FD"); a_Chain_fcb(OpSend, Info, NULL, "DpidOK"); } else { MSG_ERR("dpi.c: can't start dpi daemon\n"); @@ -645,7 +645,7 @@ void a_Dpi_ccc(int Op, int Branch, int Dir, ChainLink *Info, MSG_WARN("Unused CCC\n"); break; } - } else { /* FWD */ + } else { /* 1 FWD */ /* Send commands to dpi-server (status) */ switch (Op) { case OpAbort: @@ -675,7 +675,7 @@ void a_Dpi_ccc(int Op, int Branch, int Dir, ChainLink *Info, MSG_WARN("Unused CCC\n"); break; } - } else { /* BCK */ + } else { /* 2 BCK */ switch (Op) { case OpStart: conn = Dpi_conn_new(Info); @@ -687,7 +687,12 @@ void a_Dpi_ccc(int Op, int Branch, int Dir, ChainLink *Info, } a_Chain_link_new(Info, a_Dpi_ccc, BCK, a_IO_ccc, 2, 2); - a_Chain_bcb(OpStart, Info, NULL, Data1); /* IORead, SockFD */ + a_Chain_bcb(OpStart, Info, NULL, NULL); /* IORead */ + break; + case OpSend: + if (Data2 && !strcmp(Data2, "FD")) { + a_Chain_bcb(OpSend, Info, Data1, Data2); + } break; case OpAbort: a_Chain_bcb(OpAbort, Info, NULL, NULL); |