7 const char *program_name;
9 void syscall_error(const char *err)
15 void internal_error(const char *err)
17 fprintf(stderr, "%s: %s\n", program_name, err);
21 unsigned short get_port_from_args(int argc, char **argv, int index)
24 internal_error("missing port");
26 unsigned int port = atoi(argv[index]);
28 if (port == 0 || port > USHRT_MAX)
29 internal_error("invalid port");