Forum Discussion

DamonL_356592's avatar
DamonL_356592
Icon for Nimbostratus rankNimbostratus
Mar 26, 2018

Sideband Loop Appears to Only Execute Once

I have a sideband loop to send received TCP data to a new UDP destination. It works for the first send of data from the source, but subsequent sends it does not. The result from the send shows as sent and the correct number of bytes.

 

What a I missing?

 

when CLIENT_ACCEPTED {

 

log local0. "Client Accepted From [IP::client_addr] To Port [TCP::local_port clientside] "

 

log local0. "LB Information 1 [LB::server name] [LB::server addr] [LB::server port]"

 

TCP::collect

 

}

 

when SERVER_CONNECTED {

 

log local0. "client port = [TCP::client_port], server port = [TCP::server_port]"

 

log local0. "LB Information 2 [LB::server name] [LB::server addr] [LB::server port]" }

 

when CLIENT_DATA {

 

set tcplen [TCP::payload length]

 

log local0. "TCP Payload Length Recevied ($tcplen)"

 

set recvdata [TCP::payload]

 

log local0. "Payload Recevied ($recvdata)"

 

set new_udp_out [connect -protocol UDP -timeout 3000 -idle 30 -status conn_status 10.15.215.22:4000]

 

set send_info [send -timeout 3000 -status send_status $new_udp_out $recvdata]

 

close $new_udp_out

 

release to move on with other processing

TCP::release

 

call collect again to keep this routing going

TCP::collect

 

}

 

2 Replies