=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/nc/netcat.c,v retrieving revision 1.97 retrieving revision 1.98 diff -c -r1.97 -r1.98 *** src/usr.bin/nc/netcat.c 2010/04/20 07:28:28 1.97 --- src/usr.bin/nc/netcat.c 2010/07/03 04:44:51 1.98 *************** *** 1,4 **** ! /* $OpenBSD: netcat.c,v 1.97 2010/04/20 07:28:28 nicm Exp $ */ /* * Copyright (c) 2001 Eric Jackson * --- 1,4 ---- ! /* $OpenBSD: netcat.c,v 1.98 2010/07/03 04:44:51 guenther Exp $ */ /* * Copyright (c) 2001 Eric Jackson * *************** *** 84,90 **** int Oflag; /* TCP send buffer size */ int Sflag; /* TCP MD5 signature option */ int Tflag = -1; /* IP Type of Service */ ! u_int rdomain; int timeout = -1; int family = AF_UNSPEC; --- 84,90 ---- int Oflag; /* TCP send buffer size */ int Sflag; /* TCP MD5 signature option */ int Tflag = -1; /* IP Type of Service */ ! u_int rtableid; int timeout = -1; int family = AF_UNSPEC; *************** *** 189,198 **** uflag = 1; break; case 'V': ! rdomain = (unsigned int)strtonum(optarg, 0, RT_TABLEID_MAX, &errstr); if (errstr) ! errx(1, "rdomain %s: %s", errstr, optarg); break; case 'v': vflag = 1; --- 189,198 ---- uflag = 1; break; case 'V': ! rtableid = (unsigned int)strtonum(optarg, 0, RT_TABLEID_MAX, &errstr); if (errstr) ! errx(1, "rtable %s: %s", errstr, optarg); break; case 'v': vflag = 1; *************** *** 507,516 **** res0->ai_protocol)) < 0) continue; ! if (rdomain) { ! if (setsockopt(s, IPPROTO_IP, SO_RDOMAIN, &rdomain, ! sizeof(rdomain)) == -1) ! err(1, "setsockopt SO_RDOMAIN"); } /* Bind to a local port or source address if specified. */ --- 507,516 ---- res0->ai_protocol)) < 0) continue; ! if (rtableid) { ! if (setsockopt(s, IPPROTO_IP, SO_RTABLE, &rtableid, ! sizeof(rtableid)) == -1) ! err(1, "setsockopt SO_RTABLE"); } /* Bind to a local port or source address if specified. */ *************** *** 581,590 **** res0->ai_protocol)) < 0) continue; ! if (rdomain) { ! if (setsockopt(s, IPPROTO_IP, SO_RDOMAIN, &rdomain, ! sizeof(rdomain)) == -1) ! err(1, "setsockopt SO_RDOMAIN"); } ret = setsockopt(s, SOL_SOCKET, SO_REUSEPORT, &x, sizeof(x)); --- 581,590 ---- res0->ai_protocol)) < 0) continue; ! if (rtableid) { ! if (setsockopt(s, IPPROTO_IP, SO_RTABLE, &rtableid, ! sizeof(rtableid)) == -1) ! err(1, "setsockopt SO_RTABLE"); } ret = setsockopt(s, SOL_SOCKET, SO_REUSEPORT, &x, sizeof(x)); *************** *** 871,877 **** \t-t Answer TELNET negotiation\n\ \t-U Use UNIX domain socket\n\ \t-u UDP mode\n\ ! \t-V rdomain Specify alternate routing domain\n\ \t-v Verbose\n\ \t-w secs\t Timeout for connects and final net reads\n\ \t-X proto Proxy protocol: \"4\", \"5\" (SOCKS) or \"connect\"\n\ --- 871,877 ---- \t-t Answer TELNET negotiation\n\ \t-U Use UNIX domain socket\n\ \t-u UDP mode\n\ ! \t-V rtable Specify alternate routing table\n\ \t-v Verbose\n\ \t-w secs\t Timeout for connects and final net reads\n\ \t-X proto Proxy protocol: \"4\", \"5\" (SOCKS) or \"connect\"\n\ *************** *** 887,893 **** fprintf(stderr, "usage: nc [-46DdhklnrStUuvz] [-I length] [-i interval] [-O length]\n" "\t [-P proxy_username] [-p source_port] [-s source_ip_address] [-T ToS]\n" ! "\t [-V rdomain] [-w timeout] [-X proxy_protocol]\n" "\t [-x proxy_address[:port]] [hostname] [port]\n"); if (ret) exit(1); --- 887,893 ---- fprintf(stderr, "usage: nc [-46DdhklnrStUuvz] [-I length] [-i interval] [-O length]\n" "\t [-P proxy_username] [-p source_port] [-s source_ip_address] [-T ToS]\n" ! "\t [-V rtable] [-w timeout] [-X proxy_protocol]\n" "\t [-x proxy_address[:port]] [hostname] [port]\n"); if (ret) exit(1);