tcp_echo_client.ncd 694 B

1234567891011121314151617181920212223242526272829303132333435
  1. process main {
  2. getargs() args;
  3. value(args) args;
  4. num_different(args.length, "2") bad_args;
  5. If (bad_args) {
  6. println("bad arguments");
  7. exit("1");
  8. };
  9. args->get("0") addr_ip;
  10. args->get("1") addr_port;
  11. sys.connect({"tcp", {"ipv4", addr_ip, addr_port}}) socket;
  12. If (socket.is_error) {
  13. println("connection error!");
  14. exit("1");
  15. };
  16. println("connected");
  17. socket->write("This echo client is implemented in NCD!\n\n");
  18. backtrack_point() recv_point;
  19. socket->read() data;
  20. If (data.not_eof) {
  21. socket->write(data);
  22. recv_point->go();
  23. };
  24. println("server disconnected");
  25. exit("0");
  26. }