diff options
author | Linus Nordberg <linus@nordberg.se> | 2014-02-05 11:10:02 +0100 |
---|---|---|
committer | Linus Nordberg <linus@nordberg.se> | 2014-02-05 11:10:02 +0100 |
commit | 3d954bfd2f658ac05a0f20a1241738ed3e3fdd28 (patch) | |
tree | d95b364fbab298c9b94c9c729afc98904c7c5bb0 /lib/tests | |
parent | 67bdfa83f1879312fef0fbac769f6fb45df12d1a (diff) |
Move lib to the root.
Diffstat (limited to 'lib/tests')
-rw-r--r-- | lib/tests/Makefile.am | 12 | ||||
-rw-r--r-- | lib/tests/README | 39 | ||||
-rw-r--r-- | lib/tests/demoCA/index.txt | 3 | ||||
-rw-r--r-- | lib/tests/demoCA/index.txt.attr | 1 | ||||
-rw-r--r-- | lib/tests/demoCA/newcerts/01.pem | 46 | ||||
-rw-r--r-- | lib/tests/demoCA/newcerts/02.pem | 49 | ||||
-rw-r--r-- | lib/tests/demoCA/newcerts/03.pem | 49 | ||||
-rw-r--r-- | lib/tests/demoCA/private/cakey.pem | 9 | ||||
-rw-r--r-- | lib/tests/demoCA/private/cli1.key | 9 | ||||
-rw-r--r-- | lib/tests/demoCA/private/srv1.key | 9 | ||||
-rw-r--r-- | lib/tests/demoCA/serial | 1 | ||||
-rw-r--r-- | lib/tests/test-udp.c | 153 | ||||
-rw-r--r-- | lib/tests/test.conf | 30 | ||||
-rw-r--r-- | lib/tests/udp-server.c | 35 | ||||
-rw-r--r-- | lib/tests/udp.c | 141 | ||||
-rw-r--r-- | lib/tests/udp.h | 20 |
16 files changed, 0 insertions, 606 deletions
diff --git a/lib/tests/Makefile.am b/lib/tests/Makefile.am deleted file mode 100644 index 09f9d28..0000000 --- a/lib/tests/Makefile.am +++ /dev/null @@ -1,12 +0,0 @@ -AUTOMAKE_OPTIONS = foreign -AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir) -AM_CFLAGS = -Wall -Werror -g - -TESTS = test-udp - -check_PROGRAMS = test-udp udp-server - -test_udp_SOURCES = test-udp.c udp.c udp.h -test_udp_LDADD = ../libradsec.la -lcunit -lm - -udp_server_SOURCES = udp-server.c udp.c udp.h diff --git a/lib/tests/README b/lib/tests/README deleted file mode 100644 index 33bddc1..0000000 --- a/lib/tests/README +++ /dev/null @@ -1,39 +0,0 @@ -This is the README file for the test directory of libradsec. - -Build ------ - -In order to build and run the tests, you'll need to have CUnit -installed. - -Source code: http://cunit.sourceforge.net/ -Debian package: libcunit1-dev -FreeBSD port: devel/cunit - - -Run ---- - -NOTE: To run the tests you currently need -- a RADIUS server running at localhost:1820 with the shared RADIUS - secret "sikrit" configured (or whatever "test-udp-auth" in test.conf - says) -- a user "molgan@PROJECT-MOONSHOT.ORG" with password "password" - present in the RADIUS database -These requirements will be removed in a future libradsec release. - - -Run the tests by typing - - make check - -The output should read something like - - --Run Summary: Type Total Ran Passed Failed - suites 2 2 n/a 0 - tests 2 2 2 0 - asserts 23 23 23 0 - PASS: test-udp - ============= - 1 test passed - ============= diff --git a/lib/tests/demoCA/index.txt b/lib/tests/demoCA/index.txt deleted file mode 100644 index 51f934f..0000000 --- a/lib/tests/demoCA/index.txt +++ /dev/null @@ -1,3 +0,0 @@ -V 250806115449Z 01 unknown /C=AU/ST=Some-State/O=Internet Widgits Pty Ltd/CN=ca -V 250806115457Z 02 unknown /C=AU/ST=Some-State/O=Internet Widgits Pty Ltd/CN=srv1 -V 250806115504Z 03 unknown /C=AU/ST=Some-State/O=Internet Widgits Pty Ltd/CN=cli1 diff --git a/lib/tests/demoCA/index.txt.attr b/lib/tests/demoCA/index.txt.attr deleted file mode 100644 index 8f7e63a..0000000 --- a/lib/tests/demoCA/index.txt.attr +++ /dev/null @@ -1 +0,0 @@ -unique_subject = yes diff --git a/lib/tests/demoCA/newcerts/01.pem b/lib/tests/demoCA/newcerts/01.pem deleted file mode 100644 index 29cb5ee..0000000 --- a/lib/tests/demoCA/newcerts/01.pem +++ /dev/null @@ -1,46 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: 1 (0x1) - Signature Algorithm: sha1WithRSAEncryption - Issuer: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=ca - Validity - Not Before: Sep 12 11:54:49 2012 GMT - Not After : Aug 6 11:54:49 2025 GMT - Subject: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=ca - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - Public-Key: (512 bit) - Modulus: - 00:eb:9e:52:bf:1a:7c:32:63:9f:96:80:71:f1:98: - 87:90:97:f1:7a:4a:81:6d:66:7e:8e:7c:50:5f:f9: - 6e:94:1a:b0:7b:46:87:b5:9e:23:48:04:ad:f3:55: - a1:f9:31:50:a1:10:ab:ca:ba:70:ac:58:95:4e:9d: - 3a:2b:52:36:df - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Key Identifier: - 11:57:40:0B:F0:33:2F:AE:C2:DA:A4:3A:00:BA:E9:34:B3:75:20:05 - X509v3 Authority Key Identifier: - keyid:11:57:40:0B:F0:33:2F:AE:C2:DA:A4:3A:00:BA:E9:34:B3:75:20:05 - - X509v3 Basic Constraints: - CA:TRUE - Signature Algorithm: sha1WithRSAEncryption - 15:12:3b:79:3d:61:d2:c7:d2:a8:0c:df:82:ea:66:76:26:cb: - ab:b5:83:a3:52:a0:23:1a:a9:92:8e:93:41:f7:6c:3f:8a:2c: - bd:32:3d:70:3f:b6:fd:f2:37:50:0a:66:8c:1c:44:bf:ef:50: - 24:33:bd:48:47:04:ee:8c:61:88 ------BEGIN CERTIFICATE----- -MIIB5TCCAY+gAwIBAgIBATANBgkqhkiG9w0BAQUFADBSMQswCQYDVQQGEwJBVTET -MBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQ -dHkgTHRkMQswCQYDVQQDDAJjYTAeFw0xMjA5MTIxMTU0NDlaFw0yNTA4MDYxMTU0 -NDlaMFIxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQK -DBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxCzAJBgNVBAMMAmNhMFwwDQYJKoZI -hvcNAQEBBQADSwAwSAJBAOueUr8afDJjn5aAcfGYh5CX8XpKgW1mfo58UF/5bpQa -sHtGh7WeI0gErfNVofkxUKEQq8q6cKxYlU6dOitSNt8CAwEAAaNQME4wHQYDVR0O -BBYEFBFXQAvwMy+uwtqkOgC66TSzdSAFMB8GA1UdIwQYMBaAFBFXQAvwMy+uwtqk -OgC66TSzdSAFMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADQQAVEjt5PWHS -x9KoDN+C6mZ2JsurtYOjUqAjGqmSjpNB92w/iiy9Mj1wP7b98jdQCmaMHES/71Ak -M71IRwTujGGI ------END CERTIFICATE----- diff --git a/lib/tests/demoCA/newcerts/02.pem b/lib/tests/demoCA/newcerts/02.pem deleted file mode 100644 index 2e1cccb..0000000 --- a/lib/tests/demoCA/newcerts/02.pem +++ /dev/null @@ -1,49 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: 2 (0x2) - Signature Algorithm: sha1WithRSAEncryption - Issuer: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=ca - Validity - Not Before: Sep 12 11:54:57 2012 GMT - Not After : Aug 6 11:54:57 2025 GMT - Subject: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=srv1 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - Public-Key: (512 bit) - Modulus: - 00:ac:21:78:6f:cb:1c:10:c2:71:7b:72:03:e3:4b: - b2:c7:f6:63:3f:69:d3:d3:48:e0:90:16:0f:5a:44: - f5:9c:ed:b9:6b:72:be:11:6e:26:09:32:0c:51:25: - 10:35:fe:a0:33:fe:cf:90:9f:2c:8b:3a:c5:98:86: - c2:a9:5c:ba:a7 - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Basic Constraints: - CA:FALSE - Netscape Comment: - OpenSSL Generated Certificate - X509v3 Subject Key Identifier: - 08:13:6F:A0:93:47:21:31:9F:02:79:A5:CF:24:4A:D1:0B:A7:10:09 - X509v3 Authority Key Identifier: - keyid:11:57:40:0B:F0:33:2F:AE:C2:DA:A4:3A:00:BA:E9:34:B3:75:20:05 - - Signature Algorithm: sha1WithRSAEncryption - 2c:7e:61:65:48:cc:46:50:58:cc:9d:1b:b2:e7:2d:2b:72:e2: - a1:2f:2c:14:35:4d:b8:42:87:66:57:77:c4:02:17:fa:3c:db: - 83:3f:89:37:ae:f8:e9:00:fe:96:d8:4b:80:63:db:08:7a:c6: - e1:c7:59:ec:d9:76:4a:be:1a:19 ------BEGIN CERTIFICATE----- -MIICEjCCAbygAwIBAgIBAjANBgkqhkiG9w0BAQUFADBSMQswCQYDVQQGEwJBVTET -MBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQ -dHkgTHRkMQswCQYDVQQDDAJjYTAeFw0xMjA5MTIxMTU0NTdaFw0yNTA4MDYxMTU0 -NTdaMFQxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQK -DBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxDTALBgNVBAMMBHNydjEwXDANBgkq -hkiG9w0BAQEFAANLADBIAkEArCF4b8scEMJxe3ID40uyx/ZjP2nT00jgkBYPWkT1 -nO25a3K+EW4mCTIMUSUQNf6gM/7PkJ8sizrFmIbCqVy6pwIDAQABo3sweTAJBgNV -HRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZp -Y2F0ZTAdBgNVHQ4EFgQUCBNvoJNHITGfAnmlzyRK0QunEAkwHwYDVR0jBBgwFoAU -EVdAC/AzL67C2qQ6ALrpNLN1IAUwDQYJKoZIhvcNAQEFBQADQQAsfmFlSMxGUFjM -nRuy5y0rcuKhLywUNU24QodmV3fEAhf6PNuDP4k3rvjpAP6W2EuAY9sIesbhx1ns -2XZKvhoZ ------END CERTIFICATE----- diff --git a/lib/tests/demoCA/newcerts/03.pem b/lib/tests/demoCA/newcerts/03.pem deleted file mode 100644 index d07be19..0000000 --- a/lib/tests/demoCA/newcerts/03.pem +++ /dev/null @@ -1,49 +0,0 @@ -Certificate: - Data: - Version: 3 (0x2) - Serial Number: 3 (0x3) - Signature Algorithm: sha1WithRSAEncryption - Issuer: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=ca - Validity - Not Before: Sep 12 11:55:04 2012 GMT - Not After : Aug 6 11:55:04 2025 GMT - Subject: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd, CN=cli1 - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - Public-Key: (512 bit) - Modulus: - 00:99:7b:86:e0:46:de:f1:69:10:97:f8:4e:78:c8: - ee:c2:c8:65:64:90:72:dd:51:4f:c6:58:78:49:07: - 61:b9:ed:0a:77:7b:d2:6a:c3:49:e5:91:6c:bf:78: - d0:fc:8a:5c:80:1a:b0:03:28:b2:ea:e8:c8:a0:b6: - be:a1:42:30:5d - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Basic Constraints: - CA:FALSE - Netscape Comment: - OpenSSL Generated Certificate - X509v3 Subject Key Identifier: - 10:17:90:80:D8:B0:7E:91:91:13:32:27:8C:EF:A6:DE:9F:C1:C4:A7 - X509v3 Authority Key Identifier: - keyid:11:57:40:0B:F0:33:2F:AE:C2:DA:A4:3A:00:BA:E9:34:B3:75:20:05 - - Signature Algorithm: sha1WithRSAEncryption - b1:08:87:88:7d:90:78:01:da:4a:e7:be:82:22:3f:58:07:f7: - 46:a9:9a:42:a4:88:d9:b8:6a:69:bf:cb:d0:39:2d:c9:49:06: - fa:31:80:66:17:32:cc:e8:ae:36:9c:c1:d5:ae:6d:3c:eb:72: - 77:55:92:fa:ab:f5:a3:bc:19:2d ------BEGIN CERTIFICATE----- -MIICEjCCAbygAwIBAgIBAzANBgkqhkiG9w0BAQUFADBSMQswCQYDVQQGEwJBVTET -MBEGA1UECAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQ -dHkgTHRkMQswCQYDVQQDDAJjYTAeFw0xMjA5MTIxMTU1MDRaFw0yNTA4MDYxMTU1 -MDRaMFQxCzAJBgNVBAYTAkFVMRMwEQYDVQQIDApTb21lLVN0YXRlMSEwHwYDVQQK -DBhJbnRlcm5ldCBXaWRnaXRzIFB0eSBMdGQxDTALBgNVBAMMBGNsaTEwXDANBgkq -hkiG9w0BAQEFAANLADBIAkEAmXuG4Ebe8WkQl/hOeMjuwshlZJBy3VFPxlh4SQdh -ue0Kd3vSasNJ5ZFsv3jQ/IpcgBqwAyiy6ujIoLa+oUIwXQIDAQABo3sweTAJBgNV -HRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZp -Y2F0ZTAdBgNVHQ4EFgQUEBeQgNiwfpGREzInjO+m3p/BxKcwHwYDVR0jBBgwFoAU -EVdAC/AzL67C2qQ6ALrpNLN1IAUwDQYJKoZIhvcNAQEFBQADQQCxCIeIfZB4AdpK -576CIj9YB/dGqZpCpIjZuGppv8vQOS3JSQb6MYBmFzLM6K42nMHVrm0863J3VZL6 -q/WjvBkt ------END CERTIFICATE----- diff --git a/lib/tests/demoCA/private/cakey.pem b/lib/tests/demoCA/private/cakey.pem deleted file mode 100644 index e7df9d0..0000000 --- a/lib/tests/demoCA/private/cakey.pem +++ /dev/null @@ -1,9 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIIBOgIBAAJBAOueUr8afDJjn5aAcfGYh5CX8XpKgW1mfo58UF/5bpQasHtGh7We -I0gErfNVofkxUKEQq8q6cKxYlU6dOitSNt8CAwEAAQJAR+SmQPN24/Ur88M7gUlW -TBNgtjzXoyb8BMP/zlkQmZW5Tcv1xCa1UwK33u2wSmhSNP6zA1QrC2d2pv/7XZEp -wQIhAPpf2QuEooR5BPrvDiAVPlKp31EROrZOiOV5hbV1Kzx/AiEA8OmZZrvgrdQu -3PKRLfxD11NKf0yhC+7WdVWguYZ1VaECIF99XMcyz9TcXxThRa7gy0M1vJErlAvh -yf5TKba6OEI7AiBpNctdl11G7OxOZ8zJZWsHRYO6Vm/as0KLWYromvTxIQIhAK0c -r+G23R+dHDUdNEBSi6G74dbaJqaA8LsVr9w9m5gY ------END RSA PRIVATE KEY----- diff --git a/lib/tests/demoCA/private/cli1.key b/lib/tests/demoCA/private/cli1.key deleted file mode 100644 index 09381f1..0000000 --- a/lib/tests/demoCA/private/cli1.key +++ /dev/null @@ -1,9 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIIBOQIBAAJBAJl7huBG3vFpEJf4TnjI7sLIZWSQct1RT8ZYeEkHYbntCnd70mrD -SeWRbL940PyKXIAasAMosuroyKC2vqFCMF0CAwEAAQJAEozki1zle0YYlFWVnnGi -sfYokxQGXguC2dU9jI4Q2LjGut6mVx/zLIU59BS4nUq2aYHg0hxwwzOba92c0lT/ -HQIhAMp0+k7FtDdRQzIaDzeEY6MYyLhhhukhI3xpyXYVuyx7AiEAwhLQl6hYlsgh -78CzTAhAdbheAwIQWyvY7XjKzxdpGwcCIG/hr0YC2bHMNZ8laY1bmxhRpPLH6p9A -0fR6HXwlTDerAiA1y21SfHGB6huuD2Yjry3e86nrf4j1HKRWvuLIoJ6bxQIgWmyj -YOSFsaBwj9ptkY0d4H84SDHnt7GRypm0/98OSg8= ------END RSA PRIVATE KEY----- diff --git a/lib/tests/demoCA/private/srv1.key b/lib/tests/demoCA/private/srv1.key deleted file mode 100644 index 284f1e1..0000000 --- a/lib/tests/demoCA/private/srv1.key +++ /dev/null @@ -1,9 +0,0 @@ ------BEGIN RSA PRIVATE KEY----- -MIIBOgIBAAJBAKwheG/LHBDCcXtyA+NLssf2Yz9p09NI4JAWD1pE9ZztuWtyvhFu -JgkyDFElEDX+oDP+z5CfLIs6xZiGwqlcuqcCAwEAAQJAbviJF7GfH2LsHISt4vyr -fuTmqTxF1wI13E6MiUrJ+eftT7Hq1Wq6B7gmlI1iJiJLlAH6o93PYhp8559Dfp+q -wQIhAOMbFp0NJPrVpycx5dQAYpM/edqXoOENQf1lMLOmOHlhAiEAwgfTbAaGNfQS -uXfzj0sx+IvoKE/MXfLKZ/uE9futCQcCIQC/mMjZMo+yNrHQdV5KHxEK3RB2hFmr -xD2aA9a0mVUnwQIgbYjHdNNWDr1DmMo7h+g2RI6Ot7scruiyFPNrgwXaEB8CICMa -8wjF27wlJ2nmhM9ZXUBtvBKgU+jspsA8n+wU+o+f ------END RSA PRIVATE KEY----- diff --git a/lib/tests/demoCA/serial b/lib/tests/demoCA/serial deleted file mode 100644 index 6496923..0000000 --- a/lib/tests/demoCA/serial +++ /dev/null @@ -1 +0,0 @@ -04 diff --git a/lib/tests/test-udp.c b/lib/tests/test-udp.c deleted file mode 100644 index ed176c0..0000000 --- a/lib/tests/test-udp.c +++ /dev/null @@ -1,153 +0,0 @@ -/* Copyright 2011,2013, NORDUnet A/S. All rights reserved. */ -/* See LICENSE for licensing information. */ - -#include <stdlib.h> -#include <assert.h> -#include <CUnit/Basic.h> -#include "radius/client.h" -#include "radsec/radsec.h" -#include "radsec/request.h" -#include "udp.h" - -static void -authenticate (struct rs_connection *conn, const char *user, const char *pw) -{ - struct rs_request *req; - struct rs_packet *msg, *resp; - - CU_ASSERT (rs_request_create (conn, &req) == 0); - CU_ASSERT (!rs_packet_create_authn_request (conn, &msg, user, pw)); - rs_request_add_reqpkt (req, msg); - CU_ASSERT (rs_request_send (req, &resp) == 0); - //printf ("%s\n", rs_err_msg (rs_err_conn_pop (conn), 1)); - CU_ASSERT (rs_packet_code(resp) == PW_ACCESS_ACCEPT); - - rs_request_destroy (req); -} - -static void -send_more_than_one_msg_in_one_packet (struct rs_connection *conn) -{ - struct rs_packet *msg0, *msg1; - - CU_ASSERT (rs_packet_create_authn_request (conn, &msg0, NULL, NULL) == 0); - CU_ASSERT (rs_packet_create_authn_request (conn, &msg1, NULL, NULL) == 0); - CU_ASSERT (rs_packet_send (msg0, NULL) == 0); - CU_ASSERT (rs_packet_send (msg1, NULL) == 0); -} - -#if 0 -static void -send_large_packet (struct rs_connection *conn) -{ - struct rs_packet *msg0; - struct radius_packet *frpkt = NULL; - char *buf; - int f; - - buf = malloc (RS_MAX_PACKET_LEN); - CU_ASSERT (buf != NULL); - memset (buf, 0, RS_MAX_PACKET_LEN); - - CU_ASSERT (rs_packet_create (conn, &msg0) == 0); - /* 16 chunks --> heap corruption in evbuffer_drain detected by free() */ - for (f = 0; f < 15; f++) - { - memset (buf, 'a' + f, 252); - //vp = pairmake ("EAP-Message", buf, T_OP_EQ); - CU_ASSERT (rs_packet_append_avp (msg0, fixme...) == RSE_OK); - } - CU_ASSERT (rs_packet_send (msg0, NULL) == 0); -} -#endif /* 0 */ - -/* ************************************************************ */ -static struct setup { - char *config_file; - char *config_name; - char *username; - char *pw; -} setup; - -static void -test_auth () -{ - struct rs_context *ctx; - struct rs_connection *conn; - - setup.config_file = "test.conf"; - setup.config_name = "test-udp-auth"; - setup.username = "molgan@PROJECT-MOONSHOT.ORG"; - setup.pw = "password"; - - CU_ASSERT (rs_context_create (&ctx) == 0); - CU_ASSERT (rs_context_read_config (ctx, setup.config_file) == 0); - CU_ASSERT (rs_conn_create (ctx, &conn, setup.config_name) == 0); - - authenticate (conn, setup.username, setup.pw); - - rs_conn_destroy (conn); - rs_context_destroy (ctx); -} - -static ssize_t -test_buffering_cb (const uint8_t *buf, ssize_t len) -{ - /* "Exactly one RADIUS packet is encapsulated in the UDP Data field" - [RFC 2865]*/ -#if 0 - hd (buf, len); -#endif - CU_ASSERT (len >= 20); - CU_ASSERT (len <= RS_MAX_PACKET_LEN); - CU_ASSERT ((buf[2] << 8) + buf[3] == len); - return len; -} - -static void -test_buffering () -{ - struct rs_context *ctx; - struct rs_connection *conn; - struct timeval timeout; - struct polldata *polldata; - - CU_ASSERT (rs_context_create (&ctx) == 0); - CU_ASSERT (rs_context_read_config (ctx, "test.conf") == 0); - CU_ASSERT (rs_conn_create (ctx, &conn, "test-udp-buffering") == 0); - - timeout.tv_sec = 0; - timeout.tv_usec = 150000; - polldata = udp_server ("11820", &timeout, test_buffering_cb); - CU_ASSERT (polldata != NULL); - - send_more_than_one_msg_in_one_packet (conn); - CU_ASSERT (udp_poll (polldata) > 0); - CU_ASSERT (udp_poll (polldata) > 0); - - - udp_free_polldata (polldata); - rs_conn_destroy (conn); - rs_context_destroy (ctx); -} - -/* ************************************************************ */ -int -main (int argc, char *argv[]) -{ - CU_pSuite s = NULL; - CU_pTest t = NULL; - unsigned int nfail; - - assert (CU_initialize_registry () == CUE_SUCCESS); - s = CU_add_suite ("auth", NULL, NULL); assert (s); - t = CU_ADD_TEST (s, test_auth); assert (t); - s = CU_add_suite ("buffering", NULL, NULL); assert (s); - t = CU_ADD_TEST (s, test_buffering); assert (t); - - assert (CU_basic_run_tests () == CUE_SUCCESS); - nfail = CU_get_number_of_failures(); - - CU_cleanup_registry (); - return nfail; -} diff --git a/lib/tests/test.conf b/lib/tests/test.conf deleted file mode 100644 index 98d0330..0000000 --- a/lib/tests/test.conf +++ /dev/null @@ -1,30 +0,0 @@ -realm test-udp-auth { - type = "UDP" - server { - hostname = "localhost" - service = "1820" - secret = "sikrit" - } -} - -realm test-udp-buffering { - type = "UDP" - server { - hostname = "localhost" - service = "11820" - secret = "sikrit" - } -} - -realm test-tls-test { - type = "TLS" - cacertfile = "/home/linus/nordberg-ca.crt" - certfile = "/home/linus/p/radsecproxy/src/maatuska.nordberg.se.crt" - certkeyfile = "/home/linus/p/radsecproxy/src/maatuska.nordberg.se.key" - - server { - hostname = "localhost" - service = "1820" - secret = "sikrit" - } -} diff --git a/lib/tests/udp-server.c b/lib/tests/udp-server.c deleted file mode 100644 index 77a35df..0000000 --- a/lib/tests/udp-server.c +++ /dev/null @@ -1,35 +0,0 @@ -/* Copyright 2011, NORDUnet A/S. All rights reserved. */ -/* See LICENSE for licensing information. */ - -#include <stdlib.h> -#include <stdio.h> -#include "udp.h" - -ssize_t -handle_data (const uint8_t *buf, ssize_t len) -{ - return hd (buf, len); -} - -int -main (int argc, char *argv[]) -{ - int n, i; - struct timeval tv; - struct polldata *data; - -#define TIMEOUT 1 /* Seconds. */ - - tv.tv_sec = TIMEOUT; - tv.tv_usec = 0; - data = udp_server (argv[1], &tv, handle_data); - - for (i = 0, n = udp_poll (data); n == 0 && i < 3; n = udp_poll (data), i++) - { - fprintf (stderr, "waiting another %ld second%s\n", - tv.tv_sec, tv.tv_sec > 1 ? "s" : ""); - } - - udp_free_polldata (data); - return (n <= 0); -} diff --git a/lib/tests/udp.c b/lib/tests/udp.c deleted file mode 100644 index 2c580da..0000000 --- a/lib/tests/udp.c +++ /dev/null @@ -1,141 +0,0 @@ -/* Copyright 2011,2013, NORDUnet A/S. All rights reserved. */ -/* See LICENSE for licensing information. */ - -#include <stdlib.h> -#include <string.h> -#include <unistd.h> -#include <assert.h> -#include <stdio.h> -#include <event2/event.h> -#include <sys/socket.h> -#include <netinet/in.h> -#include <sys/types.h> -#include <netdb.h> -#include <sys/select.h> -#include <sys/time.h> -#include "radius/client.h" -#include "udp.h" - -static struct addrinfo * -_resolve (const char *str) -{ - static int first = 1; - static struct addrinfo hints, *result = NULL; - struct addrinfo *rp = NULL; - int r; - - if (first) - { - first = 0; - memset (&hints, 0, sizeof (hints)); - hints.ai_family = AF_INET; /* AF_UNSPEC */ - hints.ai_socktype = SOCK_DGRAM; - r = getaddrinfo (NULL, str, &hints, &result); - if (r) - fprintf (stderr, "getaddrinfo: %s\n", gai_strerror (r)); - } - - if (result) - { - rp = result; - result = result->ai_next; - } - - return rp; -} - -void -udp_free_polldata (struct polldata *data) -{ - if (data) - { - if (data->timeout) - free (data->timeout); - free (data); - } -} - -/* @return if select() returns error or timeout, return select() - else return value from invoked callback function */ -ssize_t -udp_poll (struct polldata *data) -{ - int r; - long timeout = 0; - fd_set rfds; - ssize_t len; - uint8_t buf[RS_MAX_PACKET_LEN]; - - FD_ZERO (&rfds); - FD_SET (data->s, &rfds); - if (data->timeout) - timeout = data->timeout->tv_sec; /* Save from destruction (Linux). */ - //fprintf (stderr, "calling select with timeout %ld\n", timeout); - r = select (data->s + 1, &rfds, NULL, NULL, data->timeout); - if (data->timeout) - data->timeout->tv_sec = timeout; /* Restore. */ - //fprintf (stderr, "select returning %d\n", r); - if (r > 0) - { - len = recv (data->s, buf, sizeof (buf), 0); - if (len > 0) - return data->cb (buf, len); - } - return r; -} - -struct polldata * -udp_server (const char *bindto, struct timeval *timeout, data_cb cb) -{ - struct addrinfo *res; - int s = -1; - - for (res = _resolve (bindto); res; res = _resolve (bindto)) - { - s = socket (res->ai_family, res->ai_socktype, res->ai_protocol); - if (s >= 0) - { - if (bind (s, res->ai_addr, res->ai_addrlen) == 0) - break; /* Done. */ - else - { - close (s); - s = -1; - } - } - } - - if (s >= 0) - { - struct polldata *data = malloc (sizeof (struct polldata)); - assert (data); - memset (data, 0, sizeof (struct polldata)); - data->s = s; - data->cb = cb; - if (timeout) - { - data->timeout = malloc (sizeof (struct timeval)); - assert (data->timeout); - memcpy (data->timeout, timeout, sizeof (struct timeval)); - } - return data; - } - - return NULL; -} - -ssize_t -hd (const uint8_t *buf, ssize_t len) -{ - int i; - - printf ("# len: %ld\n", len); - for (i = 0; i < len; i++) - { - printf ("%02x%s", buf[i], (i+1) % 8 ? " " : " "); - if ((i + 1) % 16 == 0) - printf ("\n"); - } - printf ("\n"); - return len; -} diff --git a/lib/tests/udp.h b/lib/tests/udp.h deleted file mode 100644 index a8d5f23..0000000 --- a/lib/tests/udp.h +++ /dev/null @@ -1,20 +0,0 @@ -/* Copyright 2011, NORDUnet A/S. All rights reserved. */ -/* See LICENSE for licensing information. */ - -#include <stdint.h> -#include <unistd.h> -#include <sys/time.h> - -typedef ssize_t (*data_cb) (const uint8_t *buf, ssize_t len); - -struct polldata { - int s; - data_cb cb; - struct timeval *timeout; -}; - -struct polldata *udp_server (const char *bindto, struct timeval *timeout, data_cb cb); -ssize_t udp_poll (struct polldata *data); -void udp_free_polldata (struct polldata *data); - -ssize_t hd (const uint8_t *buf, ssize_t len); |