I figured out how to accept dcc sends through sockets and how to send files, but I am having problems recieving them. The connection accepts, but I am missing something in the sockread portion because the file stalls mid way through every time.
Code:
on *:SOCKREAD:dcc.*:{
  if ($sockerr) { return }
  sockread 4096 &dcc
  while ($sockbr) {
    bwrite %filename -1 -1 &dcc
    sockread 4096 &dcc
  }
}

Does anyone have any ideas on what I'm doing wrong?