[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r28662 - gnunet/src/testing
From: |
gnunet |
Subject: |
[GNUnet-SVN] r28662 - gnunet/src/testing |
Date: |
Thu, 15 Aug 2013 16:11:54 +0200 |
Author: harsha
Date: 2013-08-15 16:11:54 +0200 (Thu, 15 Aug 2013)
New Revision: 28662
Added:
gnunet/src/testing/bindfail.c
gnunet/src/testing/bindok.c
Modified:
gnunet/src/testing/Makefile.am
Log:
- debugging bind and SO_REUSEADDR
Modified: gnunet/src/testing/Makefile.am
===================================================================
--- gnunet/src/testing/Makefile.am 2013-08-15 13:00:37 UTC (rev 28661)
+++ gnunet/src/testing/Makefile.am 2013-08-15 14:11:54 UTC (rev 28662)
@@ -101,3 +101,13 @@
EXTRA_DIST = \
test_testing_defaults.conf
+
+
+noinst_PROGRAMS = \
+ bindfail bindok
+
+bindok_SOURCES = bindok.c
+
+bindfail_SOURCES = bindfail.c
+bindfail_LDADD = $(top_builddir)/src/util/libgnunetutil.la
+
Added: gnunet/src/testing/bindfail.c
===================================================================
--- gnunet/src/testing/bindfail.c (rev 0)
+++ gnunet/src/testing/bindfail.c 2013-08-15 14:11:54 UTC (rev 28662)
@@ -0,0 +1,35 @@
+#include "platform.h"
+#include "gnunet_util_lib.h"
+
+int main()
+{
+ uint16_t port = 12035;
+ struct GNUNET_NETWORK_Handle *sock1;
+ struct GNUNET_NETWORK_Handle *sock2;
+ struct sockaddr_in addr;
+
+ (void) memset (&addr, 0, sizeof (struct sockaddr_in));
+ sock1 = GNUNET_NETWORK_socket_create (AF_INET, SOCK_DGRAM, 0);
+ sock2 = GNUNET_NETWORK_socket_create (AF_INET, SOCK_DGRAM, 0);
+
+ addr.sin_port = htons (port);
+ addr.sin_addr.s_addr = INADDR_ANY;
+
+ if (GNUNET_SYSERR ==
+ GNUNET_NETWORK_socket_bind (sock1, (const struct sockaddr *) &addr,
+ sizeof (addr), 0))
+ {
+ fprintf (stderr, "first bind failed. check port\n");
+ return 1;
+ }
+ if (GNUNET_SYSERR ==
+ GNUNET_NETWORK_socket_bind (sock2, (const struct sockaddr *) &addr,
+ sizeof (addr), 0))
+ {
+ printf ("All OK\n");
+ return 0;
+ }
+ fprintf (stderr, "Second bind succeeded! WTF!!\n");
+ fgetc (stdin);
+ return 1;
+}
Added: gnunet/src/testing/bindok.c
===================================================================
--- gnunet/src/testing/bindok.c (rev 0)
+++ gnunet/src/testing/bindok.c 2013-08-15 14:11:54 UTC (rev 28662)
@@ -0,0 +1,30 @@
+#include "platform.h"
+
+int main()
+{
+ uint16_t port = 12035;
+ int sock1;
+ int sock2;
+ struct sockaddr_in addr;
+
+ (void) memset (&addr, 0, sizeof (struct sockaddr_in));
+ sock1 = socket (AF_INET, SOCK_DGRAM, 0);
+ sock2 = socket (AF_INET, SOCK_DGRAM, 0);
+
+ addr.sin_port = htons (port);
+ addr.sin_addr.s_addr = INADDR_ANY;
+
+ if (0 != bind (sock1, (const struct sockaddr *) &addr, sizeof (addr)))
+ {
+ perror ("bind");
+ return 1;
+ }
+ if (0 != bind (sock2, (const struct sockaddr *) &addr, sizeof (addr)))
+ {
+ printf ("All OK\n");
+ return 0;
+ }
+ fprintf (stderr, "Second bind succeeded! WTF!!\n");
+ fgetc (stdin);
+ return 1;
+}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r28662 - gnunet/src/testing,
gnunet <=