]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
tests: moved udp_socketpair to utils
authorNikos Mavrogiannopoulos <nmav@gnutls.org>
Tue, 6 Jan 2015 20:27:14 +0000 (21:27 +0100)
committerNikos Mavrogiannopoulos <nmav@gnutls.org>
Tue, 6 Jan 2015 20:30:19 +0000 (21:30 +0100)
tests/mini-dtls-mtu.c
tests/utils.c
tests/utils.h

index f6b2586c80626dfb4d51534fa23db5d7589986c3..189dff17a4b369ea0d3e2f1145215c72354f75e0 100644 (file)
@@ -279,56 +279,7 @@ static void server(int fd)
                success("server: finished\n");
 }
 
-static int udp_socket(void)
-{
-        int on = 1;
-       struct sockaddr_in addr = {
-               .sin_family = AF_INET,
-               .sin_addr = {htonl(INADDR_LOOPBACK)},
-               .sin_port = 0
-       };
-       int fd;
-
-       fd = socket(AF_INET, SOCK_DGRAM | SOCK_CLOEXEC, 0);
-        setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, (char*)&on, sizeof(on));
-#if defined(SO_REUSEPORT)
-        setsockopt(fd, SOL_SOCKET, SO_REUSEPORT, (char*)&on, sizeof(on));
-#endif
 
-       if (bind(fd, (struct sockaddr *)&addr, sizeof(addr)) < 0) {
-                perror("bind");
-                exit(EXIT_FAILURE);
-       }
-
-       return fd;
-}
-
-static void udp_connect(int fd1, int fd2)
-{
-       struct sockaddr_in addr;
-       socklen_t addrlen = sizeof(addr);
-
-       if (getsockname(fd1, &addr, &addrlen) < 0) {
-                perror("getsockname");
-                exit(EXIT_FAILURE);
-       }
-
-       if (connect(fd2, &addr, addrlen) < 0) {
-                perror("connect");
-                exit(EXIT_FAILURE);
-       }
-}
-
-static int udp_socketpair(int *fd)
-{
-       fd[0] = udp_socket();
-       fd[1] = udp_socket();
-
-       udp_connect(fd[0], fd[1]);
-       udp_connect(fd[1], fd[0]);
-
-       return 0;
-}
 
 void doit(void)
 {
index b61321d39a48ee39bbb674d8880bdf6b64b32e01..516cc9d60a2f84c29a03847795f7c94a6e623b61 100644 (file)
@@ -27,6 +27,9 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <stdarg.h>
+#include <netinet/in.h>
+#include <sys/types.h>
+#include <sys/socket.h>
 
 #include "utils.h"
 
@@ -151,3 +154,54 @@ int main(int argc, char *argv[])
 
        return error_count ? 1 : 0;
 }
+
+static int udp_socket(void)
+{
+        int on = 1;
+       struct sockaddr_in addr = {
+               .sin_family = AF_INET,
+               .sin_addr = {htonl(INADDR_LOOPBACK)},
+               .sin_port = 0
+       };
+       int fd;
+
+       fd = socket(AF_INET, SOCK_DGRAM | SOCK_CLOEXEC, 0);
+        setsockopt(fd, SOL_SOCKET, SO_REUSEADDR, (char*)&on, sizeof(on));
+#if defined(SO_REUSEPORT)
+        setsockopt(fd, SOL_SOCKET, SO_REUSEPORT, (char*)&on, sizeof(on));
+#endif
+
+       if (bind(fd, (struct sockaddr *)&addr, sizeof(addr)) < 0) {
+                perror("bind");
+                exit(EXIT_FAILURE);
+       }
+
+       return fd;
+}
+
+static void udp_connect(int fd1, int fd2)
+{
+       struct sockaddr_in addr;
+       socklen_t addrlen = sizeof(addr);
+
+       if (getsockname(fd1, &addr, &addrlen) < 0) {
+                perror("getsockname");
+                exit(EXIT_FAILURE);
+       }
+
+       if (connect(fd2, &addr, addrlen) < 0) {
+                perror("connect");
+                exit(EXIT_FAILURE);
+       }
+}
+
+int udp_socketpair(int *fd)
+{
+       fd[0] = udp_socket();
+       fd[1] = udp_socket();
+
+       udp_connect(fd[0], fd[1]);
+       udp_connect(fd[1], fd[0]);
+
+       return 0;
+}
index 7d89e8ce9730cd084ed73177c77fa9dcbbdcbef9..feabe3e63fa2c51a16e6e7bc7203a9d572539686 100644 (file)
@@ -57,6 +57,8 @@ extern void escapeprint(const char *str, size_t len);
 extern void hexprint(const void *str, size_t len);
 extern void binprint(const void *str, size_t len);
 
+int udp_socketpair(int *fd);
+
 /* This must be implemented elsewhere. */
 extern void doit(void);