static bool writeonly;
static int in = 0;
static int out = 1;
+static int addressfamily = AF_UNSPEC;
static bool send_data(void *handle, uint8_t type, const void *data, size_t len) {
char hex[len * 2 + 1];
" -R, --replay-window N Set replay window to N bytes.\n"
" -s, --special Enable special handling of lines starting with #, ^ and $.\n"
" -v, --verbose Display debug messages.\n"
+ " -4 Use IPv4.\n"
+ " -6 Use IPv6.\n"
"\n");
fprintf(stderr, "Report bugs to tinc@tinc-vpn.org.\n");
}
ecdsa_t *mykey = NULL, *hiskey = NULL;
bool quit = false;
- while((r = getopt_long(argc, argv, "dqrstwL:W:v", long_options, &option_index)) != EOF) {
+ while((r = getopt_long(argc, argv, "dqrstwL:W:v46", long_options, &option_index)) != EOF) {
switch (r) {
case 0: /* long option */
break;
usage();
return 1;
+ case '4': /* IPv4 */
+ addressfamily = AF_INET;
+ break;
+
+ case '6': /* IPv6 */
+ addressfamily = AF_INET6;
+ break;
+
case 1: /* help */
usage();
return 0;
struct addrinfo *ai, hint;
memset(&hint, 0, sizeof hint);
- hint.ai_family = AF_UNSPEC;
+ hint.ai_family = addressfamily;
hint.ai_socktype = datagram ? SOCK_DGRAM : SOCK_STREAM;
hint.ai_protocol = datagram ? IPPROTO_UDP : IPPROTO_TCP;
hint.ai_flags = initiator ? 0 : AI_PASSIVE;
# Test transfer of a simple file.
-(sleep 1; $sptps_test -q $d1/client.priv $d1/server.pub localhost 32750 <../README) &
-$sptps_test $d1/server.priv $d1/client.pub 32750 >$d1/out1
+(sleep 1; $sptps_test -4 -q $d1/client.priv $d1/server.pub localhost 32750 <../README) &
+$sptps_test -4 $d1/server.priv $d1/client.pub 32750 >$d1/out1
cmp $d1/out1 ../README
-$sptps_test -q $d1/server.priv $d1/client.pub 32750 <../NEWS &
+$sptps_test -4 -q $d1/server.priv $d1/client.pub 32750 <../NEWS &
sleep 1
-$sptps_test $d1/client.priv $d1/server.pub localhost 32750 > $d1/out2
+$sptps_test -4 $d1/client.priv $d1/server.pub localhost 32750 > $d1/out2
cmp $d1/out2 ../NEWS
# Datagram mode
-$sptps_test -dq $d1/server.priv $d1/client.pub 32750 <../COPYING &
+$sptps_test -4 -dq $d1/server.priv $d1/client.pub 32750 <../COPYING &
sleep 1
-sleep 1 | $sptps_test -dq $d1/client.priv $d1/server.pub localhost 32750 >$d1/out3
+sleep 1 | $sptps_test -4 -dq $d1/client.priv $d1/server.pub localhost 32750 >$d1/out3
cmp $d1/out3 ../COPYING